CSE 168, Spring 2006
Final Project

Alex Zavodny





Techniques:

Soft shadows:


I implemented soft shadows early on using the basic algorithm presented in the book. This is a picture with 512 samples of the light; it took quite a while to render, but the results are very nice.


Depth-of-Field:


Depth-of-field was fairly straightforward to implement, but increased rendering times drastically. With depth-of-field in place, it was very simple to implement anitaliasing, and so I implemented that as well.




Environment Mapping:


One of my priorities was to implement environment mapping, so that I could provide more interesting lighting to my scenes. I did not do HDR environment mapping; rather, I converted the .hdr to a low dynamic range .ppm and used that instead.



Path Tracing:


I originally intended to use path tracing as a stepping stone to photon mapping, and then use that as my global illumination technique. I couldn't get the look I liked with photon mapping, so I went back to just using path tracing.

No Light Bounces

One light bounce

Four light bounces, but not enough ray sampling


Photon Mapping:


Photon mapping took a while to get working properly, but I was satisfied with the results in the end. These are some pictures that I took during my time experimenting with photon mapping.

Photon Map used for direct lighting

Visualization of the photons

Visualization of indirect lighting for photon mapping

Full Gathering