This is the documentation for Enlighten.

class Enlighten IPrecompBuildParameters

class Enlighten::IPrecompBuildParameters

A class containing various parameters and dials for the system level precompute process.

Variables

Name Description
const Geo::s32 kShadowFaceBack = 0

Deprecated ShadowFace API.

const Geo::s32 kShadowFaceBoth = -1

Deprecated ShadowFace API.

const Geo::s32 kShadowFaceFront = 1

Deprecated ShadowFace API.

const Geo::s32 kShadowFaceUseMaterialAPI = -2

Deprecated ShadowFace API.

Functions

Name Description
GetAlignedEdgeStitching()

Whether to use edge stitching.

GetBackFaceTolerance()

Whether to reject ray origins which can see any back face (if false, we only reject ray origins if they see nothing but back faces).

GetClusterSize()

The size of an input cluster.

GetClusterTolerance()

The strictness with which the geometry is voxelised during preclustering.

GetComputeRayOriginOutput()

General Debugging Options -------------------------------------------------- Whether to compute ray origin output during light transport.

GetCTDiv()

Number of children per node in the cluster hierarchy.

GetDefaultValues()

Returns a set of build parameters representing the defaults.

GetDependencyIncludedSystemDistance()

Bounding box of the system whose dependencies are being calculated is expanded by this distance in all directions.

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.

GetDirectionalIrradiance()

Whether to generate directional irradiance output.

GetDirectionalVisibilityDirectionsPerByte()

Number of visibility samples to store per byte for precomputed directional visibility.

GetDirectionalVisibilitySlices()

Number of vertical sphere slices for precomputed directional visibility storage.

GetEdgeStitching()

Whether to use edge stitching.

GetEdgeStitchingDistanceMultiplier()

Maximum distance between edges for them to be stitchable, as a multiple of output pixel size.

GetEnvironmentResolution()

The resolution for each face of the environment map.

GetEnvironmentValidity()

Limits the region of the environment that is valid.

GetExcludeEnvironmentInPrimaryBounce()

Whether to exclude the environment form factors from the rad core data which is used for solving to the lightmap.

GetGenerateClusterProbeSampleOffsets()

Whether to generate per cluster offsets for sampling probes.

GetHQVisWeight()

High quality clustering visibility weighting.

GetImportance()

A relative importance multiplier for this system in the global light transport step.

GetIrradianceBudget()

The number of form factors to store per irradiance output sample.

GetIrradiancePushOff()

Push off for irradiance form factor rays, in cm.

GetIrradianceQuality()

The number of rays to cast for computing irradiance form factors.

GetITBudget()

Maximum number of clustering iterations.

GetLCEpsilon()

Clustering iteration termination error threshold.

GetMaxSamples()

Maximum number of input samples for a system.

GetMaxSolutionSize()

The maximum size of an output system, in pixels.

GetMinSamples()

Minimum number of input samples for a system.

GetMinSolutionSize()

The minimum size of an output system, in pixels.

GetModellingTolerance()

Radius controlling how close ray origins can be to other geometry, in cm.

GetNSBudget()

Number of per-triangle visibility samples to use for computing triangle visibility and input sample visibility.

GetNumTerrainLODLevels()

If terrain LODs are being generated, specifies how many LODs to generate.

GetPixelStitching()

Whether to use pixel stitching.

GetPixelStitchingNormalDotProduct()

Maximum dot product of normals for pixels to be stitchable.

GetSafe16BitClustering()

High quality clustering visibility weighting.

GetSampleCullingThreshold()

Threshold controlling input (duster) sample culling behaviour.

GetSamplesPerCluster()

The number of input samples per cluster.

GetShadowFaces()

Deprecated ShadowFace API.

GetStitchingDistanceMultiplier()

Maximum distance between charts for them to be stitchable, as a multiple of output pixel size.

GetStitchingNormalDotProduct()

Maximum dot product of normals for charts to be stitchable.

GetTriangleCullingThreshold()

Threshold controlling visibility-based cluster triangle culling behaviour.

GetValidOverhangDistance()

The valid overhang distance for mesh projection.

GetVerticalAxis()

The axis aligned vector pointing directly upwards.

