DES450 3D Platformer Character Project
-
Using Unreal Engine 5 and C++, I created a custom character controller inheriting from the APawn class
-
The controller uses curves to determine the velocity and acceleration of the character
-
The controller supports acceleration from slopes, unique air movement, quick turns, jumping, wall sliding, and wall jumping
-
Designers can make any number of chained jumps by adding customizable JumpCurves to a JumpCurve array
Albacora: VR Submarine Piloting Game
-
Using C#, I wrote the code for the movement of a submarine, which can either go at a constant velocity, or use jerk and acceleration.
-
The constant velocity mode exists to help with motion sickness in VR​
-
The goal of the jerk/acceleration mode is to allow for the option of smooth movement
-
-
Using C#, I created a highly flexible flocking manager which can be used to control a group of objects like they are a school of fish.
-
I used Unity's Job System to optimize the fish, so that up to 300 fish could be on screen without taking the framerate below 90 fps.
-
Using Behavior Trees and Unity, I created custom behaviors utilizing the settings of the flocking manger, such as forming a cylindrical shape or following a path.
Alone in the Ocean: A Kinesthetic Flow Project
-
I programmed the player movement to happen in short bursts to emulate a breathe stroke.
-
I used Unity's forces to control the floatation of objects in the water.
-
I used Unity's AnimationCurve variable type to control the intensity of the vignette and focus distance effects that enhance the experience.
-
I used an audio mixer to muffle all of the sounds by lowering the pitch when the player character becomes exhausted.
-
The waves were done using Unity's HDRP Water System.
Black Friday: A HUD UI Project
-
I programmatically animated HUD elements using a custom Action List class which handles tasks happening over a period of time.​​
-
I utilized Unity's vignette features to add feedback to using items.
-
I utilized Unity's focus distance feature to draw the player's attention away from the background when the weapon wheel is open.
Black Friday: A Menu UI Project
-
​​I designed and implemented a diegetic menu interface with custom camera interpolation logic written in C#.
-
The interface consists of a main menu view, a Play Game button, an options menu, a credits menu, and an Exit Game menu.​
-
-
Using C#, I created intuitive feedback for interactions with buttons and sliders.
-
Using C# and Unity, I created a custom group of UI elements for cycling through options for a setting.
-
Using Unity's animator, I created intuitive animations for menu elements during transition events.
Vanquisher: 3rd Person Melee Combat Game
-
Using C#, behavior trees, and linear algebra, I created combat behaviors for base, shield, archer, and brute enemy types.
-
I used animations from mixamo to add visual feedback to the enemies' actions.​
- ​`Interpolation was used to line up the enemy for finisher animations​.
-
I implemented design decisions for the enemies:
-
enemies surround the player in a circle​
-
enemies attack one at a time
-
hit, finisher, grapple, stun, block, move, and attack states
-
enemies go into a ragdoll state when dying
-