In December of 2012, my game project Limit Theory was successfully funded on Kickstarter. Since then, I've been working full-time to bring my dream of a totally-procedural, infinite, and open-ended sandbox space game to life. The game is written from scratch in C++, using OpenGL for 3D, SFML for windowing and threading, and irrKlang for audio. The target release date is early 2014!
CUDA Path Tracer / Procedural Modeling Language (Spring 2012)
For our CS348B final project, I built a GPU-accelerated path tracer to render a procedural space scene comprising a ship, asteroids, and a nebula. To build the scene, I designed and implemented a compiler for a new procedural modeling language, intended to make rapid prototyping of procedural algorithms a breeze. The entire final scene was generated procedurally, including the ship. To render the volumetric nebula as realistically as possible, I used Monte-Carlo path tracing augmented with the Metropolis Light Transport algorithm. I wrote the tracer in CUDA and C++, using OpenGL for pre-vis. Without using GPU acceleration, there simply would have been no way to render this volume (which included nonhomogeneous media and wavelength-dependent scattering) in a reasonable amount of time.
DirectX Graphics Engine (Summer 2010 - Fall 2011)
In the summer of 2010, when I first touched graphics programming, I started writing a graphics engine in DirectX (D3D) as my way of learning about computer graphics. For over a year I produced a large variety of small demo applications, showing off various concepts or techniques that I was trying to learn at the time.