Daniel D'Agostino's Information Technology website

Physically Based Rendering

Irradiance Caching

Irradiance Caching (IC) is a technique used in Physically Based Rendering to speed up rendering of the indirect diffuse component of the global illumination solution. IC stores irradiance computed sparsely via hemisphere sampling and uses it to interpolate at nearby locations.


An effective irradiance cache requires records to be stored in an acceleration structure that allows efficient insertion and fast lookup. An octree is most often used for this. This is a data structure which recursively divides regions of space into eight cubes of equal dimensions. This allows records with varying areas of influence to be stored at different depth levels of the octree.

For an overview of how it works in an IC, see [Ward et al. 1988] or [Krivanek and Gautron 2009] above. Some octree implementations are available online - look for those in PBRT and Mitsuba.