Assignment 4: Environment Map Importance Sampling

Due: Tuesday May 16th, 11:59PM

Questions? Need help? Post them on the Assignment4Discussion page so everyone else can see!

Please add a link to your final writeup on Assignment4Submission.

tt1 tt2


In the scenes we've rendered in this class so far, objects were lit using a small number of spotlight or area light sources. In the real world, light incident on an object comes not just from light emitters, but from all directions. One way of approximating this effect in pbrt is to use an infinite area light, which is used to define light incident on scene objects from all directions due the surrounding environment. Environment lighting can greatly contribute to the realism and richness of your renderings, such as in the images of the car above. However, since computing environment lighting involves integrating incoming radiance over the entire hemisphere in the worst case, monte carlo estimates are prone to be noisy, and require many samples to produce images of reasonable quality. In this project you will add support to pbrt for handling distant environmental lighting more efficiently by using importance sampling.

This assignment is designed to be significantly shorter than Homework 2 and 3.

Step 1: Background Reading

Read chapters 13 (especially 13.5), 14 (especially 14.3.4) and 15 (especially 15.6) in the pbrt book.