Local Multiplayer Car-Based Battle Arena
A 4 player split-screen competitive battle area. Players compete with 6 unique vehicles to collect the most points by defeating other players. Developed for both PC and Xbox One through the Xbox Creator's Program.
I worked on 20XX MAXX for 1.5 years as a gameplay programmer and producer. Over the course of the project, I worked on a camera that adapted to the fast-paced nature of the game, a replay structure that helped with playtesting and continuing development, and a decal system that allowed players to customize their vehicles with 100+ combinations and express themselves through their car.
Much of my work on this project revolved around making a camera that would fit in this fast-paced environment. I used heavy interpolation with the position of the camera and relative rotations to the car to provide a smooth experience. I also implemented collision avoidance and predicting where the player would be driving so the camera could look in that direction.
The camera also features lock-on capability that determines what other car should be locked on to based on visibility, distance, and angle.
In a game where playtests could involve four different perspectives an overseer would try to pay attention to, a way to record and run back the data gathered from playtesting would be ideal. This was the motivation for the replay system, which recorded games and was able to play them back at runtime to a good amount of accuracy.
The replay system tracks the player's inputs in addition to the position and rotation of the car. If only the input were tracked, the car would quickly become desynced and run off track. If only the car's values, the playback would be jerky and inaccurate. To provide the best experience for users, I used both.
A neat way to give players a way to build a bond with their car and be able to identify it is to have customization. I accomplished this with a decal system, which simply changed the colors of the player's car. Both primary and accent colors could be chosen, with accent colors glowing like neon.
Throughout the testing of the game, players always spent time meticulously choosing the perfect color combination for their car to personalize it to them. The decal system was a great way to get players engaged right from the beginning before the match even started.
2D Puzzle Platformer
A 2D puzzle platformer, made in a custom engine. A scientist must escape the digital world he finds himself in using his found powers of cutting, copying, and pasting blocks found around him.
The game was featured at DigiPen's PAX Arcade Booth in 2018.
I worked on C.C.P. for a year as a tools and graphics programmer. Throughout the project, I worked on a fully-featured level editor that supported designers and decreased iteration time significantly, an interactive level selection screen that showcased the level along with high scores, and a custom graphics engine build from the ground up to create multi-pass post-processing effects.
The editor for C.C.P. had a multitude of features to support our designers and make iteration time with levels as fast as possible. I worked closely with our level designer to create an application that had everything he needed to do what he does best.
The editor was made in C++ using ImGUI, and also incorporated JSON serialization to read into the game. It supported many features including basic operations like moving, modifying, and deleting objects as well as more advanced procedures like multiselection, cut/copy/paste, and a robust undo system.
The bulk of my time spent on this project was working on the custom engine, mainly developing the graphics system.
The engine supported post-processing operations like bloom for neon-like objects and a nice CRT screen effect that distorted the game into the classic CRT shape and added scan lines across the screen for an authentic-looking CRT effect.