Here's a few of my favourite things I've created over the past couple years in various libraries and languages.

/* Hover over / tap on a project image for a brief description. */
OpenGL and C++
An extension of my old voxel engine, features infinite terrain creation, cave generation and chunk management.
A physics based 3D golf game with an integrated course builder, a collaborative project with Brodie Griggs
A 3D 'port' of the mobile game Little Alchemy, this was a collaborative passion project with Daniel Jackson and Niha Patel.
A RollerCoaster building and simulation project that uses uniform splines to generate track meshes and car animations.
SDL and C++
This project exists as a proof of concept for worms terrain generation using the marching squares algorithm.
My semester two submission for Games Engine Creation; A mario game with a built in level editor.
A quick raytracer written in C++ using SDL2 for it's surface and texture capabilities. Features reflections and soft shadows.
This is a port of the terrain generation and rendering concepts from my previous Python and Pygame project, Fegaria into C++ and SDL2.
S2D and C++
A simple tower defence game where you stop pugs from invading your ship. Art by Brodie Griggs and programming by me.
My semester one submission for FoGGSD, a Pacman clone with A* pathfinding using the S2D University library.
Pygame and Python
My favourite Pygame project to date. It features item prefix randomization and procedural terrain generation.
Made as a project to test my knowledge on complex collisions in 2D, and also just because peggle is fun.
Plain and simple minesweeper clone.
A 2D spirograph generator capable of generating millions of spirograph patterns with built in saving and loading.
A barebones clone of the AI known as 20Q, it tries to guess an object based on your answers to questions it asks.
A simplistic tower defence game with several towers and enemy types written whilst at Sixth Form.
/* Note: I'm also in the process of documenting all of my projects (in reverse chronological order) by writing devlog articles (listed in the project pages) so feel free to check out those for a more in depth look at the project's features. */