Knight Light was made in Unreal Engine 5.2 for PC. After most of the original programming team left the project I stepped in and worked with a team of four other programmers to completely rebuild (or salvage) all of the systems left in the project. I worked on a plan spanning four months that involved completely rebuilding enemy AI, combat, player abilities, gameplay events, UI, and more. I worked with my team to quickly analyze and break down all of the systems left behind from the first eight months of the project and then make a plan for the systems that needed to be touched up and the systems that needed to be fully replaced. In addition to tech direction I created the modular event system that the project uses to coordinate activation and deactivation of gameplay and decorative elements in a way that allows for complex events to be easily scripted in-editor. I also created the enemy wave system with several coordination & spawning options that could be easily arranged by designers in data tables.
Stardust in Retrograde was made in Unreal Engine 5.2 by a team of 17 that included programmers, artists, game designers, and a sound designer. I implemented a simple event system that made it easy to quickly assemble encounters and simple puzzles. The event system included custom visual debugging that made it easy to see the control flow of interactables and encounters in the world. I integrated Wwise into the project and worked closely with our sound designer to implement SFX and music in our game. I also worked closely with our artists to create a polished animation controller for the player and props.
RoBotanist was built from the ground up as a custom C++ engine. I worked with a team of four other programmers, two artists and a sound designer. I led numerous planning sessions to devise the best engine architecture we could. The engine's custom rendering pipeline utilizes OpenGL and SDL2. My work included integrating a number of libraries into our project, I implemented the Wwise audio middleware with custom panning, integrated Spine into our custom rendering pipeline, handled filesystem access and deserialization of data, images, and custom fonts. I worked on optimization using Visual Studio to improve performance in a number of areas, ensuring the game runs smoothly even on extremely low-end devices. I worked on gameplay programming for puzzle and visual elements.