GetViewsDisabled()

Whether to disable viewsets.

GetViewVoxelMultiplier()

Size of voxel grid to use for automatic viewsets, as a multiplier of (minimum) output pixel size.

GetVisibilityThreshold()

The error allowed for reducing the number of form factors for each spherical output sample.

Load(Geo::IGeoInputStream &, Geo::u32)

Load an instance of this class from an IGeoStream.

RequiresTerrainLODs()

Whether to create "terrain" LODs.

RequiresTerrainPackingPadding()

If terrain LODs are being generated, specifies whether half a pixel padding should be added to final terrain system atlas.

Save(Geo::IGeoStream &, Geo::u32)

Save an instance of this class to an IGeoStream.

SetAlignedEdgeStitching(bool)

Whether to use edge stitching.

SetBackFaceTolerance(float)

Whether to reject ray origins which can see any back face (if false, we only reject ray origins if they see nothing but back faces).

SetClusterSize(float)

The size of an input cluster.

SetClusterTolerance(float)

The strictness with which the geometry is voxelised during preclustering.

SetComputeRayOriginOutput(bool)

General Debugging Options -------------------------------------------------- Whether to compute ray origin output during light transport.

SetCTDiv(float)

Number of children per node in the cluster hierarchy.

SetDependencyIncludedSystemDistance(float)

Bounding box of the system whose dependencies are being calculated is expanded by this distance in all directions.

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.

SetDirectionalIrradiance(bool)

Whether to generate directional irradiance output.

SetDirectionalVisibilityDirectionsPerByte(Geo::s32)

Number of visibility samples to store per byte for precomputed directional visibility.

SetDirectionalVisibilitySlices(Geo::s32)

Number of vertical sphere slices for precomputed directional visibility storage.

SetEdgeStitching(bool)

Whether to use edge stitching.

SetEdgeStitchingDistanceMultiplier(float)

Maximum distance between edges for them to be stitchable, as a multiple of output pixel size.

SetEnvironmentResolution(Geo::s32)

The resolution for each face of the environment map.

SetEnvironmentValidity(Enlighten::EnvironmentValidity)

Limits the region of the environment that is valid.

SetExcludeEnvironmentInPrimaryBounce(bool)

Whether to exclude the environment form factors from the rad core data which is used for solving to the lightmap.

SetGenerateClusterProbeSampleOffsets(bool)

Whether to generate per cluster offsets for sampling probes.

SetHQVisWeight(float)

High quality clustering visibility weighting.

SetImportance(float)

A relative importance multiplier for this system in the global light transport step.

SetIrradianceBudget(Geo::s32)

The number of form factors to store per irradiance output sample.

SetIrradiancePushOff(float)

Push off for irradiance form factor rays, in cm.

SetIrradianceQuality(Geo::s32)

The number of rays to cast for computing irradiance form factors.

SetITBudget(Geo::s32)

Maximum number of clustering iterations.

SetLCEpsilon(float)

Clustering iteration termination error threshold.

SetMaxSamples(Geo::s32)

Maximum number of input samples for a system.

SetMaxSolutionSize(Geo::s32, Geo::s32)

The maximum size of an output system, in pixels.

SetMinSamples(Geo::s32)

Minimum number of input samples for a system.

SetMinSolutionSize(Geo::s32, Geo::s32)

The minimum size of an output system, in pixels.

SetModellingTolerance(float)

Radius controlling how close ray origins can be to other geometry, in cm.

SetNSBudget(Geo::s32)

Number of per-triangle visibility samples to use for computing triangle visibility and input sample visibility.

SetNumTerrainLODLevels(Geo::s32)

If terrain LODs are being generated, specifies how many LODs to generate.

SetPixelStitching(bool)

Whether to use pixel stitching.

SetPixelStitchingNormalDotProduct(float)

Maximum dot product of normals for pixels to be stitchable.

SetRequiresTerrainLODs(bool)

Whether to create "terrain" LODs.

SetRequiresTerrainPackingPadding(bool)

If terrain LODs are being generated, specifies whether half a pixel padding should be added to final terrain system atlas.

SetSafe16BitClustering(bool)

