class
VisibilitySettings
Visibility settings contains the parameters for how to compute the visibility of a scene and how to use it, both in the ReductionProcessor and the RemeshingProcessor. The visibility information is computed for each part of the mesh determined by the visibility from the selected SceneCamera objects. Cameras are selected using the CameraSelectionSetID. The visibility can be used to guide the reducer and/or texture coordinates generator (parameterizer) with the flags UseVisibilityWeightsInReducer respective UseVisibilityWeightsInTexcoordGenerator. There is also an option to completely throw away triangles that are deemed not visible, using the CullOccludedGeometry flag.
Properties
Property | Description |
CameraSelectionSetID | The ID of the selection set containing all the scene cameras used when computing visibility. If set to -1, all cameras in the scene will be used. If both selection set name and ID are set, the name will be used. |
CameraSelectionSetName | The name of the selection set containing all the scene cameras used when computing visibility. If set to null, all cameras in the scene will be used. If both selection set name and ID are set, the name will be used. |
ComputeVisibilityMode | Specifies the renderer type when computing visibility. |
ConservativeMode | If enabled, will compute the visibility conservatively - meaning that triangles that are visible will be tagged as visible but some non-visible triangles might also be tagged as visible. If this is turned off, then it is no longer guaranteed that all visible triangles are found - but more non-visible triangles will be identified as non-visible. |
CullOccludedGeometry | If set to true, geometry that is not visible will be removed. |
FillNonVisibleAreaThreshold | If a group of non-visible triangles (connected to visible triangles) has an area below the FillNonVisibleAreaThreshold - it will receive the same visibility as the neighboring visible triangles. Set to zero to skip filling nonvisible regions. |
ForceVisibilityCalculation | Set the ForceVisibilityCalculation if true, visibility weights will definitely be computed for the geometry, even if the visibility isn't specifically being used for reduction/materialLOD/culling according to the VisibilitySettings. |
OccluderSelectionSetID | The ID of the selection set containing all the scene meshes that should occlude the scene when calculating visibility. If set to -1, no occluders will be used. If both selection set name and ID are set, the name will be used. |
OccluderSelectionSetName | The name of the selection set containing all the scene meshes used when computing visibility. If set to null, no occluders in the scene will be used. If both selection set name and ID are set, the name will be used. |
RemoveTrianglesNotOccludingOtherTriangles | If enabled, will remove all the visible triangles that are not occluding any other triangle. It will also remove all non-visible triangles. |
UseBackfaceCulling | Set whether triangles should be regarded visible when viewed from the back. |
UseVisibilityWeightsInReducer | If set to true, visibility weights will be used in the reducer. |
UseVisibilityWeightsInTexcoordGenerator | If set to true, visibility weights will be used when generating new texture coordinates. |
VisibilityWeightsPower | Set how aggressively reducer should handle low visibility weights. |
Methods
Method | Description |
GetClass | Get the name of the VisibilitySettings class. |
GetErrorString | Returns a string describing the error that was found the last time ValidateSettings was performed. |
IsA | Returns true if VisibilitySettings is a or is a descendant of the class named as the type parameter. |
IsNull | Returns true if the VisibilitySettings object is invalid. |
ValidateSettings | Validates the current settings values. |
Static methods
Method | Description |
IsClassA | Returns true if the class is a or is a descendant of the class named as the type parameter. |
SafeCast | SafeCast makes sure the input object is of a class that can be cast into spVisibilitySettings, and if this is the case, returns the object cast into spVisibilitySettings. |
Properties details
CameraSelectionSetID
The ID of the selection set containing all the scene cameras used when computing visibility. If set to -1, all cameras in the scene will be used. If both selection set name and ID are set, the name will be used.
Syntax
SetCameraSelectionSetID parameters
Type | Name | Min | Max | Description |
rid | value | -1 | | The desired SelectionSetID value. |
GetCameraSelectionSetID return value
Type: rid
Default: -1
Syntax
SetCameraSelectionSetID parameters
Type | Name | Min | Max | Description |
rid | value | -1 | | The desired SelectionSetID value. |
GetCameraSelectionSetID return value
Type: rid
Default: -1
Syntax
SetCameraSelectionSetID parameters
Name | Type | Min | Max | Description |
value | int | -1 | | The desired SelectionSetID value. |
GetCameraSelectionSetID return value
Type: int
Default: -1
CameraSelectionSetName
The name of the selection set containing all the scene cameras used when computing visibility. If set to null, all cameras in the scene will be used. If both selection set name and ID are set, the name will be used.
Syntax
SetCameraSelectionSetName parameters
Type | Name | Min | Max | Description |
const char * | value | | | The desired SelectionSet name. |
GetCameraSelectionSetName return value
Type: spString
Default: nullptr
Syntax
SetCameraSelectionSetName parameters
Type | Name | Min | Max | Description |
string | value | | | The desired SelectionSet name. |
GetCameraSelectionSetName return value
Type: string
Default: null
Syntax
SetCameraSelectionSetName parameters
Name | Type | Min | Max | Description |
value | str | | | The desired SelectionSet name. |
GetCameraSelectionSetName return value
Type: str
Default: None
ComputeVisibilityMode
Specifies the renderer type when computing visibility.
Syntax
SetComputeVisibilityMode parameters
GetComputeVisibilityMode return value
Type: EComputeVisibilityMode
Default: DirectX
Key | Value | Comment |
DirectX | 0 | Use DirectX when computing visibility. |
Software | 1 | Use a software renderer when computing visibility. |
Syntax
SetComputeVisibilityMode parameters
GetComputeVisibilityMode return value
Type: ``````
Default: DirectX
Key | Value | Comment |
DirectX | 0 | Use DirectX when computing visibility. |
Software | 1 | Use a software renderer when computing visibility. |
Syntax
SetComputeVisibilityMode parameters
GetComputeVisibilityMode return value
Type: EComputeVisibilityMode
Default: DirectX
Key | Value | Comment |
EComputeVisibilityMode_DirectX | 0 | Use DirectX when computing visibility. |
EComputeVisibilityMode_Software | 1 | Use a software renderer when computing visibility. |
ConservativeMode
If enabled, will compute the visibility conservatively - meaning that triangles that are visible will be tagged as visible but some non-visible triangles might also be tagged as visible. If this is turned off, then it is no longer guaranteed that all visible triangles are found - but more non-visible triangles will be identified as non-visible.
Syntax
SetConservativeMode parameters
Type | Name | Min | Max | Description |
bool | value | | | The new ConservativeMode value. |
GetConservativeMode return value
Type: bool
Default: false
Syntax
SetConservativeMode parameters
Type | Name | Min | Max | Description |
bool | value | | | The new ConservativeMode value. |
GetConservativeMode return value
Type: bool
Default: false
Syntax
SetConservativeMode parameters
Name | Type | Min | Max | Description |
value | bool | | | The new ConservativeMode value. |
GetConservativeMode return value
Type: bool
Default: false
CullOccludedGeometry
If set to true, geometry that is not visible will be removed.
Syntax
SetCullOccludedGeometry parameters
Type | Name | Min | Max | Description |
bool | value | | | The new CullOccludedGeometry value. |
GetCullOccludedGeometry return value
Type: bool
Default: false
Syntax
SetCullOccludedGeometry parameters
Type | Name | Min | Max | Description |
bool | value | | | The new CullOccludedGeometry value. |
GetCullOccludedGeometry return value
Type: bool
Default: false
Syntax
SetCullOccludedGeometry parameters
Name | Type | Min | Max | Description |
value | bool | | | The new CullOccludedGeometry value. |
GetCullOccludedGeometry return value
Type: bool
Default: false
FillNonVisibleAreaThreshold
If a group of non-visible triangles (connected to visible triangles) has an area below the FillNonVisibleAreaThreshold - it will receive the same visibility as the neighboring visible triangles. Set to zero to skip filling nonvisible regions.
Syntax
SetFillNonVisibleAreaThreshold parameters
Type | Name | Min | Max | Description |
real | value | 0 | REAL_MAX | The new FillNonVisibleAreaThreshold value. |
GetFillNonVisibleAreaThreshold return value
Type: real
Default: 0.0
Syntax
SetFillNonVisibleAreaThreshold parameters
Type | Name | Min | Max | Description |
float | value | 0 | REAL_MAX | The new FillNonVisibleAreaThreshold value. |
GetFillNonVisibleAreaThreshold return value
Type: float
Default: 0.0
Syntax
SetFillNonVisibleAreaThreshold parameters
Name | Type | Min | Max | Description |
value | float | 0 | REAL_MAX | The new FillNonVisibleAreaThreshold value. |
GetFillNonVisibleAreaThreshold return value
Type: float
Default: 0.0
ForceVisibilityCalculation
Set the ForceVisibilityCalculation if true, visibility weights will definitely be computed for the geometry, even if the visibility isn't specifically being used for reduction/materialLOD/culling according to the VisibilitySettings.
Syntax
SetForceVisibilityCalculation parameters
Type | Name | Min | Max | Description |
bool | value | | | The new ForceVisibilityCalculation value. |
GetForceVisibilityCalculation return value
Type: bool
Default: false
Syntax
SetForceVisibilityCalculation parameters
Type | Name | Min | Max | Description |
bool | value | | | The new ForceVisibilityCalculation value. |
GetForceVisibilityCalculation return value
Type: bool
Default: false
Syntax
SetForceVisibilityCalculation parameters
Name | Type | Min | Max | Description |
value | bool | | | The new ForceVisibilityCalculation value. |
GetForceVisibilityCalculation return value
Type: bool
Default: false
OccluderSelectionSetID
The ID of the selection set containing all the scene meshes that should occlude the scene when calculating visibility. If set to -1, no occluders will be used. If both selection set name and ID are set, the name will be used.
Syntax
SetOccluderSelectionSetID parameters
Type | Name | Min | Max | Description |
rid | value | -1 | | The desired OccluderSelectionSetID value. |
GetOccluderSelectionSetID return value
Type: rid
Default: -1
Syntax
SetOccluderSelectionSetID parameters
Type | Name | Min | Max | Description |
rid | value | -1 | | The desired OccluderSelectionSetID value. |
GetOccluderSelectionSetID return value
Type: rid
Default: -1
Syntax
SetOccluderSelectionSetID parameters
Name | Type | Min | Max | Description |
value | int | -1 | | The desired OccluderSelectionSetID value. |
GetOccluderSelectionSetID return value
Type: int
Default: -1
OccluderSelectionSetName
The name of the selection set containing all the scene meshes used when computing visibility. If set to null, no occluders in the scene will be used. If both selection set name and ID are set, the name will be used.
Syntax
SetOccluderSelectionSetName parameters
Type | Name | Min | Max | Description |
const char * | value | | | The desired SelectionSet name. |
GetOccluderSelectionSetName return value
Type: spString
Default: nullptr
Syntax
SetOccluderSelectionSetName parameters
Type | Name | Min | Max | Description |
string | value | | | The desired SelectionSet name. |
GetOccluderSelectionSetName return value
Type: string
Default: null
Syntax
SetOccluderSelectionSetName parameters
Name | Type | Min | Max | Description |
value | str | | | The desired SelectionSet name. |
GetOccluderSelectionSetName return value
Type: str
Default: None
RemoveTrianglesNotOccludingOtherTriangles
If enabled, will remove all the visible triangles that are not occluding any other triangle. It will also remove all non-visible triangles.
Syntax
SetRemoveTrianglesNotOccludingOtherTriangles parameters
Type | Name | Min | Max | Description |
bool | value | | | The new RemoveTrianglesNotOccludingOtherTriangles value. |
GetRemoveTrianglesNotOccludingOtherTriangles return value
Type: bool
Default: false
Syntax
SetRemoveTrianglesNotOccludingOtherTriangles parameters
Type | Name | Min | Max | Description |
bool | value | | | The new RemoveTrianglesNotOccludingOtherTriangles value. |
GetRemoveTrianglesNotOccludingOtherTriangles return value
Type: bool
Default: false
Syntax
SetRemoveTrianglesNotOccludingOtherTriangles parameters
Name | Type | Min | Max | Description |
value | bool | | | The new RemoveTrianglesNotOccludingOtherTriangles value. |
GetRemoveTrianglesNotOccludingOtherTriangles return value
Type: bool
Default: false
UseBackfaceCulling
Set whether triangles should be regarded visible when viewed from the back.
Syntax
SetUseBackfaceCulling parameters
Type | Name | Min | Max | Description |
bool | value | | | The desired flag value. |
GetUseBackfaceCulling return value
Type: bool
Default: true
Syntax
SetUseBackfaceCulling parameters
Type | Name | Min | Max | Description |
bool | value | | | The desired flag value. |
GetUseBackfaceCulling return value
Type: bool
Default: true
Syntax
SetUseBackfaceCulling parameters
Name | Type | Min | Max | Description |
value | bool | | | The desired flag value. |
GetUseBackfaceCulling return value
Type: bool
Default: true
UseVisibilityWeightsInReducer
If set to true, visibility weights will be used in the reducer.
Syntax
SetUseVisibilityWeightsInReducer parameters
Type | Name | Min | Max | Description |
bool | value | | | The desired flag value. |
GetUseVisibilityWeightsInReducer return value
Type: bool
Default: false
Syntax
SetUseVisibilityWeightsInReducer parameters
Type | Name | Min | Max | Description |
bool | value | | | The desired flag value. |
GetUseVisibilityWeightsInReducer return value
Type: bool
Default: false
Syntax
SetUseVisibilityWeightsInReducer parameters
Name | Type | Min | Max | Description |
value | bool | | | The desired flag value. |
GetUseVisibilityWeightsInReducer return value
Type: bool
Default: false
UseVisibilityWeightsInTexcoordGenerator
If set to true, visibility weights will be used when generating new texture coordinates.
Syntax
SetUseVisibilityWeightsInTexcoordGenerator parameters
Type | Name | Min | Max | Description |
bool | value | | | The new UseVisibilityWeightsInTexcoordGenerator value. |
GetUseVisibilityWeightsInTexcoordGenerator return value
Type: bool
Default: false
Syntax
SetUseVisibilityWeightsInTexcoordGenerator parameters
Type | Name | Min | Max | Description |
bool | value | | | The new UseVisibilityWeightsInTexcoordGenerator value. |
GetUseVisibilityWeightsInTexcoordGenerator return value
Type: bool
Default: false
Syntax
SetUseVisibilityWeightsInTexcoordGenerator parameters
Name | Type | Min | Max | Description |
value | bool | | | The new UseVisibilityWeightsInTexcoordGenerator value. |
GetUseVisibilityWeightsInTexcoordGenerator return value
Type: bool
Default: false
VisibilityWeightsPower
Set how aggressively reducer should handle low visibility weights.
Syntax
SetVisibilityWeightsPower parameters
Type | Name | Min | Max | Description |
real | value | 0 | REAL_MAX | Power of influence (default 1.0). |
GetVisibilityWeightsPower return value
Type: real
Default: 1.0
Syntax
SetVisibilityWeightsPower parameters
Type | Name | Min | Max | Description |
float | value | 0 | REAL_MAX | Power of influence (default 1.0). |
GetVisibilityWeightsPower return value
Type: float
Default: 1.0
Syntax
SetVisibilityWeightsPower parameters
Name | Type | Min | Max | Description |
value | float | 0 | REAL_MAX | Power of influence (default 1.0). |
GetVisibilityWeightsPower return value
Type: float
Default: 1.0
Methods details
GetClass
Get the name of the VisibilitySettings class.
Syntax
Parameters
GetClass takes no parameters.
Return value
Type: spString
Syntax
Parameters
GetClass takes no parameters.
Return value
Type: string
Syntax
Parameters
GetClass takes no parameters.
Return value
Type: str
GetErrorString
Returns a string describing the error that was found the last time ValidateSettings was performed.
Syntax
Parameters
GetErrorString takes no parameters.
Return value
Type: spString
Syntax
Parameters
GetErrorString takes no parameters.
Return value
Type: string
Syntax
Parameters
GetErrorString takes no parameters.
Return value
Type: str
IsA
Returns true if VisibilitySettings is a or is a descendant of the class named as the type parameter.
Syntax
Parameters
Type | Name | Min | Max | Description |
const char * | type | | | Name of the class to check if VisibilitySettings is, or is a descendant of. |
Return value
Type: bool
Syntax
Parameters
Type | Name | Min | Max | Description |
string | type | | | Name of the class to check if VisibilitySettings is, or is a descendant of. |
Return value
Type: bool
Syntax
Parameters
Name | Type | Min | Max | Description |
type | str | | | Name of the class to check if VisibilitySettings is, or is a descendant of. |
Return value
Type: bool
IsNull
Returns true if the VisibilitySettings object is invalid.
Syntax
Parameters
IsNull takes no parameters.
Return value
Type: bool
Syntax
Parameters
IsNull takes no parameters.
Return value
Type: bool
Syntax
Parameters
IsNull takes no parameters.
Return value
Type: bool
ValidateSettings
Validates the current settings values.
Syntax
Parameters
ValidateSettings takes no parameters.
Return value
Type: bool
Syntax
Parameters
ValidateSettings takes no parameters.
Return value
Type: bool
Syntax
Parameters
ValidateSettings takes no parameters.
Return value
Type: bool
Static methods details
IsClassA
Returns true if the class is a or is a descendant of the class named as the type parameter.
Syntax
Parameters
Type | Name | Min | Max | Description |
const char * | type | | | Name of the class to check if the class is, or is a descendant of. |
Return value
Type: bool
Syntax
Parameters
Type | Name | Min | Max | Description |
string | type | | | Name of the class to check if the class is, or is a descendant of. |
Return value
Type: bool
Syntax
Parameters
Name | Type | Min | Max | Description |
type | str | | | Name of the class to check if the class is, or is a descendant of. |
Return value
Type: bool
SafeCast
SafeCast makes sure the input object is of a class that can be cast into spVisibilitySettings, and if this is the case, returns the object cast into spVisibilitySettings.
Syntax
Parameters
Type | Name | Min | Max | Description |
Object | object | | | Object to cast. |
Return value
Type: VisibilitySettings
Syntax
Parameters
Type | Name | Min | Max | Description |
Object | object | | | Object to cast. |
Return value
Type: VisibilitySettings
Syntax
Parameters
Name | Type | Min | Max | Description |
object | Object | | | Object to cast. |
Return value
Type: VisibilitySettings