PxSceneQueryDesc

Defined in include/PxSceneQueryDesc.h

class PxSceneQueryDesc

Descriptor class for scene query system.

See PxSceneQuerySystem.

Subclassed by PxSceneDesc

Public Functions

inline PxSceneQueryDesc()

constructor sets to default.

inline void setToDefault()

(re)sets the structure to the default.

inline bool isValid() const

Returns true if the descriptor is valid.

Returns

true if the current settings are valid.

Public Members

PxPruningStructureType::Enum staticStructure

Defines the structure used to store static objects (PxRigidStatic actors).

There are usually a lot more static actors than dynamic actors in a scene, so they are stored in a separate structure. The idea is that when dynamic actors move each frame, the static structure remains untouched and does not need updating.

Default: PxPruningStructureType::eDYNAMIC_AABB_TREE

PxPruningStructureType::Enum dynamicStructure

Defines the structure used to store dynamic objects (non-PxRigidStatic actors).

Default: PxPruningStructureType::eDYNAMIC_AABB_TREE

PxU32 dynamicTreeRebuildRateHint

Hint for how much work should be done per simulation frame to rebuild the pruning structures.

This parameter gives a hint on the distribution of the workload for rebuilding the dynamic AABB tree pruning structure PxPruningStructureType::eDYNAMIC_AABB_TREE. It specifies the desired number of simulation frames the rebuild process should take. Higher values will decrease the workload per frame but the pruning structure will get more and more outdated the longer the rebuild takes (which can make scene queries less efficient).

Range: [4, PX_MAX_U32)Default: 100

Note

Only used for PxPruningStructureType::eDYNAMIC_AABB_TREE pruning structures.

Note

Both staticStructure & dynamicStructure can use a PxPruningStructureType::eDYNAMIC_AABB_TREE, in which case this parameter is used for both.

Note

This parameter gives only a hint. The rebuild process might still take more or less time depending on the number of objects involved.

PxDynamicTreeSecondaryPruner::Enum dynamicTreeSecondaryPruner

Secondary pruner for dynamic tree.

This is used for PxPruningStructureType::eDYNAMIC_AABB_TREE structures, to control how objects added to the system at runtime are managed.

Default: PxDynamicTreeSecondaryPruner::eINCREMENTAL

Note

Both staticStructure & dynamicStructure can use a PxPruningStructureType::eDYNAMIC_AABB_TREE, in which case this parameter is used for both.

PxBVHBuildStrategy::Enum staticBVHBuildStrategy

Build strategy for PxSceneQueryDesc::staticStructure.

This parameter is used to refine / control the build strategy of PxSceneQueryDesc::staticStructure. This is only used with PxPruningStructureType::eDYNAMIC_AABB_TREE and PxPruningStructureType::eSTATIC_AABB_TREE.

Default: PxBVHBuildStrategy::eFAST

PxBVHBuildStrategy::Enum dynamicBVHBuildStrategy

Build strategy for PxSceneQueryDesc::dynamicStructure.

This parameter is used to refine / control the build strategy of PxSceneQueryDesc::dynamicStructure. This is only used with PxPruningStructureType::eDYNAMIC_AABB_TREE and PxPruningStructureType::eSTATIC_AABB_TREE.

Default: PxBVHBuildStrategy::eFAST

PxU32 staticNbObjectsPerNode

Number of objects per node for PxSceneQueryDesc::staticStructure.

This parameter is used to refine / control the number of objects per node for PxSceneQueryDesc::staticStructure. This is only used with PxPruningStructureType::eDYNAMIC_AABB_TREE and PxPruningStructureType::eSTATIC_AABB_TREE.

This parameter has an impact on how quickly the structure gets built, and on the per-frame cost of maintaining the structure. Increasing this value gives smaller AABB-trees that use less memory, are faster to build and update, but it can lead to slower queries.

Default: 4

PxU32 dynamicNbObjectsPerNode

Number of objects per node for PxSceneQueryDesc::dynamicStructure.

This parameter is used to refine / control the number of objects per node for PxSceneQueryDesc::dynamicStructure. This is only used with PxPruningStructureType::eDYNAMIC_AABB_TREE and PxPruningStructureType::eSTATIC_AABB_TREE.

This parameter has an impact on how quickly the structure gets built, and on the per-frame cost of maintaining the structure. Increasing this value gives smaller AABB-trees that use less memory, are faster to build and update, but it can lead to slower queries.

Default: 4

PxSceneQueryUpdateMode::Enum sceneQueryUpdateMode

Defines the scene query update mode.

Default: PxSceneQueryUpdateMode::eBUILD_ENABLED_COMMIT_ENABLED