Whether to enforce that clustering creates no more than 65535 clusters such that a cluster index will fit in an unsigned integer.

SetSampleCullingThreshold(float)

Threshold controlling input (duster) sample culling behaviour.

SetSamplesPerCluster(Geo::s32)

The number of input samples per cluster.

SetShadowFaces(Geo::s32)

Deprecated ShadowFace API.

SetStitchingDistanceMultiplier(float)

Maximum distance between charts for them to be stitchable, as a multiple of output pixel size.

SetStitchingNormalDotProduct(float)

Maximum dot product of normals for charts to be stitchable.

SetTriangleCullingThreshold(float)

Threshold controlling visibility-based cluster triangle culling behaviour.

SetValidOverhangDistance(Geo::s32)

The valid overhang distance for mesh projection.

SetVerticalAxis(Enlighten::WorldAxis)

The axis aligned vector pointing directly upwards.

SetViewsDisabled(bool)

Whether to disable viewsets.

SetViewVoxelMultiplier(float)

Size of voxel grid to use for automatic viewsets, as a multiplier of (minimum) output pixel size.

SetVisibilityThreshold(float)

The error allowed for reducing the number of form factors for each spherical output sample.


virtual bool Enlighten::IPrecompBuildParameters::GetAlignedEdgeStitching


public: bool GetAlignedEdgeStitching() const


Whether to use edge stitching.


virtual float Enlighten::IPrecompBuildParameters::GetBackFaceTolerance


public: float GetBackFaceTolerance() const


Whether to reject ray origins which can see any back face (if false, we only reject ray origins if they see nothing but back faces).


virtual float Enlighten::IPrecompBuildParameters::GetClusterSize


public: float GetClusterSize() const


The size of an input cluster.


virtual float Enlighten::IPrecompBuildParameters::GetClusterTolerance


public: float GetClusterTolerance() const


The strictness with which the geometry is voxelised during preclustering.


virtual bool Enlighten::IPrecompBuildParameters::GetComputeRayOriginOutput


public: bool GetComputeRayOriginOutput() const


General Debugging Options -------------------------------------------------- Whether to compute ray origin output during light transport.

Ray origin output is useful for debugging radiosity issues. The default value is false.


virtual float Enlighten::IPrecompBuildParameters::GetCTDiv


public: float GetCTDiv() const


Number of children per node in the cluster hierarchy.


static const IPrecompBuildParameters* Enlighten::IPrecompBuildParameters::GetDefaultValues


public: const IPrecompBuildParameters * GetDefaultValues()


Returns a set of build parameters representing the defaults.


virtual float Enlighten::IPrecompBuildParameters::GetDependencyIncludedSystemDistance


public: float GetDependencyIncludedSystemDistance() const


Bounding box of the system whose dependencies are being calculated is expanded by this distance in all directions.

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.


virtual float Enlighten::IPrecompBuildParameters::GetDependencyLocalityDistance


public: float GetDependencyLocalityDistance() const


Maximum distance at which a given system will be considered local.


virtual float Enlighten::IPrecompBuildParameters::GetDependencyVisibilityThreshold


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.


virtual bool Enlighten::IPrecompBuildParameters::GetDirectionalIrradiance


public: bool GetDirectionalIrradiance() const


Whether to generate directional irradiance output.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetDirectionalVisibilityDirectionsPerByte


public: Geo::s32 GetDirectionalVisibilityDirectionsPerByte() const


Number of visibility samples to store per byte for precomputed directional visibility.

The default value is 4 (2 bits per direction). Valid values are 1,2,4 and 8. 8 produces the best compression, 1 the best quality. 4 produces the best size / quality balance.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetDirectionalVisibilitySlices


public: Geo::s32 GetDirectionalVisibilitySlices() const


Number of vertical sphere slices for precomputed directional visibility storage.

The number of sampled visibility directions will be roughly the square of this number. Defaults to 27 (875 sampled directions). Valid values range between 2 and 64.


virtual bool Enlighten::IPrecompBuildParameters::GetEdgeStitching


public: bool GetEdgeStitching() const


Whether to use edge stitching.


virtual float Enlighten::IPrecompBuildParameters::GetEdgeStitchingDistanceMultiplier


