Exercises

  1. How many photons would a 50-W lightbulb that emits light at the single wavelength lamda equals 600 normal n normal m emit in 1 second?
  2. Compute the irradiance at a point due to a unit-radius disk h units directly above its normal with constant outgoing radiance of 10 W/ normal m squared normal s normal r . Do the computation twice, once as an integral over solid angle and once as an integral over area. (Hint: If the results do not match at first, see Section A.5.1.)
  3. Similarly, compute the irradiance at a point due to a square quadrilateral with outgoing radiance of 10 W/ normal m squared normal s normal r that has sides of length 1 and is 1 unit directly above the point in the direction of its surface normal.
  4. Modify the SampledSpectrum class to also store the wavelengths associated with the samples and their PDFs. Using pbrt’s assertion macros, add checks to ensure that no computations are performed using SampledSpectrum values associated with different wavelengths. Measure the performance of pbrt with and without your changes. How much runtime overhead is there? Did you find any bugs in pbrt?