Class InstantGI

  • All Implemented Interfaces:
    GIEngine

    public class InstantGI
    extends java.lang.Object
    implements GIEngine
    • Field Detail

      • numPhotons

        private int numPhotons
      • numSets

        private int numSets
      • c

        private float c
      • numBias

        private int numBias
    • Constructor Detail

      • InstantGI

        public InstantGI()
    • Method Detail

      • getGlobalRadiance

        public Color getGlobalRadiance​(ShadingState state)
        Description copied from interface: GIEngine
        This is an optional method for engines that contain a secondary illumination engine which can return an approximation of the global radiance in the scene (like a photon map). Engines can safely return Color.BLACK if they can't or don't wish to support this.
        Specified by:
        getGlobalRadiance in interface GIEngine
        Parameters:
        state - shading state
        Returns:
        color approximating global radiance
      • init

        public boolean init​(Options options,
                            Scene scene)
        Description copied from interface: GIEngine
        Initialize the engine. This is called before rendering begins.
        Specified by:
        init in interface GIEngine
        Returns:
        true if the init phase succeeded, false otherwise
      • getIrradiance

        public Color getIrradiance​(ShadingState state,
                                   Color diffuseReflectance)
        Description copied from interface: GIEngine
        Return the incomming irradiance due to indirect diffuse illumination at the specified surface point.
        Specified by:
        getIrradiance in interface GIEngine
        Parameters:
        state - current render state describing the point to be computed
        diffuseReflectance - diffuse albedo of the point being shaded, this can be used for importance tracking
        Returns:
        irradiance from indirect diffuse illumination at the specified point