Skip navigation

Category Archives: Uncategorised

War of Gears was a group term project that was built on in sections at a time. Everything for the project was programmed from scratch between January 2016 to April 2016. The project consisted of three milestones.

Mind Map: Download (WarOfGears_MindMap.dia) [22KB]
UML Diagram: View

Milestone I
Graphics & Content Pipeline

The goal of this milestone was to get something visual on the screen within a few weeks from scratch. Using a pre-made engine was not allowed. All code was programmed by the group.

Video #1:
Demo of the 3D tank model with changing parts of the tank. There are 3 parts to each component of the tank. Wheels, Hull, Turret, and Weapon.
The demo also shows changing of the skin/texture

Video #2
Demo of the tank driving around a flat surface. The camera rotation is controlled by mouse movement. The turret automatically rotates towards the direction the camera is facing for targetting.

Milestone II

I implemented a purely interface based connection to Bullet Physics. Each call to physics objects were to pointers to interfaces (iRigidBody, iVehicle, etc). This allows the option to switch out the physics library to a different one with ease..

Milestone III
Audio (Implement FMOD)
Scripting (Implement LUA)

The result:

Final project for my Game Development program. A three week Game Jam to show off as a tech demo.

Topics I bravely attempted, and successfully pulled off for this project are:

Procedurally generated texture (Fire)
– Rendered a procedurally generated flame using a noise, and game time to change the value over time, to a framebuffer.

Omnidirectional cubemap shadows
– Using the same technique ofshadows, but having to render the entire scene 6 times for each direction of a cubemap, and saving the depth. There are 4 flames, so there are 4×6 render passes to calculate the depth values for all of the shadows before the final render pass.

Character Animation
– Loaded multiple .FBX character models, and successfully rendered them with smooth transitioning with current states.


Job Queue