In all of our previous shaders that dealt with a simulation of light, we were only considering surfaces lit by
, in which there is a direct path from the light to that surface. This is only part of a full simulation of light in the physical world. We must also consider light that has first reflected from another surface and its contribution to the final rendered color of an object, that object’s
. In discussions of rendering, the terms
are often used to differentiate between the relatively simple problem of determining a direct path from a surface to a light source and the much more involved methods required when light is bouncing everywhere within a scene.