A point light is spawned at the camera eye position to illuminate immediate surroundings.
This camera is controllable via strafing and dollying with WASD and looking around via mouse cursor position.
Pressing G randomly generates a new map that is guaranteed to be solvable. A row of golden statues awaits you at the exit on a red carpet.
A grid-Based collision system was used, such that attempting to move the camera into an occupied cell results in being redirected along a reflected vector away from the targeted occupied cell.
A starry sky box was placed around the scene.
The dummies and carpet were shaded with Blinn-Phong shading.
The maze walls and floor were textured with mossy wood and jungly floor textures over transformed cube objects.
Toggles collision detection with maze walls.
Toggles triangle-only rendering.
Generates a new gym.
Toggles between top-down and entrance-in camera positioning.
W and S are used to dolly the camera, and A and D are used to strafe.
Holding the mouse and moving it results in adjusting the camera's look at position accordingly.
A general overview of the 3D scene
OpenGL
GLSL
GLM
GLFW
OpenGL
w3school.com for HTML and CSS references
Wikipedia for maze generation.
StackOverflow for debugging GLFW, GLM, GLSL, and OpenGL issues in general.