Paul Engine - C++ / OpenGL Game Engine

A custom game engine written in C++ using OpenGL. Still currently in active development. Started initialliy as a port of a simple engine built in C# during university, but has since become so much more than that, far surpassing the original version. The engine supports PBR and non PBR materials with both a forward render pipeline and deferred pipeline. I have also built a custom physics system, AI systems, very very very basic UI systems, and skeletal animation systems. Screenshots can be seen on Github.

View on GitHub

C++ | ECS Engine Development | Graphics | Physics | Animation | UI | AI

C# Networking Library for Games Development

An easy to use C# based networking library, designed initially for the MonoGame framework but with the flexibility to be used across various C# based engines, built to provide beginner game developers the tools required to build networked multiplayer games in peer-to-peer sessions. The library handles synchronisation of game objects, connection handling / management and diagnostic information. All without requiring any experience of networking from the developer.

View on GitHub

C# | .Net Socket Networking | NUnit Unit Testing

Multithreaded Particle Simulation - CUDA vs Rust

Two implementations of an aerosol particle simulation. One in CUDA hosted in a C++ application, another in Rust. Both implementations made use of each languages threading capabilities and performance was compared.

View on GitHub

C++ | CUDA | Rust | Glutin

Commercial Games Development Process - Puzzle / Platformer

Development of a game in a team of 4 active members. My role in the team was "Lead Programmer" and was responsible for assigning tasks to other programmers, including myself. I also designed and created the larger scale cave level and its puzzles as well as the menu, UI systems and sound design. We created "Toadm'n", a game in which you guide a toad through a 2D level and solve puzzles by controlling flies to make the toad interact with the environment.

View on GitHub

C# | Unity | Game / Level Design | Team work

Other Projects

C++ Lab Book

An exploration of C++ as a language and its relationship with memory and the underlying assembly code.

View on GitHub

C++

OpenGL 3D Scene

OpenGL scene demonstrating different lighting techniques and knowledge of vertex buffers / vertex arrays and basic shaders.

View on GitHub

C# | OpenGL

GLSL Shader Showcase

A more advanced demonstration of shader code using the RenderMonkey application. A scene was created to showcase various rendering techniques such as height mapping and parallax mapping, as well as particle effects.

View on GitHub

GLSL

AI Pathfinding

A showcase of A* and LRTA* pathfinding algorithms, allowing an agent to navigate through multiple maps of varying complexity.

View on GitHub

C#

2D Graphics and Physics - A physics showcase and Pong recreation

A physics experimentation demonstrating various collision detections and responses, all including things like mass and velocity between moving objects with the graphics being created using HTML canvas.

Followed by a recreation of the classic Pong game

View on GitHub Play Pong!

HTML | JavaScript