public: float GetEdgeStitchingDistanceMultiplier() const


Maximum distance between edges for them to be stitchable, as a multiple of output pixel size.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetEnvironmentResolution


public: Geo::s32 GetEnvironmentResolution() const


The resolution for each face of the environment map.


virtual Enlighten::EnvironmentValidity Enlighten::IPrecompBuildParameters::GetEnvironmentValidity


public: Enlighten::EnvironmentValidity GetEnvironmentValidity() const


Limits the region of the environment that is valid.

Indirect lighting data is not generated for surfaces that see invalid regions of the environment. When a non-default value is specified, the vertical axis parameter must also be specified.


virtual bool Enlighten::IPrecompBuildParameters::GetExcludeEnvironmentInPrimaryBounce


public: bool GetExcludeEnvironmentInPrimaryBounce() const


Whether to exclude the environment form factors from the rad core data which is used for solving to the lightmap.


virtual bool Enlighten::IPrecompBuildParameters::GetGenerateClusterProbeSampleOffsets


public: bool GetGenerateClusterProbeSampleOffsets() const


Whether to generate per cluster offsets for sampling probes.


virtual float Enlighten::IPrecompBuildParameters::GetHQVisWeight


public: float GetHQVisWeight() const


High quality clustering visibility weighting.

A value of 0 means that only position information is used for clustering, a value of 1 means only visibility information is used. Generally, a value close to 1 should be used..


virtual float Enlighten::IPrecompBuildParameters::GetImportance


public: float GetImportance() const


A relative importance multiplier for this system in the global light transport step.

The default value is 1.0. Higher values should only be used for area light geometry in its own dedicated system (which is known to be a bright source of illumination at precompute time). Setting a high importance will ensure that the area light geometry is retained during the light transport compression step. If you use a high importance multiplier, you should also ensure that area lights have as few clusters as possible.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetIrradianceBudget


public: Geo::s32 GetIrradianceBudget() const


The number of form factors to store per irradiance output sample.


virtual float Enlighten::IPrecompBuildParameters::GetIrradiancePushOff


public: float GetIrradiancePushOff() const


Push off for irradiance form factor rays, in cm.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetIrradianceQuality


public: Geo::s32 GetIrradianceQuality() const


The number of rays to cast for computing irradiance form factors.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetITBudget


public: Geo::s32 GetITBudget() const


Maximum number of clustering iterations.


virtual float Enlighten::IPrecompBuildParameters::GetLCEpsilon


public: float GetLCEpsilon() const


Clustering iteration termination error threshold.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetMaxSamples


public: Geo::s32 GetMaxSamples() const


Maximum number of input samples for a system.


virtual Geo::GeoPair<Geo::s32, Geo::s32> Enlighten::IPrecompBuildParameters::GetMaxSolutionSize


public: Geo::GeoPair< Geo::s32, Geo::s32 > GetMaxSolutionSize() const


The maximum size of an output system, in pixels.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetMinSamples


public: Geo::s32 GetMinSamples() const


Minimum number of input samples for a system.


virtual Geo::GeoPair<Geo::s32, Geo::s32> Enlighten::IPrecompBuildParameters::GetMinSolutionSize


public: Geo::GeoPair< Geo::s32, Geo::s32 > GetMinSolutionSize() const


The minimum size of an output system, in pixels.


virtual float Enlighten::IPrecompBuildParameters::GetModellingTolerance


public: float GetModellingTolerance() const


Radius controlling how close ray origins can be to other geometry, in cm.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetNSBudget


public: Geo::s32 GetNSBudget() const


Number of per-triangle visibility samples to use for computing triangle visibility and input sample visibility.

These visibilities are used by the clustering metric, triangle and input sample culling.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetNumTerrainLODLevels


public: Geo::s32 GetNumTerrainLODLevels() const


If terrain LODs are being generated, specifies how many LODs to generate.


virtual bool Enlighten::IPrecompBuildParameters::GetPixelStitching


public: bool GetPixelStitching() const


Whether to use pixel stitching.


virtual float Enlighten::IPrecompBuildParameters::GetPixelStitchingNormalDotProduct


