Trench Runner is an FPS infinite runner inspired by the assault on the death star in George Lucas' Star Wars Episode IV: A New Hope.

It began as a project for university before I reworked it into an FPS infinite runner to be able to showcase it. The assignment for the university project was to create a simple AR game using the PS Vita development kits we had access to. We created these projects using a DirectX11-based framework that also bridge the gap to the vita's functionality As well as a major focus on augmented reality of the vita, our projects were also reliant on building a working state machine.

Once I began developing this further as a personal project, I decided to strip out the AR functionality to focus on the state machine itself. Keeping the project on Vita would make it impossible to showcase due to our limited access to the dev kits and being prohibited from recording on said machines. Instead, I wanted to make sure I had a robust state machine system in place to transfer to future projects.

All assets were created by me.


State Machine

The state machine was achieved using an object orientated approach. Each game state was a decendant of a basic game state object. This approach was decided upon since all the game states had very similar base needs such as a render function and the ability to switch to the next state but also required certain functions specific to the state itself.

Game state machine.png