A class defining parameters for SH sample probe building.
Name | Description |
---|---|
GetBudget() | The number of form factors to store per output sample. |
GetCoefficientBasisX() | The basis vectors for the probe coefficients. |
GetCoefficientBasisY() | The basis vectors for the probe coefficients. |
GetCoefficientBasisZ() | The basis vectors for the probe coefficients. |
GetCoefficientOrder() | The desired output order of the coefficients. |
GetCullingThreshold() | Determines the threshold of valid visibility below which a point is culled. |
GetDependencyIncludedSystemDistance() | Bounding box of the probe set (i.e. bounding box containing all the probes) whose dependencies are being calculated is. |
GetDependencyLocalityDistance() | Maximum distance at which a given system will be considered local. |
GetDependencyVisibilityThreshold() | Do not consider a system as a dependency if its visibility is smaller than the threshold. |
GetEnvironmentResolution() | The resolution for each face of the environment map. |
GetErrorThreshold() | Determines the threshold of interpolation error below which a point may be removed. |
GetExcludeEnvironmentInPrimaryBounce() | Whether to exclude environment when solving the probes directly. |
GetIndividualProbes() | Whether to treat the probes in this set entirely individually, and disable optimisations in the EntireProbeSetSolver which share data between probes. |
GetNumEnvironmentVisibilitySHCoefficients() | The number of SH coefficients used for environment visibility. |
GetNumSHCoefficients() | The number of SH coefficients used. |
GetQuality() | The number of rays to cast for computing form factors. |
GetUseCulling() | Whether to cull probes that are not in valid locations. |
GetVisibilityThreshold() | The necessary visibility of a cluster to be used as form factor. |
SetBudget(Geo::s32) | The number of form factors to store per output sample. |
SetCoefficientBasis(const Geo::v128 &, const Geo::v128 &, const Geo::v128 &) | The basis vectors for the probe coefficients. |
SetCoefficientOrder(const Geo::s8 *) | The desired output order of the coefficients. |
SetCullingThreshold(float) | Determines the threshold of valid visibility below which a point is culled. |
SetDependencyIncludedSystemDistance(float) | Bounding box of the probe set (i.e. bounding box containing all the probes) whose dependencies are being calculated is. |
SetDependencyLocalityDistance(float) | Maximum distance at which a given system will be considered local. |
SetDependencyVisibilityThreshold(float) | Do not consider a system as a dependency if its visibility is smaller than the threshold. |
SetEnvironmentResolution(Geo::s32) | The resolution for each face of the environment map. |
SetErrorThreshold(float) | Determines the threshold of interpolation error below which a point may be removed. |
SetExcludeEnvironmentInPrimaryBounce(bool) | Whether to exclude environment when solving the probes directly. |
SetIndividualProbes(bool) | Whether to treat the probes in this set entirely individually, and disable optimisations in the EntireProbeSetSolver which share data between probes. |
SetNumEnvironmentVisibilitySHCoefficients(Geo::s32) | The number of SH coefficients used for environment visibility. |
SetNumSHCoefficients(Geo::s32) | The number of SH coefficients used. |
SetQuality(Geo::s32) | The number of rays to cast for computing form factors. |
SetUseCulling(bool) | Whether to cull probes that are not in valid locations. |
SetVisibilityThreshold(float) | The necessary visibility of a cluster to be used as form factor. |
public: Geo::s32 GetBudget() const
The number of form factors to store per output sample.
public: const Geo::v128 & GetCoefficientBasisX() const
The basis vectors for the probe coefficients.
Must be axis aligned and orthonormal. Defaults to (+x, +y, +z).
public: const Geo::v128 & GetCoefficientBasisY() const
The basis vectors for the probe coefficients.
Must be axis aligned and orthonormal. Defaults to (+x, +y, +z).
public: const Geo::v128 & GetCoefficientBasisZ() const
The basis vectors for the probe coefficients.
Must be axis aligned and orthonormal. Defaults to (+x, +y, +z).
public: const Geo::s8 * GetCoefficientOrder() const
The desired output order of the coefficients.
Must be called after SetNumSHCoefficients. The length of the array must be 4 for L1 probe sets, and 9 for L2. Each value maps the indexed coefficient to the position of the index in the coefficientOrder array. By default the order is {012345678} which maps to an output order of: Y_00, Y_11, Y_10, Y_1-1; Y_20, Y_21, Y_2-1, Y_2-2, Y_22
public: float GetCullingThreshold() const
Determines the threshold of valid visibility below which a point is culled.
public: float GetDependencyIncludedSystemDistance() const
Bounding box of the probe set (i.e. bounding box containing all the probes) whose dependencies are being calculated is.
All systems whose bounding boxes intersect this expanded bounding box will be fully represented in ray tracing when calculating dependencies. Other systems will be represented as bounding boxes only.
public: float GetDependencyLocalityDistance() const
Maximum distance at which a given system will be considered local.
public: float GetDependencyVisibilityThreshold() const
Do not consider a system as a dependency if its visibility is smaller than the threshold.
Specify 0 to accept systems with any visibility.
public: Geo::s32 GetEnvironmentResolution() const
The resolution for each face of the environment map.
public: float GetErrorThreshold() const
Determines the threshold of interpolation error below which a point may be removed.
public: bool GetExcludeEnvironmentInPrimaryBounce() const
Whether to exclude environment when solving the probes directly.
public: bool GetIndividualProbes() const
Whether to treat the probes in this set entirely individually, and disable optimisations in the EntireProbeSetSolver which share data between probes.
This is useful for probe sets of "dedicated" probes which are positioned exactly where required by static meshes, but not near each other. The default value is false.
public: Geo::s32 GetNumEnvironmentVisibilitySHCoefficients() const
The number of SH coefficients used for environment visibility.
Can be Enlighten::SH_ORDER_DISABLED, Enlighten::SH_ORDER_L0, Enlighten::SH_ORDER_L1 or Enlighten::SH_ORDER_L2.
public: Geo::s32 GetNumSHCoefficients() const
The number of SH coefficients used.
Can be Enlighten::SH_ORDER_L1 or Enlighten::SH_ORDER_L2.
public: Geo::s32 GetQuality() const
The number of rays to cast for computing form factors.
public: bool GetUseCulling() const
Whether to cull probes that are not in valid locations.
public: float GetVisibilityThreshold() const
The necessary visibility of a cluster to be used as form factor.
public: void SetBudget
(
Geo::s32 budget
)
The number of form factors to store per output sample.
public: void SetCoefficientBasis
(
const Geo::v128 & basisX,
const Geo::v128 & basisY,
const Geo::v128 & basisZ
)
The basis vectors for the probe coefficients.
Must be axis aligned and orthonormal. Defaults to (+x, +y, +z).
public: void SetCoefficientOrder
(
const Geo::s8 * coefficientOrder
)
The desired output order of the coefficients.
Must be called after SetNumSHCoefficients. The length of the array must be 4 for L1 probe sets, and 9 for L2. Each value maps the indexed coefficient to the position of the index in the coefficientOrder array. By default the order is {012345678} which maps to an output order of: Y_00, Y_11, Y_10, Y_1-1; Y_20, Y_21, Y_2-1, Y_2-2, Y_22
public: void SetCullingThreshold
(
float cullingThreshold
)
Determines the threshold of valid visibility below which a point is culled.
public: void SetDependencyIncludedSystemDistance
(
float v
)
Bounding box of the probe set (i.e. bounding box containing all the probes) whose dependencies are being calculated is.
All systems whose bounding boxes intersect this expanded bounding box will be fully represented in ray tracing when calculating dependencies. Other systems will be represented as bounding boxes only.
public: void SetDependencyLocalityDistance
(
float v
)
Maximum distance at which a given system will be considered local.
public: void SetDependencyVisibilityThreshold
(
float v
)
Do not consider a system as a dependency if its visibility is smaller than the threshold.
Specify 0 to accept systems with any visibility.
public: void SetEnvironmentResolution
(
Geo::s32 v
)
The resolution for each face of the environment map.
public: void SetErrorThreshold
(
float errorThreshold
)
Determines the threshold of interpolation error below which a point may be removed.
public: void SetExcludeEnvironmentInPrimaryBounce
(
bool v
)
Whether to exclude environment when solving the probes directly.
public: void SetIndividualProbes
(
bool b
)
Whether to treat the probes in this set entirely individually, and disable optimisations in the EntireProbeSetSolver which share data between probes.
This is useful for probe sets of "dedicated" probes which are positioned exactly where required by static meshes, but not near each other. The default value is false.
public: void SetNumEnvironmentVisibilitySHCoefficients
(
Geo::s32 numCoefficients
)
The number of SH coefficients used for environment visibility.
Can be Enlighten::SH_ORDER_DISABLED, Enlighten::SH_ORDER_L0, Enlighten::SH_ORDER_L1 or Enlighten::SH_ORDER_L2.
public: void SetNumSHCoefficients
(
Geo::s32 numCoefficients
)
The number of SH coefficients used.
Can be Enlighten::SH_ORDER_L1 or Enlighten::SH_ORDER_L2.
public: void SetQuality
(
Geo::s32 quality
)
The number of rays to cast for computing form factors.
public: void SetUseCulling
(
bool useCulling
)
Whether to cull probes that are not in valid locations.
public: void SetVisibilityThreshold
(
float visibilityThreshold
)
The necessary visibility of a cluster to be used as form factor.