public: float GetPixelStitchingNormalDotProduct() const


Maximum dot product of normals for pixels to be stitchable.


virtual bool Enlighten::IPrecompBuildParameters::GetSafe16BitClustering


public: bool GetSafe16BitClustering() const


High quality clustering visibility weighting.

A value of 0 means that only position information is used for clustering, a value of 1 means only visibility information is used. Generally, a value close to 1 should be used..


virtual float Enlighten::IPrecompBuildParameters::GetSampleCullingThreshold


public: float GetSampleCullingThreshold() const


Threshold controlling input (duster) sample culling behaviour.

If the visibility of the sample is less than this threshold the sample is culled. Visibility is defined as the fraction of visible front-faces over the number of samples used for visibility (NSBudget). A value of 0, turns off sample culling. A value of 1 rejects the sample if any back-face is visible.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetSamplesPerCluster


public: Geo::s32 GetSamplesPerCluster() const


The number of input samples per cluster.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetShadowFaces


public: Geo::s32 GetShadowFaces() const


Deprecated ShadowFace API.

Which faces of the input geometry should block incoming light when calculating shadows for directional visibility. This is now a material setting, set on the m_ShadowfaceBehaviourType member of the Enlighten::PrecompMaterialInfo passed to IPrecompInputSystem::SetMaterialInfo(). To aid migration, values set with this deprecated API will be preferred over values set with the new material API. The default value is kShadowFaceUseMaterialAPI.


virtual float Enlighten::IPrecompBuildParameters::GetStitchingDistanceMultiplier


public: float GetStitchingDistanceMultiplier() const


Maximum distance between charts for them to be stitchable, as a multiple of output pixel size.


virtual float Enlighten::IPrecompBuildParameters::GetStitchingNormalDotProduct


public: float GetStitchingNormalDotProduct() const


Maximum dot product of normals for charts to be stitchable.


virtual float Enlighten::IPrecompBuildParameters::GetTriangleCullingThreshold


public: float GetTriangleCullingThreshold() const


Threshold controlling visibility-based cluster triangle culling behaviour.

If the visibility of the triangle is less than this threshold the triangle is rejected and not part of the clustering; thus it will get no input samples. Visibility is defined as the fraction of visible front-faces over the hemisphere of the cluster. A value of 0 turns off visibility-based cluster triangle culling. A value of 1 rejects the cluster triangle if any back-face is visible.


virtual Geo::s32 Enlighten::IPrecompBuildParameters::GetValidOverhangDistance


public: Geo::s32 GetValidOverhangDistance() const


The valid overhang distance for mesh projection.

Controls the number of pixels that detail charts should be allowed to overhang target charts before we consider the overhang to be 'naughty' and appear in the DoDebugColouring output. The default is 1 pixel. Zero or negative numbers are valid and imply no overhang is valid.


virtual Enlighten::WorldAxis Enlighten::IPrecompBuildParameters::GetVerticalAxis


public: Enlighten::WorldAxis GetVerticalAxis() const


The axis aligned vector pointing directly upwards.


virtual bool Enlighten::IPrecompBuildParameters::GetViewsDisabled


public: bool GetViewsDisabled() const


Whether to disable viewsets.


virtual float Enlighten::IPrecompBuildParameters::GetViewVoxelMultiplier


public: float GetViewVoxelMultiplier() const


Size of voxel grid to use for automatic viewsets, as a multiplier of (minimum) output pixel size.


virtual float Enlighten::IPrecompBuildParameters::GetVisibilityThreshold


public: float GetVisibilityThreshold() const


The error allowed for reducing the number of form factors for each spherical output sample.


virtual bool Enlighten::IPrecompBuildParameters::Load


public: bool Load
(
    Geo::IGeoInputStream & stream,
    Geo::u32 section
)


Load an instance of this class from an IGeoStream.


virtual bool Enlighten::IPrecompBuildParameters::RequiresTerrainLODs


public: bool RequiresTerrainLODs() const


Whether to create "terrain" LODs.


virtual bool Enlighten::IPrecompBuildParameters::RequiresTerrainPackingPadding


public: bool RequiresTerrainPackingPadding() const


