{"repo":"Donitzo/godot-simple-portal-system","free":true,"listed":false,"github":"https://github.com/Donitzo/godot-simple-portal-system","clone":"git clone https://github.com/Donitzo/godot-simple-portal-system.git","description":"A simple portal system for viewport-based portals in Godot 4.","language":"GDScript","stars":116,"topics":["game-development","godot","portal","godot4","godot-engine","rendering","gamedev","educational","shader","teleport"],"license":"CC0-1.0","category":"game-templates","readme_excerpt":"Godot Simple Portal System Table of Contents 1. Introduction - Description - Theory 2. Getting Started - About the Code - About the Portal Script - About Modelling Portals - Setup Instructions 3. Advanced Features - Advanced Usage - Crossing a Portal - Teleportation - Raycasting 4. Feedback and Contributions - Feedback & Bug Reports Description A Simple Portal System for Godot 4 (and 3 with a little work). Portals hopefully need no introduction. Just think of the game Portal and you get the idea. Non-nested portals are deceptively simple to implement, and can be incredibly powerful as both a gameplay mechanic and as a convenience feature to move players around your level, or to provide countless other fun special effects. This simple portal system is meant as an educational example on how you can create portals in Godot. Consider it a starting point, as the relevant portal code has been documented clearly. You'll most likely need to adapt the code to fit the requirements of your game. Theory In essence, portals are an illusion created by placing a virtual \"exit camera\" behind the exit portal. This camera replicates the main player camera's relative position to the entrance portal. As a result, both the player and the exit camera view the entrance and exit portals as if they occupy the same screen space. The visuals seen by the exit camera are rendered onto a 'viewport' in Godot (a render target), which is then overlaid on the entrance portal through a screen-space shader. Thi","default_branch":null,"files":null,"tree":[],"storefront":"/r/Donitzo","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Donitzo/godot-simple-portal-system/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}