Welcome, and thank you for visiting my portfolio! First, a little about me – I have over three years of experience with C++ and C# in Unity, as well as almost ten years experience with Java. My main interests in game development are procedurally generated content, AI, and frameworks for UGC – I’m a big fan of giving the players freedom and replayability in games!

Below is a brief overview of each of my projects. Please feel free to click on any that you find interesting to read more!


C# / Unity | GitHub | Procedural Generation | AI / Pathfinding

Two cars drive down a street outside some shops in a video game

Citizens is an observable game world in Unity, where AI vehicles and pedestrians enter and exit the world, navigating to different locations. The world is randomly generated at the start of each session. Read more…

2D Physics Pool Game

C++ | SFML | Box2D | Physics

This was a second-year assignment at university. The game is entirely created in C++, utilising SFML for graphics and Box2D for physics. Read more…


C++ | OpenGL | GLSL | Compute Shaders | Terrain Generation

Here’s a few examples of some shaders work in C++ / GLSL. This includes compute shaders for infinitely generated terrain, water with reflections and refraction, and various lighting models. Read more…

Protect Sarius

C# / Unity | Mobile-Optimised | Complete Game | Physics

Sarius is a 3D mobile game based on Asteroids, in which you must protect a large ship from asteroid collisions as it accelerates through space. Read more…

Space Invaders

C++ | SFML | Object Oriented

This is a first year university project, but graded very highly and is a very faithful recreation of the original game, using SFML. Read more…

Minecraft Mods

Java | Full release pipeline | Extensive QA | GitHub | Community Management

My various Minecraft mods have over 850,000 downloads, and include my most popular Road mod (left) and a functional Economy mod (right). Every release gathers player feedback, tracking issues on GitHub, and updates follow a strict test plan prior to release. Read more…

Clone Hero MIDI Drum Converter

Java | Audio Data | Tool | File input/output

This is a simple Java tool I developed which could take a MIDI file, and convert data into a format that the game Clone Hero can read, speeding up the process of “charting” – creating custom song content for the game. Read more…

Worlds Adrift Inventory Viewer

Java | Internal Tool | GUI | JSON

This was an internal tool I developed while at Bossa Studios to help us track down in-game exploiters for the MMO Worlds Adrift. Read more…


Java | Android | Bluetooth Communication | External APIs | Real-world hardware | CAD / 3D Printing

My most recent project! A bit of a branch out from games and game tools – an Android app functioning as an infotainment interface for my car. Including a functional speedometer, tachometer and fuel gauge (with data taken via an OBD Bluetooth device), and interaction with Spotify. Mounted via a custom-made 3D printed mount to the dashboard. Read more…