If terrain LODs are being generated, specifies whether half a pixel padding should be added to final terrain system atlas.

Setting to false enables world-space packing.


virtual bool Enlighten::IPrecompBuildParameters::Save


public: bool Save
(
    Geo::IGeoStream & stream,
    Geo::u32 section
) const


Save an instance of this class to an IGeoStream.


virtual void Enlighten::IPrecompBuildParameters::SetAlignedEdgeStitching


public: void SetAlignedEdgeStitching
(
    bool b
)


Whether to use edge stitching.


virtual void Enlighten::IPrecompBuildParameters::SetBackFaceTolerance


public: void SetBackFaceTolerance
(
    float v
)


Whether to reject ray origins which can see any back face (if false, we only reject ray origins if they see nothing but back faces).


virtual void Enlighten::IPrecompBuildParameters::SetClusterSize


public: void SetClusterSize
(
    float s
)


The size of an input cluster.


virtual void Enlighten::IPrecompBuildParameters::SetClusterTolerance


public: void SetClusterTolerance
(
    float s
)


The strictness with which the geometry is voxelised during preclustering.


virtual void Enlighten::IPrecompBuildParameters::SetComputeRayOriginOutput


public: void SetComputeRayOriginOutput
(
    bool b
)


General Debugging Options -------------------------------------------------- Whether to compute ray origin output during light transport.

Ray origin output is useful for debugging radiosity issues. The default value is false.


virtual void Enlighten::IPrecompBuildParameters::SetCTDiv


public: void SetCTDiv
(
    float v
)


Number of children per node in the cluster hierarchy.


virtual void Enlighten::IPrecompBuildParameters::SetDependencyIncludedSystemDistance


public: void SetDependencyIncludedSystemDistance
(
    float v
)


Bounding box of the system whose dependencies are being calculated is expanded by this distance in all directions.

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.


virtual void Enlighten::IPrecompBuildParameters::SetDependencyLocalityDistance


public: void SetDependencyLocalityDistance
(
    float v
)


Maximum distance at which a given system will be considered local.


virtual void Enlighten::IPrecompBuildParameters::SetDependencyVisibilityThreshold


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.


virtual void Enlighten::IPrecompBuildParameters::SetDirectionalIrradiance


public: void SetDirectionalIrradiance
(
    bool b
)


Whether to generate directional irradiance output.


virtual void Enlighten::IPrecompBuildParameters::SetDirectionalVisibilityDirectionsPerByte


public: void SetDirectionalVisibilityDirectionsPerByte
(
    Geo::s32 v
)


Number of visibility samples to store per byte for precomputed directional visibility.

The default value is 4 (2 bits per direction). Valid values are 1,2,4 and 8. 8 produces the best compression, 1 the best quality. 4 produces the best size / quality balance.


virtual void Enlighten::IPrecompBuildParameters::SetDirectionalVisibilitySlices


public: void SetDirectionalVisibilitySlices
(
    Geo::s32 v
)


Number of vertical sphere slices for precomputed directional visibility storage.

The number of sampled visibility directions will be roughly the square of this number. Defaults to 27 (875 sampled directions). Valid values range between 2 and 64.


virtual void Enlighten::IPrecompBuildParameters::SetEdgeStitching


public: void SetEdgeStitching
(
    bool b
)


Whether to use edge stitching.


virtual void Enlighten::IPrecompBuildParameters::SetEdgeStitchingDistanceMultiplier


public: void SetEdgeStitchingDistanceMultiplier
(
    float v
)


Maximum distance between edges for them to be stitchable, as a multiple of output pixel size.


virtual void Enlighten::IPrecompBuildParameters::SetEnvironmentResolution


public: void SetEnvironmentResolution
(
    Geo::s32 v
)


The resolution for each face of the environment map.


virtual void Enlighten::IPrecompBuildParameters::SetEnvironmentValidity


public: void SetEnvironmentValidity
(
    Enlighten::EnvironmentValidity v
)


Limits the region of the environment that is valid.

Indirect lighting data is not generated for surfaces that see invalid regions of the environment. When a non-default value is specified, the vertical axis parameter must also be specified.


