Photon Output Variables VEX node

Performs photon russian roulette.

This operator performs photon russian roulette. When a photon strikes a surface, it has a probability of being reflected diffusely, reflected specularly, being transmitted or being absorbed by the surface. This operator allows you to specify the probabilities for reflection/transmission. For photons to be stored on the surface the probabilities should sum to a value less than 1.

There are three colors specified as well. Each of the colors is used to tint photons which are reflected (or transmitted).

For example, three surface types are described below:

Probability         Diffuse   Specular   Transmit
--------------------------------------------------
Clay Surface          .5        0           0
Mirror Surface        0         1           0
Glass                 0         0.1         0.9
The clay surface would have a 50% chance of absorbing photons, while it would reflect 50%. If the surface is less likely to bleed color to other surfaces, the probability should be lowered.

Both the mirror and glass surfaces have very low (if any) diffuse lighting, so their diffuse probabilities are set to 0. The mirrored surface will reflect photons, while the glass surface will reflect 10% of the photons and transmit 90%. The specular/transmit photon paths are used to handle caustics.

Warning For proper behavior, there should only be one of these operators in a photon shader.

Usages in other examples

Example name Example for