For a semester, I took a 10-week class Rendering Algorithms with Wojciech Jarosz. The class page. I really enjoyed it, and wanted to showcase some of my work here. I can’t include code due to Honor Code, but I want to share some cool images / some of the work I did. All photos I rendered using code I wrote in the class. The entire experience culminated in my implementation of Primary Sample Space Metropolis Light Transport, a feat I am very proud of.
We started with basic Jensen boxes, then worked our way up into using AABBs, and having much more complicated geometry.Some of the more complicated geometry.
We worked with texture mapping, and eventually did some work with procedural textures, like the one shown above.We also used different texture blending techniques, using Fresnel’s equation and Schlick’s approximation.We eventually moved out of simple texture mapping into different shaders, working primarily with Phong and Lambertian shaders.This included implementing Monte-Carlo estimators for any shader, which meant writing code for PDF’s (probability distribution functions). Above is the PDF for a phong shader.Moving onto different ways of combining integration methods, we implemented Veach’s Multiple Importance Sampling. Above is an image I rendered which is the same as his thesis.For my final project, I implemented Primary Sample Space Metropolis Light Transport, or PSSMLT, by Kelemen et al. The two photos show roughly the same rendering time on my computer.This was the photo which eventually got me and my partner Addison Wessel a notable mention in the Rendering Competition involving the entire class and Graduate students.