Description:
Speed Kills is a 3d action racing game I developed along with one artist. I solely programmed the entire game on Unity 3 in C# as part of my thesis project. Drive through a post-apocalyptic tropical island. You have set up shop as the only pizza delivery service in town, and the people are hungry.

Key Features:

Finite state machine AI

Rocket and cleaver weaponry

Custom car shaders

Quick-time mini-games

Mini-map using rotated uv coordinates

Dynamic zombie deaths

Scoring and objective systems

Interpolated camera effects

Description:
Written in C#, this demo showcases an agent navigating a network of pathnodes using the A* algorithm. The demo uses the hexagonal Manhattan distance for its heuristics. Grass tiles cost 1 point, forest tiles cost 3 points, and water tiles cost 10 points.

Key Features:

A* pathfinding

Hexagonal Manhattan distance

Hexagonal movement grid

Queued target nodes

Description:
Written in Lua, the particle-based motion is an extended functionality of the LOVE engine that allows the player to move a particle chain that grows as it eats. Each segment is a particle that is attracted to the previous segment. The player only controls the head, and the rest of the body moves dynamically.

Key Features:

Particle attraction force

Dynamic particle-chain length

Axis-aligned bounding box collision

Simulated drag

Description:
The wheel menu is a component I wrote in UnrealScript for the tower-defense game, Spire. The script takes input from either an analog stick or mouse to move a cursor. It samples the direction of the input and smoothly moves the cursor towards that direction. This makes the control of the wheel menu feel fluid and intuitive for both types of input devices.

Key Features:

Xbox 360 controller and mouse input

Input smoothing curves

Sub-menus and side-panel

Description:
The 2.5d camera system gives a designer control over camera position, rotation, player lock-on, and interpolation speed based on volumes. Each time the player enters a volume, the system pushes the previous camera configuration onto a stack. This feature enables the designer to place volumes inside one another. When the player leaves a volume, the system simply pops the stack. Special events like a boosted jump may interrupt and take over the camera without causing a problem.

Key Features:

Stack-based camera volumes

Position, rotation, lock-on, and interpolation options

Camera interrupt events

Interpolated camera motion

Description:
Seasons FX is a demonstration of visual scripting within the UDK editor. The scene cycles through all four seasons of the year, rendering in real-time. I scripted the terrain, grass, leaves, and tree bark shaders using only the material editor and built-in textures. The snow collects faster on depressions and also dynamically displaces the terrain.