Create Your First Project
Start adding your projects to your portfolio. Click on "Manage Projects" to get started
Madeline
Madeline is a 3D platformer inspired by the 2D platformer Celeste, where you jump, dash, and climb to the top of a snowy mountain. Built from scratch using DirectX 11 and the Flecs entity component system.
My Contributions:
Team Lead - Guided the team in learning how to use new software and coding techniques for building an engine from scratch for the first time, steering our workflow through the team management software Jira and Trello, and regularly performing code reviews on GitHub to ensure we always had a working build whenever our team’s code was merged.
Engine Programmer - Programmed a level editor that allows developers to easily build new levels, add new assets, edit existing levels, and save all changes made to their work during run-time.
Implemented gameplay features from scratch using the Flecs entity component system, such as level loading, a Celeste style platforming player, a robust physics collision system, and level assets with special abilities like one-way tiles, bounce pads, and collectable strawberries.
Challenges and Solutions:
This felt like the first project where everyone on board could get into the flow of production. We had a small team of 3, but a better handle on how to distribute work, more of an idea of what each person could accomplish in the time provided, and a love for the source material as we all play Celeste like there's no tomorrow.
The biggest challenge, outside of creating a game from scratch, was dealing with a messy codebase that just kept growing by the day. We built the game on top of our Galleons of the Galaxy project, but by the end we ripped out just about every feature and system and replaced them with better ones that worked for a side-scrolling platformer over an arcade shooter. To do this, we regularly refactored our code, and kept our scope small, dropping as many features as possible so we could build a functional product.
Myself and the graphics programmer enjoyed working on this project enough to continue working on it after the month long deadline was up to rewrite old systems like the player controller to turn it into the game we had originally imagined it should be.





