My role for Project Umbra was Lead Developer. I worked on several different components of the game, with a focus on the controller classes. Nyx has the ability to leverage shadows to bypass enemies, solve puzzles, and scale complex terrain. The two main controllers give the player control over Nyx's movement, both in the default state and shadow state, and his toggling between the two.


-
Implemented a robust state machine architecture to allow the functionality and features of the two primary modes to be isolated.
-
Developed player mechanics for running, jumping, shooting, and melee attacks in the default state.
-
Engineered core player functionality for the shadow state including clinging to walls, fitting between tight spaces, and zipping to adjacent walls.
-
Implemented clean and unique transitions between the default and shadow states including ejection from the shadow state if the player enters a light field.
Lessons and skills learned from this project include:
-
Rigid version control for efficient work and extensive collaboration.
-
Building and iterating upon a large software game system.
-
Creating modular code with the creative intent of producing an interactive, immersive, enjoyable user experience.

