Personal Projects

This is how I spend my free time

More info coming soon!

Feature Films

I write software for feature animation

Nimona (2020)

Spies in Disguise (2019)

Ferdinand (2017)

Ice Age: Collision Course (2016)

The Peanuts Movie (2015)

School Projects

A few projects I worked on back in college (2013-2014)

Spatial acceleration structures on the GPU

A library of GPU-accelerated spatial data structures, including a uniform grid for accelerating nearest neighbor searches and a k-d tree for accelerating ray tracing.

CUDA-parallelized Monte Carlo path tracer

Full global illumination, realistic diffuse surfaces, color bleeding, caustics, area lights, soft shadows. Also supports Fresnel refractions for glass materials and texture mapping for spheres and cubes.

Projective dynamics for fast simulation

First public implementation of the 2014 SIGGRAPH paper Projective Dynamics: Fusing Constraint Projections for Fast Simulation by Kavan, et al.

CUDA-parallelized rasterizer

A CUDA-based rasterized graphics pipeline with vertex shading, primitive assembly, perspective transformation, rasterization, and fragment shading. An exercise to learn how a rasterization pipeline can generate graphics without raycasting or OpenGL.

Automatic face detection and replacement

Automatic face detection and replacement algorithm using MATLAB’s CascadeObjectDetector feature detector class, projective warp homographies, and Poisson blending.