Module gpuFlux

Class SpectralPhotoLighting

All Implemented Interfaces:
Transformation, Pickable, Renderable, Manageable, PersistenceCapable, Shareable, UserFields, XObject, Map, Serializable

public class SpectralPhotoLighting extends PhotoLighting
A GPU Flux spectral variant of PhotoLighting that uses physically accurate spectral power distributions (SPDs) for sky and sun lights.

Overrides buildSkyDome() and buildSun() to return SpectralSkyDome and SpectralSun instances with preset- appropriate SPDs:

  • Sky: CIE D65 (daylight, ~6504 K) for OVERCAST_DAY and CLEAR_NOON; CIE D50 (warm daylight, ~5003 K) for GOLDEN_HOUR.
  • Sun: blackbody 5778 K for CLEAR_NOON; blackbody 2856 K (warm / incandescent-like) for GOLDEN_HOUR.

Example XL usage with GPU Flux:

   Axiom ==> new SpectralPhotoLighting(PhotoLighting.CLEAR_NOON);
 

Author:
MH at YNL 2026
See Also:
  • Field Details

  • Constructor Details

    • SpectralPhotoLighting

      public SpectralPhotoLighting()
      Creates a SpectralPhotoLighting node with the CLEAR_NOON preset.
    • SpectralPhotoLighting

      public SpectralPhotoLighting(int preset)
      Creates a SpectralPhotoLighting node with the specified preset.
      Parameters:
      preset - one of PhotoLighting.OVERCAST_DAY, PhotoLighting.CLEAR_NOON, PhotoLighting.GOLDEN_HOUR, PhotoLighting.STUDIO
    • SpectralPhotoLighting

      public SpectralPhotoLighting(int preset, float intensity)
      Creates a SpectralPhotoLighting node with the specified preset and intensity.
      Parameters:
      preset - one of the preset constants
      intensity - global power multiplier (1.0 = nominal)
  • Method Details

    • buildSkyDome

      public SkyDome buildSkyDome()
      Returns a SpectralSkyDome with a preset-appropriate SPD, or null for the PhotoLighting.STUDIO preset.
      Overrides:
      buildSkyDome in class PhotoLighting
      Returns:
      configured SkyDome instance, or null
    • buildSun

      public Sun buildSun()
      Returns a SpectralSun with a preset-appropriate SPD, or null for presets that have no direct sun.
      Overrides:
      buildSun in class PhotoLighting
      Returns:
      configured Sun node, or null
    • getNTypeImpl

      protected Node.NType getNTypeImpl()
      Description copied from class: Node
      This method returns the Node.NType which describes the managed fields of the class of this node. This method has to be implemented in every concrete subclass.
      Overrides:
      getNTypeImpl in class PhotoLighting
      Returns:
      type describing the managed fields of the class of this node
    • newInstance

      protected Node newInstance()
      Description copied from class: Node
      This method returns a new instance of the class of this node. This method has to be implemented in every concrete subclass.
      Overrides:
      newInstance in class PhotoLighting
      Returns:
      new instance of class of this node