In the last module of my diploma at SAE Institute Zürich, we looked at Graphics Programming and how game engines are structured behind the scenes. For my assignment I worked on a game engine (it is more of a rendering engine right now) that is built upon giawas opengl4csharp framework: https://github.com/giawa/opengl4csharp
The game engine currently includes following features:
- Efficient loading of 3D-Models that are in the Wavefront OBJ - Format.
- Switching between different scenes
- Input Handling
- Moveable camera
- UI
- Directional lights
- Point lights
- Lit shaders using Blinn-Phong-Modell
- Support for Normalmaps
- Automatic calculation of tangent and bitangent when loading 3D-Models.
- Skybox and skybox mirror
For my studies I also wrote a document where I explain in detail what my learnings, struggles and thoughts on the future of this project are. You can find it inside the Documents folder under the root directory.
Moves the currently active MovementController along the local x and z axis.
Moves the currently active MovementController along the local y axis use E for up and Q for down.
Rotates the currently active MovementController.
Changes the currently active MovementController.
Toggles the pause menu on and off and lets you use your cursor again.
Toggles lighting calculations on and off.