|Ravi Ramamoorthi||Computer Graphics Laboratory ,|
|Pat Hanrahan||Stanford University|
We consider the rendering of diffuse objects under distant
illumination, as specified by an environment map. Using an
analytic expression for the irradiance in terms of spherical harmonic
coefficients of the lighting, we show that one needs to compute and use
only 9 coefficients, corresponding to the lowest-frequency modes of
the illumination, in order to achieve average errors of only 1%. In
other words, the irradiance is insensitive to high frequencies in the
lighting, and is well approximated using only 9 parameters. In fact,
we show that the irradiance can be procedurally represented
simply as a quadratic polynomial in the cartesian components of the
surface normal, and give explicit formulae. These observations
lead to a simple and efficient procedural rendering algorithm
amenable to hardware implementation, a prefiltering method up
to three orders of magnitude faster than previous techniques, and new
representations for lighting design and image-based rendering.
Lighting in most real scenes is complex, coming from a variety of sources including area lights and large continuous lighting distributions like skylight. But current graphics hardware only supports point or directional light sources. One reason is the lack of simple procedural formulas for general lighting distributions. Instead, an integration over the upper hemisphere must be done for each pixel.
We present such a simple formula for diffuse objects, i.e. for the irradiance. The key to our approach is the rapid computation of an analytic approximation to the irradiance environment map. For rendering, we demonstrate a simple procedural algorithm that runs at interactive frame rates, and is amenable to hardware implementation. No texture-mapping is required for the irradiance with our approach.
The main ingredient is the derivation of an analytic formula for the irradiance in terms of spherical harmonic coefficients of the lighting. For rendering, the key observation is that the Lambertian BRDF behaves sufficiently closely to a low-pass filter that we need consider only the first 2 orders of spherical harmonics, i.e. 9 parameters. The simple form of the first 9 spherical harmonics makes implementation straightforward.
ResultsThe images on the right illustrate some of our results. More information is found in the paper. Clicking on each of these figures will bring up a high-resolution version.
Figure 1 The diffuse shading on all objects in computed procedurally using our method. This is one frame from an interactive session using the Stanford Real-Time Programmable Shading system, in which our rendering algorithm can trivially be implemented.
Figure 2 Another scene used to compare interactively images obtained from our method to those obtained by computing irradiance environment maps in the traditional way. It can be seen that there is no perceptible difference. The left sphere is rendered using a 128x128 irradiance environment map texture, while the right sphere is rendered procedurally using our method. The top (projection of lighting) and bottom (mirror) spheres give an idea of the incident illumination.
Figure 3 A different form of comparison, where we compare the actual irradiance maps. The coordinate mappings are explained by Paul Debevec and the light probes are taken from his gallery. This figure shows the Eucalyptus Grove light probe.
Figure 4 Similar to figure 3, but for the Grace Cathedral light probe.
Figure 5 Source lightprobes for figures 3 and 4. These are tone-mapped high-dynamic range images. On a linear scale, the images are bluish because of blue stained glass windows and skylight respectively. This accounts for the bluish tinge in the irradiance environment maps.
Relevant LinksSiggraph 2001 paper in Gzipped Postscript (3.4M) or PDF (1M)
Related JOSA Paper that derives the theory
Slides (PPT 1.8M) for Siggraph talk.