31 #ifndef PX_PHYSICS_NX_SCENEDESC 32 #define PX_PHYSICS_NX_SCENEDESC 105 eBUILD_DISABLED_COMMIT_DISABLED
176 eENABLE_ACTIVE_ACTORS = (1<<0),
190 eENABLE_CCD = (1<<1),
211 eDISABLE_CCD_RESWEEP = (1<<2),
220 eADAPTIVE_FORCE = (1<<3),
253 eENABLE_PCM = (1 << 6),
263 eDISABLE_CONTACT_REPORT_BUFFER_RESIZE = (1 << 7),
275 eDISABLE_CONTACT_CACHE = (1 << 8),
292 eREQUIRE_RW_LOCK = (1 << 9),
301 eENABLE_STABILIZATION = (1 << 10),
311 eENABLE_AVERAGE_POINT = (1 << 11),
325 eEXCLUDE_KINEMATICS_FROM_ACTIVE_ACTORS = (1 << 12),
333 eENABLE_GPU_DYNAMICS = (1 << 13),
356 eENABLE_ENHANCED_DETERMINISM = (1<<14),
372 eENABLE_FRICTION_EVERY_ITERATION = (1 << 15),
374 eMUTABLE_FLAGS = eENABLE_ACTIVE_ACTORS|eEXCLUDE_KINEMATICS_FROM_ACTIVE_ACTORS
433 maxNbStaticShapes (0),
434 maxNbDynamicShapes (0),
436 maxNbConstraints (0),
438 maxNbBroadPhaseOverlaps (0)
942 simulationEventCallback (NULL),
943 contactModifyCallback (NULL),
944 ccdContactModifyCallback (NULL),
946 filterShaderData (NULL),
947 filterShaderDataSize (0),
949 filterCallback (NULL),
955 broadPhaseCallback (NULL),
959 bounceThresholdVelocity (0.2f * scale.speed),
960 frictionOffsetThreshold (0.04f * scale.length),
961 ccdMaxSeparation (0.04f * scale.length),
962 solverOffsetSlop (0.0f),
966 cpuDispatcher (NULL),
967 gpuDispatcher (NULL),
971 dynamicTreeRebuildRateHint (100),
976 solverBatchSize (128),
978 nbContactDataBlocks (0),
979 maxNbContactDataBlocks (1<<16),
981 contactReportStreamBufferSize (8192),
983 wakeCounterResetValue (20.0f*0.02f),
985 gpuMaxNumPartitions (8),
986 gpuComputeVersion (0),
987 tolerancesScale (scale)
1042 #if PX_SUPPORT_GPU_PHYSX Definition: GuContactBuffer.h:37
const void * filterShaderData
Shared global filter data which will get passed into the filter shader.
Definition: PxSceneDesc.h:545
PxU32 solverBatchSize
Defines the number of actors required to spawn a separate rigid body solver island task chain...
Definition: PxSceneDesc.h:768
PxSolverType::Enum solverType
Selects the solver algorithm to use.
Definition: PxSceneDesc.h:639
Descriptor class for scenes. See PxScene.
Definition: PxSceneDesc.h:493
PX_INLINE bool isValid() const
Returns true if the descriptor is valid.
Definition: PxSceneDesc.h:996
Pruning structure used to accelerate scene queries.
Definition: PxSceneDesc.h:68
PxU32 patchStreamSize
Size of the contact patch stream buffer allocated in pinned host memory. This is double-buffered so t...
Definition: PxSceneDesc.h:466
PxFrictionType::Enum frictionType
Selects the friction algorithm to use for simulation.
Definition: PxSceneDesc.h:630
PxSceneQueryUpdateMode::Enum sceneQueryUpdateMode
Defines the scene query update mode. Default: PxSceneQueryUpdateMode::eBUILD_ENABLED_COMMIT_ENABLED.
Definition: PxSceneDesc.h:746
PxReal solverOffsetSlop
A slop value used to zero contact offsets from the body's COM on an axis if the offset along that axi...
Definition: PxSceneDesc.h:686
PxSceneFlags flags
Flags used to select scene options.
Definition: PxSceneDesc.h:693
PX_INLINE void setToDefault(const PxTolerancesScale &scale)
(re)sets the structure to the default.
Definition: PxSceneDesc.h:991
PxSceneLimits limits
Expected scene limits.
Definition: PxSceneDesc.h:618
PxU32 tempBufferCapacity
Capacity of temp buffer allocated in pinned host memory.
Definition: PxSceneDesc.h:464
Using a static AABB tree.
Definition: PxSceneDesc.h:74
Select default patch-friction model.
Definition: PxSceneDesc.h:129
float PxReal
Definition: PxSimpleTypes.h:78
PxSimulationFilterCallback * filterCallback
A custom collision filter callback which can be used to implement more complex filtering operations w...
Definition: PxSceneDesc.h:575
PxFilterFlags(* PxSimulationFilterShader)(PxFilterObjectAttributes attributes0, PxFilterData filterData0, PxFilterObjectAttributes attributes1, PxFilterData filterData1, PxPairFlags &pairFlags, const void *constantBlock, PxU32 constantBlockSize)
Filter shader to specify handling of collision pairs.
Definition: PxFiltering.h:589
Sizes of pre-allocated buffers use for GPU dynamics.
Definition: PxSceneDesc.h:460
PxU32 maxNbStaticShapes
Expected maximum number of static shapes.
Definition: PxSceneDesc.h:406
PxVec3 gravity
Gravity vector.
Definition: PxSceneDesc.h:507
PxU32 maxNbActors
Expected maximum number of actors.
Definition: PxSceneDesc.h:404
Enum for selecting the type of solver used for the simulation.
Definition: PxSceneDesc.h:144
PxU32 maxNbBroadPhaseOverlaps
Expected maximum number of broad-phase overlaps.
Definition: PxSceneDesc.h:411
Enable adaptive forces to accelerate convergence of the solver.
Definition: PxSceneDesc.h:220
flags for configuring properties of the scene
Definition: PxSceneDesc.h:160
PxContactModifyCallback * contactModifyCallback
Possible asynchronous callback for contact modification.
Definition: PxSceneDesc.h:525
Broad phase algorithm used in the simulation.
Definition: PxBroadPhase.h:66
PxCpuDispatcher * cpuDispatcher
The CPU task dispatcher for the scene.
Definition: PxSceneDesc.h:700
void * userData
Will be copied to PxScene::userData.
Definition: PxSceneDesc.h:753
PxPairFilteringMode::Enum kineKineFilteringMode
Filtering mode for kinematic-kinematic pairs in the broadphase.
Definition: PxSceneDesc.h:584
PxU32 gpuComputeVersion
Defines which compute version the GPU dynamics should target. DO NOT MODIFY.
Definition: PxSceneDesc.h:890
An interface class that the user can implement in order to receive simulation events.
Definition: PxSimulationEventCallback.h:793
PxU32 maxNbDynamicShapes
Expected maximum number of dynamic shapes.
Definition: PxSceneDesc.h:407
PxSimulationFilterShader filterShader
The custom filter shader to use for collision filtering.
Definition: PxSceneDesc.h:565
PxU32 contactReportStreamBufferSize
Size of the contact report stream (in bytes).
Definition: PxSceneDesc.h:836
Enum
Definition: PxSceneDesc.h:70
Both scene query build and commit are executed.
Definition: PxSceneDesc.h:103
PxU32 maxNbRegions
Expected maximum number of broad-phase regions.
Definition: PxSceneDesc.h:410
PxCCDContactModifyCallback * ccdContactModifyCallback
Possible asynchronous callback for contact modification.
Definition: PxSceneDesc.h:534
#define PX_DEPRECATED
Definition: PxPreprocessor.h:437
PxPairFilteringMode::Enum staticKineFilteringMode
Filtering mode for static-kinematic pairs in the broadphase.
Definition: PxSceneDesc.h:593
PxU32 gpuMaxNumPartitions
Limitation for the partitions in the GPU dynamics pipeline. This variable must be power of 2...
Definition: PxSceneDesc.h:885
PxFlags< PxSceneFlag::Enum, PxU32 > PxSceneFlags
collection of set bits defined in PxSceneFlag.
Definition: PxSceneDesc.h:384
Default Projected Gauss-Seidel iterative solver.
Definition: PxSceneDesc.h:148
PxReal wakeCounterResetValue
The wake counter reset value.
Definition: PxSceneDesc.h:861
Definition: PxFiltering.h:699
Enum
Definition: PxSceneDesc.h:127
PxgDynamicsMemoryConfig gpuDynamicsConfig
The pre-allocations performed in the GPU dynamics pipeline.
Definition: PxSceneDesc.h:877
Using a simple data structure.
Definition: PxSceneDesc.h:72
PxU32 ccdMaxPasses
Maximum number of CCD passes.
Definition: PxSceneDesc.h:849
PxU16 flags
a set of Px1DConstraintFlags
Definition: PxConstraintDesc.h:110
PxU32 heapCapacity
Initial capacity of the GPU and pinned host memory heaps. Additional memory will be allocated if more...
Definition: PxSceneDesc.h:468
PxGpuDispatcher * gpuDispatcher
The GPU task dispatcher for the scene.
Definition: PxSceneDesc.h:709
PxReal maxBiasCoefficient
The maximum bias coefficient used in the constraint solver.
Definition: PxSceneDesc.h:821
#define PX_MAX_F32
Definition: PxSimpleTypes.h:86
Enum
Definition: PxSceneDesc.h:146
#define PX_MAX_BOUNDS_EXTENTS
Definition: PxBounds3.h:46
PxU32 nbContactDataBlocks
Setting to define the number of 16K blocks that will be initially reserved to store contact...
Definition: PxSceneDesc.h:783
PxBroadPhaseType::Enum broadPhaseType
Selects the broad-phase algorithm to use.
Definition: PxSceneDesc.h:602
PX_INLINE PxSceneLimits()
constructor sets to default
Definition: PxSceneDesc.h:430
PxU32 dynamicTreeRebuildRateHint
Hint for how much work should be done per simulation frame to rebuild the pruning structure...
Definition: PxSceneDesc.h:740
PxU32 maxNbAggregates
Expected maximum number of aggregates.
Definition: PxSceneDesc.h:408
PxU32 maxNbConstraints
Expected maximum number of constraint shaders.
Definition: PxSceneDesc.h:409
PxU32 maxNbContactDataBlocks
Setting to define the maximum number of 16K blocks that can be allocated to store contact...
Definition: PxSceneDesc.h:803
Select one directional per-contact friction model.
Definition: PxSceneDesc.h:130
PxBroadPhaseCallback * broadPhaseCallback
Broad-phase callback.
Definition: PxSceneDesc.h:611
Enum
Definition: PxBroadPhase.h:68
PxPruningStructureType::Enum dynamicStructure
Defines the structure used to store dynamic objects.
Definition: PxSceneDesc.h:721
PX_INLINE PxSceneDesc(const PxTolerancesScale &scale)
constructor sets to default.
Definition: PxSceneDesc.h:940
Select two directional per-contact friction model.
Definition: PxSceneDesc.h:131
Class to define the scale at which simulation runs. Most simulation tolerances are calculated in term...
Definition: PxTolerancesScale.h:56
PxgDynamicsMemoryConfig()
Definition: PxSceneDesc.h:471
PxU32 contactBufferCapacity
Capacity of contact buffer allocated in GPU global memory.
Definition: PxSceneDesc.h:463
PxU32 maxNbBodies
Expected maximum number of dynamic rigid bodies.
Definition: PxSceneDesc.h:405
Class representing 3D range or axis aligned bounding box.
Definition: PxBounds3.h:58
Enum
Definition: PxSceneDesc.h:101
Filter callback to specify handling of collision pairs.
Definition: PxFiltering.h:617
Enables additional stabilization pass in solver.
Definition: PxSceneDesc.h:301
PxReal frictionOffsetThreshold
A threshold of contact separation distance used to decide if a contact point will experience friction...
Definition: PxSceneDesc.h:665
PxSimulationEventCallback * simulationEventCallback
Possible notification callback.
Definition: PxSceneDesc.h:516
PxReal ccdMaxSeparation
A threshold for speculative CCD. Used to control whether bias, restitution or a combination of the tw...
Definition: PxSceneDesc.h:676
PX_INLINE bool isValid() const
Returns true if the descriptor is valid.
Definition: PxSceneDesc.h:447
Class used to retrieve limits(e.g. maximum number of bodies) for a scene. The limits are used as a hi...
Definition: PxSceneDesc.h:401
PxU32 foundLostPairsCapacity
Capacity of found and lost buffers allocated in GPU global memory. This is used for the found/lost pa...
Definition: PxSceneDesc.h:469
PxU32 contactStreamSize
Size of contact stream buffer allocated in pinned host memory. This is double-buffered so total alloc...
Definition: PxSceneDesc.h:465
PxBounds3 sanityBounds
The bounds used to sanity check user-set positions of actors and articulation links.
Definition: PxSceneDesc.h:872
PX_CUDA_CALLABLE PX_FORCE_INLINE bool isValid() const
Definition: PxBounds3.h:467
Enum for selecting the friction algorithm used for simulation.
Definition: PxSceneDesc.h:125
PxU32 filterShaderDataSize
Size (in bytes) of the shared global filter data filterShaderData.
Definition: PxSceneDesc.h:554
PxU32 forceStreamCapacity
Capacity of force buffer allocated in pinned host memory.
Definition: PxSceneDesc.h:467
uint32_t PxU32
Definition: Px.h:48
Using a dynamic AABB tree.
Definition: PxSceneDesc.h:73
PxReal bounceThresholdVelocity
A contact with a relative velocity below this will not bounce. A typical value for simulation...
Definition: PxSceneDesc.h:650
Broad-phase callback to receive broad-phase related events.
Definition: PxBroadPhase.h:96
PX_INLINE void setToDefault()
(re)sets the structure to the default
Definition: PxSceneDesc.h:442
PxPruningStructureType::Enum staticStructure
Defines the structure used to store static objects.
Definition: PxSceneDesc.h:716
PxU32 constraintBufferCapacity
Capacity of constraint buffer allocated in GPU global memory.
Definition: PxSceneDesc.h:462
#define PX_INLINE
Definition: PxPreprocessor.h:349
Enum
Definition: PxFiltering.h:701
Enum
Definition: PxSceneDesc.h:162
Scene query update mode.
Definition: PxSceneDesc.h:99
3 Element vector class.
Definition: PxVec3.h:49
Scene query build only is executed.
Definition: PxSceneDesc.h:104