Experienced In

C++
Python
Unreal
HLSL
C#
Unity
JavaScript
SQL
Lua
Rust

Highlighted Projects

Snake Party

C++
Play3D
UIEditor
InputSystem
Polish
Group
  • Created UI Editor for HUD and Menus
  • Action Input System for Multiple players and controllers
  • UI Controller Support
  • Added Polish (Scoreboard, Selectable colours, Gameplay Tweaks, Optimisations)

JetSetCrash

C++
Play3D
Gameplay
AI
Particles
Group
  • Developed gameplay over iterations
  • Had people come in to playtest and give feedback
  • Created alien AI (Who stole your rocket parts)
  • Made various particle effects
  • Optimised the 3D project (Instanced Rendering)
  • Showcased our game in The National Videogame Museum

Particle Editor

C++
Play3D
Particles
Editor
Solo
  • Using imgui, created an editor for particle parameters
  • Optimised by using many compute shaders
  • Serialized to load/save particles and create collections of emitters
  • Created compute shaders to depth sort the particles
  • Soft particles feature - using depth buffer, decrease alphas close to surfaces

Brightside

C++
Play3D
Gameplay
Juice
Solo
  • Inspired by Darkside but created new game mechanics
  • Particles and post effects
  • Game loop/progression
  • Worked with artists for the 3D assets
  • 3D orbital collision system

Gonkquered

C++
PlayBuffer
Gameplay
Editor
Coop
Solo
  • Ported gameplay from mushroom wars
  • Created a level editor
  • UI - Main menu, settings, level select and editor
  • Control settings that lets you rebind any control for any of the 4 players

Combat System

C#
Unity
Animations
Combat
  • My first substantial Unity project
  • Iterated on the animation system multiple times
  • Developed a Combat Event and State Machine system
  • Designed a stylized UI featuring health and poise rings

Asteroids Remake

C++
Entt
SFML
Scene Management
  • Developed my first game in C++
  • Implemented custom scene management for ECS using EnTT
  • Designed a pausing scene mechanic
  • Implemented an event system to resolve circular dependencies and achieve general decoupling

Uno Multiplayer

JavaScript
SocketIO
Multiplayer
Anti-cheat
  • Implemented multiplayer functionality using WebSockets to maintain persistent connections
  • Established server-side verification alongside client-preemptive actions
  • Managed socket connections and synchronized game state between clients and the server
  • Designed a lobby system to facilitate game setup before starting matches

Farming Game

Rust
Bevy
Chunk Loading
Tilemap
AI
  • Leverage Rust to enhance C++ skills
  • Utilize Bevy's advanced ECS framework
  • Implement Chunk Loading
  • Implement Custom AI behaviour tree (In Progress)
  • Next step is to mplement Pathfinding