virtual void Enlighten::IPrecompBuildParameters::SetExcludeEnvironmentInPrimaryBounce


public: void SetExcludeEnvironmentInPrimaryBounce
(
    bool b
)


Whether to exclude the environment form factors from the rad core data which is used for solving to the lightmap.


virtual void Enlighten::IPrecompBuildParameters::SetGenerateClusterProbeSampleOffsets


public: void SetGenerateClusterProbeSampleOffsets
(
    bool b
)


Whether to generate per cluster offsets for sampling probes.


virtual void Enlighten::IPrecompBuildParameters::SetHQVisWeight


public: void SetHQVisWeight
(
    float v
)


High quality clustering visibility weighting.

A value of 0 means that only position information is used for clustering, a value of 1 means only visibility information is used. Generally, a value close to 1 should be used..


virtual void Enlighten::IPrecompBuildParameters::SetImportance


public: void SetImportance
(
    float s
)


A relative importance multiplier for this system in the global light transport step.

The default value is 1.0. Higher values should only be used for area light geometry in its own dedicated system (which is known to be a bright source of illumination at precompute time). Setting a high importance will ensure that the area light geometry is retained during the light transport compression step. If you use a high importance multiplier, you should also ensure that area lights have as few clusters as possible.


virtual void Enlighten::IPrecompBuildParameters::SetIrradianceBudget


public: void SetIrradianceBudget
(
    Geo::s32 v
)


The number of form factors to store per irradiance output sample.


virtual void Enlighten::IPrecompBuildParameters::SetIrradiancePushOff


public: void SetIrradiancePushOff
(
    float v
)


Push off for irradiance form factor rays, in cm.


virtual void Enlighten::IPrecompBuildParameters::SetIrradianceQuality


public: void SetIrradianceQuality
(
    Geo::s32 v
)


The number of rays to cast for computing irradiance form factors.


virtual void Enlighten::IPrecompBuildParameters::SetITBudget


public: void SetITBudget
(
    Geo::s32 v
)


Maximum number of clustering iterations.


virtual void Enlighten::IPrecompBuildParameters::SetLCEpsilon


public: void SetLCEpsilon
(
    float v
)


Clustering iteration termination error threshold.


virtual void Enlighten::IPrecompBuildParameters::SetMaxSamples


public: void SetMaxSamples
(
    Geo::s32 max
)


Maximum number of input samples for a system.


virtual void Enlighten::IPrecompBuildParameters::SetMaxSolutionSize


public: void SetMaxSolutionSize
(
    Geo::s32 x,
    Geo::s32 y
)


The maximum size of an output system, in pixels.


virtual void Enlighten::IPrecompBuildParameters::SetMinSamples


public: void SetMinSamples
(
    Geo::s32 min
)


Minimum number of input samples for a system.


virtual void Enlighten::IPrecompBuildParameters::SetMinSolutionSize


public: void SetMinSolutionSize
(
    Geo::s32 x,
    Geo::s32 y
)


The minimum size of an output system, in pixels.


virtual void Enlighten::IPrecompBuildParameters::SetModellingTolerance


public: void SetModellingTolerance
(
    float v
)


Radius controlling how close ray origins can be to other geometry, in cm.


virtual void Enlighten::IPrecompBuildParameters::SetNSBudget


public: void SetNSBudget
(
    Geo::s32 v
)


Number of per-triangle visibility samples to use for computing triangle visibility and input sample visibility.

These visibilities are used by the clustering metric, triangle and input sample culling.


virtual void Enlighten::IPrecompBuildParameters::SetNumTerrainLODLevels


public: void SetNumTerrainLODLevels
(
    Geo::s32 v
)


If terrain LODs are being generated, specifies how many LODs to generate.


virtual void Enlighten::IPrecompBuildParameters::SetPixelStitching


public: void SetPixelStitching
(
    bool b
)


Whether to use pixel stitching.


virtual void Enlighten::IPrecompBuildParameters::SetPixelStitchingNormalDotProduct


public: void SetPixelStitchingNormalDotProduct
(
    float v
)


Maximum dot product of normals for pixels to be stitchable.


virtual void Enlighten::IPrecompBuildParameters::SetRequiresTerrainLODs


