Practical Global Illumination
with Irradiance Caching

SIGGRAPH 2007 Course 16

Jaroslav Křivánek
Pascal Gautron
Greg Ward
Okan Arikan
Henrik Wann Jensen

The course provides a practical guide to implementing irradiance caching algorithm to efficiently render flawless images featuring global illumination. In addition, recent research advances related to irradiance caching are presented: caching on glossy surfaces, temporal caching, acceleration through GPU implementation and irradiance decomposition.

the book is out! Book Cover
get a copy from Amazon


Since its invention 20 years ago, irradiance caching has successfully been used to accelerate the global illumination computation in the Radiance lighting simulation system. Its widespread use had to wait until computers became fast enough to consider global illumination in production rendering. Since then, its use is ubiquitous. Virtually all commercial and open-source rendering software base the global illumination computation upon irradiance caching. Irradiance caching is essential for making photon mapping efficient.

The objective of the course is twofold. The first objective is to expose the irradiance caching algorithm along with all the details and tricks upon which the success of a practical implementation is dependent. Various image artifacts that the basic algorithm can produce will be shown along with a recipe to suppress them.

The second objective is to acquaint the audience with the recent research results that increase the speed and extend the functionality of irradiance caching. Those include: exploiting temporal coherence to suppress temporal flickering, extending the caching mechanism to rendering glossy surfaces; accelerating the algorithm by porting it to the GPU or by decomposing the indirect illumination field by distance. Advantages and disadvantages of those methods will be clearly exposed.


  1. Introduction (Křivánek)
    (8:30 – 8:35 / 5 min)
  2. Stochastic Ray Tracing (Křivánek)
    (8:35 – 8:55 / 20 min)
  3. Irradiance Caching Algorithm (Ward)
    (8:55 – 9:20 / 25 min)
  4. Irradiance Caching in RADIANCE (Ward)
    (9:20 – 9:35 / 15 min)
  5. Implementation Details (Křivánek)
    (9:35 – 9:55 / 20 min)
  6. Irradiance Caching and Photon Maps (Jensen)
    (9:55 – 10:15 / 20 min)

Break (10:15 – 10:30 / 15 min)

  1. Extension to Glossy Surfaces: Radiance Caching (Křivánek)
    (10:30 – 10:50 / 20 min)
  2. Hardware Implementation (Gautron)
    (10:50 – 11:10 / 20 min)
  3. Temporal Coherence (Gautron)
    (11:10 – 11:35 / 25 min)
  4. Irradiance Decomposition (Arikan)
    (11:35 – 12:00 / 25 min)
  5. Discussion (All)
    (12:00 – 12:15 / 15 min)