
Untitled Game Creator (WIP)
Graphics Programmer
For our third year project our team is currently working on a game creation tool, a mix between Scratch and Garry’s Mod with a doodle-esc artstyle.
This project is being made in a custom game engine using C++ and Vulkan.
On this project I am primarily in charge of the rendering backend.
- Developed a modern Vulkan rendering backend for an easy to use game creation tool
- Wrote a bindless material system to manage pipelines and uniforms and support many different types of surface materials while reducing expensive state changes
- Developed a render graph architecture to automatically handle render pass syncronization, allowing for easy creation of new graphical effects
- Developed a renderer for the UI library Clay to allow for easy creation of UI elements, with support for TrueType font rendering
VOIDBLADE
Graphics and Engine Programmer
For my second year, our team is worked on a 2D stealth game where you must hide in the shadows to avoid being seen.
This game is written in a custom engine, using C++ and OpenGL 4.5.
On this project I worked on 2 major aspects of the engine, alongside many smaller aspects:
Rendering Pipeline
- I Engineered a 2D multi-pass raymarched lighting system which is used for stealth
- I wrote an OpenGL renderer that can draw sprites to various screen layers, that are then composited together.
- I created a post processing system that layers together several screen-space effects, including lightmap blurring, palettizing, and dithering.
Input System
- For this project I created an input system that could handle both controller and keyboard input. The input system is action based, and uses a configuration file to bind keys or buttons to actions, which can be referenced in behavior scripts.
G.A.M: Grapples and Magnets
Physics and Gameplay Programmer
For the second semester, our team made a speedrunning game where you control a ball with the ability to use a grappling hook and a magnet.
This project was done in C, using the DigiPen Game Library for graphics and input.
On this project, I worked on:
- Wrote a physics system that allows the player to collide, slide, and move around a level of any shape
- A player controller that included a grappling hook
- A custom particle system for enemies and obstacles.
Public Defender
Gameplay Programmer
For our first semester project, we made a game about defending a small town of villagers from hordes of monsters.
This game was programmed in C using the CProcessing library as a framework.
On this project, I worked on:
- A pixel renderer built within the CProcessing framework, supporting tiles, rotating sprites, and bitmap fonts
- A combat system based around wildly swinging around the mouse to kill enemies.
