Photons are a based on the
physical concept of light and are a divisible packet of energy
emitted from a light source. Photons are traced in a scene in a
similar fashion to rays however a value for the light energy is
calculated which is more physically accurate than the concept of
light color used in raytracing.
Caustic effects are
calculated during rendering using photon mapping a technique
developed to simulate indirect illumination using photons. A photon
is emitted into a scene and can can be reflected, transmitted or
absorbed by the surfaces it comes into contact with. Photons are
emitted into the scene from a light source and adjustments to this
process are described in the lighting
Photons are stored in shaders attached to
various objects in the scene. Photon behaviour at each surface is
described in detail in the objects
section. If a photon does not hit an object it disappears into
infinity and no further information is stored. A photon is absorbed
when it has hit a surface the maximum number of times set in the photon
depth limit option. Caustics can be calculated by following the
path of certain photons. If a photon is emitted, specularly
reflected or refracted then diffusely reflected onto the camera by a
diffuse surface this path will produce a caustic effect.
Photons traced along paths in the scene deposite energy data
which is stored in a photon map. Further description of this process
is contained in the photon
mapping section. Photons which are transmitted through coloured
objects retain this colour in their effect.
store photons only if the surface has a diffuse component. Indirect
illumination completely specular surfaces with no diffuse component
is computed with ray tracing so no photons are stored. The photon
can then be reflected or transmitted by the photon shader in a
direction determined by the photon shader.