Math 155B Final Project -- Peter Olcott

This is my final project for MATH 155B. I implemented: Anti-Aliasing, Depth of Field, Adaptive Variance, Soft Shadows, and an accelleration structure

My First Image with the ray tracer

I like to choose test images that have very little color. Notice in this image there is lots of aliasing. The shadows are very sharp. In this image there are 3 light sources.


Lots of effects were implemented for this image

I implemented Uniform sampling on the subpixel, Jittered light source positions on the uniform sphere, and Uniform Jitter Eye positions for depth of field


My Cow from my old CSE 167 class

This used an accelleration structure from: collision detection library


3D Studio Object Importer -- Flat Shadows

Took the above collision detection library, and inserted it into the raytrace project. I use the ray-to-bounding box to find the triangle that intersects, and then I rerun the intersection test function inside the ray tracer to set all the needed information.


Smooth Shadows w/ Anti-Aliasing and Soft Shadows

Using the barycentric coordinates inside ViewableTriangle, I weight the normals at the 3 vertices. I precalculate normals of the smooth model at each vertex


Glass Material w/ some Texture mapping


Finally, my original OpenGL teapot

Uses reflections, soft shadows and some anti aliasing, takes over 2 hours to render