This project was creates as a part of the Computer Graphics course at Reykjavík University. It's a 3D maze game where you have to reach the goal in the middle while avoiding the ghosts on the map.
It was creates in cooperation with @ertolv.
The actual game looks much nicer and even contains music. It's definitely worth a try if you have 5 minutes to spare :)
| Type | Controls |
|---|---|
| Movement controls | [W], [A], [S], [D] |
| Vertical control | [SPACE], [SHIFT] |
| Rotation controls | [<], [^], [v], [>] |
| Camera switch | [M] |
| Return to Home | [H] |
| Debug information | [P] |
You can also use the mouse to rotate the view :)
This game uses:
- PyOpenGL and pygame for rendering
- PyGLM for beautiful math.
- Esper for the ECS architecture
You can use to install these requirements:
pip install -r requirements.txt
Use python src/main.py to run the game.
We choose an entity component system as our game architecture. The documentation is found in .docs/ecs.md and is definitely worth a read. The lighting system with our addition of light attenuation is documented in .docs/lighting.md. Have fun reading them :D.
(I don't take responsibility for any spelling mistakes. Feel free to fix them, it's sadly not my strong suit)
I'm not quite sure when it happened and why, but we swapped the y and z value of the world. This means that x and y are basically the floor while z controls the height above the floor. This is a bit unusual for 3D games, but it seems to work so yay.
This project was extracted from a previous repository containing several projects.
