Project Name

Example of 2 characters going through portals

About

A portal system adapted to the Universal Render Pipeline that is able to take an object from one point to another in a completely seamless way. This means that animations, physics, and direction are perserved between teleportations. It also doesn't implement any form of loading screen and can dynamically slive objects so that the player can also observe seamless transitions from outside.

Team

This project was developed by myself, though I also used assets found in the Unity Asset Store. Notably, I also used resources from online articles and videos.

My Contributions

  • All programming;
  • Portal Shader;

Software

  • Unity;
  • Shader & VFX Graph;

Portal In Another Setting

Mechanics

Object Slicing

Seamless transitions of non-player objects was achieved through object duplication at each portal with adequate offsets. From there, all that was needed was to make a simple fill shader that sliced the object based on it's position from the portal. This gave the illusion that a single object was going through the portal whilst in reality, there were 2.

Optimization

Having multiple portals rendering their own position was found to be highly unoptimized. Although I decided to use the Universal Rendering Pipeline for this project for this reason, poor performance was existant in detailed scenes.

2 Portals

In order to reduce draw calls and resources on rendering, each portal only renders it's outcome if the player is looking at it, or at it's destination. This allows the project to implement multiple portals in a single scene.