ZeroG - 'Cube Combat'
ZeroG was originally intended to be a simple yet full space-shooter set in deep space using the DirectX API and implimenting a movement system realisticly representing moving in a 3D space with no external forces and with no artificially limited top speed. However this was a little bit too ambitious for my first game so I revised it to more simplistic enemies (cubes), enviroment and enemy AI but retaining the movement system. The main goals of this project was to learn the basics of the DirectX API, and get some experience in game project design / development.
The Project Features:
- Direct3D Renderer including offscreen surface rendering.
- Camera and Movement system, allowing complete free movement in 3D space.
- Ship & Projectile Management Classes, allowing easy spawning and despawning of ships and projectiles in game loop as well as yaw, pitch, roll & local velocity controls.
- GUI System, for menus, HUDs and text.
- Bounding Box Collosion System, apt for cubes.
- Implemented Direct Sound Functions & 3rd Party mp3 class for in game sound.
- Direct Input Control Functions.
- A Simple FSM for enemy AI.
I revisited the project and updated it so that your projectiles move faster (decreasing the difficulty) and the game starts in your desktop resolution. You should check that you have the latest version of DirectX before trying to run the game.
Screenshots - Click to Expand
In addition to learning a lot of specifics about the DirectX API (Graphics (z-ordering), Input, Sound, Math Functions) and game programming design (implimenting AI, game design, user interfacing) this project particularly highlighted the importance of planning the project structure as well as setting achievable targets within time available!





