User Tools

Site Tools


02_user_tutorials:20_light:01_first_steps:30_light-modeling-differences

This is an old revision of the document!


Differences between the CPU and GPU light model

1. Interpretation of specular and shininess reflection

2. Interpretation of transparency of image textures

3. Implementation of the GrinClonerNode behaviour

  • CPU (Twilight) implementation: repeats objects only into first quadrant
  • GPU (Flux) implementation: repeats objects into all four quadrants

4. Only in the Twilight light light model the additional function of getReceivedPower, getReflectedPower, getTransmittedPower, getAbsorbedPower, and getHitCount are implemented. See: More light model functions... beyond getAbsorbedPower

5. The twighlight model only handles skies with sky-shaders as light sources. Hence, the cloud texture does not act as a light source. GPUFlux handles any sky as light source, independent of the shader it uses. This allows the user to create its own sky light source. As a consequence, the cloud texture also acts as a light source, resulting in the dominantly blue lighting on some scenes. This was a deliberate choice to make the sky objects more flexible.

6. The way DirectionalLight generates photons:

  • CPU (Twilight): Photons are uniformly distributed over a disk of radius = scene bounding sphere radius.
  • GPU (GPUFlux): Samples photons only within the grid bounding box projected onto the light plane โ€” which is tightly fitted to your actual scene content.

Since the area of a bounding box is much smaller than the bounding sphere disk, more photons land on the objects for the FluxLightModel.

02_user_tutorials/20_light/01_first_steps/30_light-modeling-differences.1774272106.txt.gz ยท Last modified: 2026/03/23 14:21 by MH