PANOPTICON Project Summery
This game is structurally quite complex and was effectively a masterclass in Godot’s raycast system. Since the pillars are all contained in the same mesh and there are over 96 different ones on each level, the traditional methods of referencing the objects couldn’t work for this project. We ended up developing a system where the normal direction of the top surface of each pillar section would be used as a key to uniquely identify that pillar. This was combined with aggressive use of Godot’s collision layers which allowed us to use raycasts from the origin to select the pillars.
Since the game takes place on the inside of a sphere, a typical navmesh system was not suited to the game. The enemy ’eyes’ ended up using raycasts (using the normal direction system) to navigate through the game world. Godot has two types of raycasts available and both were used extensively in the project.
Project Take-Aways
- Focusing too much on programming can derail a project
- Full unrestricted 3D rotations add a lot of complexity to a project and make it much harder to debug