IMAGE GALLERY

Percentage-Closer Soft Shadows (PCSS)

This method for generating perceptually accurate soft shadows requires no pre- or post-processing, nor additional geometry. It replaces a traditional shadow map query and so is independent of scene complexity, compatible with alpha testing, displacement mapping, etc. It runs very fast on recent GPUs, is used by shipping games, and has spurred many follow-on papers.

Adaptive Shadow Maps (ASMs)

The goal of ASMs is to produce pixel-perfect shadows. An ASM resolves pixel size mismatches between the eye view and the light source view by creating higher-resolution shadow map pieces as needed. ASMs enable dramatic improvements in shadow quality while maintaining interactive frame rates.

Gallerium

I created this scene for a global illumination renderer (I also helped write a few bits of the renderer, as I was just starting my Masters then). The modeling, texturing, and lighting placement was done in 3D Studio Max. I had the privilege of running the live flythrough for Intel CEO Craig Barrett when he visited Cornell in 2000.
 

Movie Project

These images are captured from a movie that my partner and I created for an undergraduate computer graphics project. All the modeling was done procedurally in IBM Data Explorer, without a modeler. A complex explosion was also created procedurally by combining sphere deformations, transformations, lighting, and opacity variation.
 

Robot Model

This was my first creation with 3D Studio Max, based on a simple sketch I made once during a boring meeting. I used it to learn basic modeling, texturing, lighting, and animation, including inverse kinematics. As it turns out, being able to model simple scenes is a useful skill when you're working in computer graphics!
 

Paint Program

I wrote this paint program in my second year of High School. It was a huge hobby of mine, and I used it as a platform to learn about image compression, animation, user interfaces, and all sorts of other things. The program features cut/copy/paste, undo, palette customization, saving/loading, animation, font rendering, several different brushes, and a windows-like UI that I wrote from scratch.

Visualizations

These images show a number of visualizations I created while I was in High School. The set of images on the left are visualizations of the Mandelbrot Set. On the right is a terrain generation program I wrote which allowed the user to draw terrain in 2D and then to render it in 3D. In college I made a new version of this application using OpenGL that allowed the user to actually fly through a textured rendering of the terrain.
 

Slot Machine

One of my professors asked me to create a slot machine for a Parallel Computing Symposium taking place in Las Vegas. The Java Slot Machine skin and the items on the spinner shown in the shot were all drawn myself. It was very popular during the Internet boom back in 1999 or so.