Sheep Commander

A 3 vs. 1 asymmetrical competitive multiplayer game where three wolves attempt to steal sheep from a shepherd. This was my second year team game project at DigiPen, where I worked with a team of four over the school year, serving as technical director. We started with a custom engine, where I built most of the core engine, the physics system, and most of the editor. We switched to UE4 for the second semester of the project to allow us to focus more on game design and polish.
Read more →

Advanced Real Time Renderer

This was a project over the course of a semester for an advanced real time rendering class. By the end, it supported deferred rendering, mesh instancing, BRDF lighting, soft shadows (using exponential shadow maps), dynamic reflection, image based global illumination with HDR environment maps, and screen-space ambient occlusion.
Read more →

Bidirectional Path Tracer

The second raytracer I built for school, this time a bidirectional path tracer in C++. Over the course of the project, I added support for several forms of optimization as well as features such as depth of field and constructive solid geometry (CSG). Other features such as global illumination, shadows, and reflections came naturally out of the algorithm.
Read more →

3D Skeletal Animation Engine

This was built up over a semester for an animation programming class. It implements hierarchical skeletal animation systems for arbitrary meshes with support for both forward and inverse kinematics as well as path following along splines with animation speed-matching.
Read more →

CDLOD Heightmap Renderer

This application implements Filip Strugar’s Continuous Distance-Dependent Level of Detail (CDLOD) algorithm for rendering heightmaps. This is a real-time, GPU based method for dynamically blending between detail levels of a terrain mesh with adjustable density aiming to keep triangles a consistent size on screen while avoiding artifacts such as gaps in geometry where detail levels change.
Read more →

AstroBots

A multiplayer platform-based arena game where each platform has its own localized gravity. This was the first full team project I worked on at DigiPen. On a team of five, I was primarily the physics programmer, which posed an interesting challenge given the gravity focus of the core concept of the game. Additionally, the project was built on a custom engine that I had made in a previous course.
Read more →

3D Spring-Mass Simulation

A physics simulation with support for large numbers of masses constrained by springs using a Verlet integrator.
Read more →