public: void SetRequiresTerrainLODs
(
    bool b
)


Whether to create "terrain" LODs.


virtual void Enlighten::IPrecompBuildParameters::SetRequiresTerrainPackingPadding


public: void SetRequiresTerrainPackingPadding
(
    bool b
)


If terrain LODs are being generated, specifies whether half a pixel padding should be added to final terrain system atlas.

Setting to false enables world-space packing.


virtual void Enlighten::IPrecompBuildParameters::SetSafe16BitClustering


public: void SetSafe16BitClustering
(
    bool v
)


Whether to enforce that clustering creates no more than 65535 clusters such that a cluster index will fit in an unsigned integer.


virtual void Enlighten::IPrecompBuildParameters::SetSampleCullingThreshold


public: void SetSampleCullingThreshold
(
    float v
)


Threshold controlling input (duster) sample culling behaviour.

If the visibility of the sample is less than this threshold the sample is culled. Visibility is defined as the fraction of visible front-faces over the number of samples used for visibility (NSBudget). A value of 0, turns off sample culling. A value of 1 rejects the sample if any back-face is visible.


virtual void Enlighten::IPrecompBuildParameters::SetSamplesPerCluster


public: void SetSamplesPerCluster
(
    Geo::s32 v
)


The number of input samples per cluster.


virtual void Enlighten::IPrecompBuildParameters::SetShadowFaces


public: void SetShadowFaces
(
    Geo::s32 shadowFaces
)


Deprecated ShadowFace API.

Which faces of the input geometry should block incoming light when calculating shadows for directional visibility. This is now a material setting, set on the m_ShadowfaceBehaviourType member of the Enlighten::PrecompMaterialInfo passed to IPrecompInputSystem::SetMaterialInfo(). To aid migration, values set with this deprecated API will be preferred over values set with the new material API. The default value is kShadowFaceUseMaterialAPI.


virtual void Enlighten::IPrecompBuildParameters::SetStitchingDistanceMultiplier


public: void SetStitchingDistanceMultiplier
(
    float v
)


Maximum distance between charts for them to be stitchable, as a multiple of output pixel size.


virtual void Enlighten::IPrecompBuildParameters::SetStitchingNormalDotProduct


public: void SetStitchingNormalDotProduct
(
    float v
)


Maximum dot product of normals for charts to be stitchable.


virtual void Enlighten::IPrecompBuildParameters::SetTriangleCullingThreshold


public: void SetTriangleCullingThreshold
(
    float v
)


Threshold controlling visibility-based cluster triangle culling behaviour.

If the visibility of the triangle is less than this threshold the triangle is rejected and not part of the clustering; thus it will get no input samples. Visibility is defined as the fraction of visible front-faces over the hemisphere of the cluster. A value of 0 turns off visibility-based cluster triangle culling. A value of 1 rejects the cluster triangle if any back-face is visible.


virtual void Enlighten::IPrecompBuildParameters::SetValidOverhangDistance


public: void SetValidOverhangDistance
(
    Geo::s32 v
)


The valid overhang distance for mesh projection.

Controls the number of pixels that detail charts should be allowed to overhang target charts before we consider the overhang to be 'naughty' and appear in the DoDebugColouring output. The default is 1 pixel. Zero or negative numbers are valid and imply no overhang is valid.


virtual void Enlighten::IPrecompBuildParameters::SetVerticalAxis


public: void SetVerticalAxis
(
    Enlighten::WorldAxis v
)


The axis aligned vector pointing directly upwards.


virtual void Enlighten::IPrecompBuildParameters::SetViewsDisabled


public: void SetViewsDisabled
(
    bool b
)


Whether to disable viewsets.


virtual void Enlighten::IPrecompBuildParameters::SetViewVoxelMultiplier


public: void SetViewVoxelMultiplier
(
    float v
)


Size of voxel grid to use for automatic viewsets, as a multiplier of (minimum) output pixel size.


virtual void Enlighten::IPrecompBuildParameters::SetVisibilityThreshold


public: void SetVisibilityThreshold
(
    float v
)


The error allowed for reducing the number of form factors for each spherical output sample.