C++ Engine and Game Development
For the Game Programming module in the final year at university, we had to develop a rudimentary 3D game engine as individual projects that met some basic requirements. Groups were then allocated, and one of the game engines was selected as the base for the game development project.
Group Game Project
We decided to utilize the 3D game engine to create a simple 3D shooter, you must clear each area of enemies before you can progress on to subsequent stages.
I fully implemented enemies and enemy AI, as well as asisting with general gameplay programming and various other programming tasks. Additionally, I created some art assets and was responsible for maintaining the project on Git and branch integration.
Game Features:
- 3D lighting with multiple lights casting shadows (Shadow Cube Maps).
- Sound; background music and event based effects.
- Simple gameplay; Multiple stages, Health and Ammo tracked.
- Physics and collisions.
- Enemy AI that patrol, chase, and shoot at the player.
Individual Engine
Before the above group project we did individual game engines (no game elements). This is the work that I completed for the individual portion of the module.
Features:
- Cross Platform practices followed, Windows and Linux builds possible.
- Component-based architecture (Scene->Object->Components).
- Data-driven with fast and efficient loading.
- Simple and Modular, easy to develop new features.
- Quaternions used exclusively as the basis for object rotation.
