RavEngine
Loading...
Searching...
No Matches
physx::NpSceneAccessor Class Referenceabstract
Inheritance diagram for physx::NpSceneAccessor:
[legend]
Collaboration diagram for physx::NpSceneAccessor:
[legend]

Public Member Functions

virtual PxsSimulationController * getSimulationController ()=0
 
virtual void setActiveActors (PxActor **actors, PxU32 nbActors)=0
 
virtual PxActor ** getFrozenActors (PxU32 &nbActorsOut)=0
 
virtual void setFrozenActorFlag (const bool buildFrozenActors)=0
 
virtual void forceSceneQueryRebuild ()=0
 
virtual void frameEnd ()=0
 
- Public Member Functions inherited from physx::PxScene
virtual bool addArticulation (PxArticulationReducedCoordinate &articulation)=0
 Adds an articulation to this scene.
 
virtual void removeArticulation (PxArticulationReducedCoordinate &articulation, bool wakeOnLostTouch=true)=0
 Removes an articulation from this scene.
 
virtual bool addActor (PxActor &actor, const PxBVH *bvh=NULL)=0
 Adds an actor to this scene.
 
virtual bool addActors (PxActor *const *actors, PxU32 nbActors)=0
 Adds actors to this scene. Only supports actors of type PxRigidStatic and PxRigidDynamic.
 
virtual bool addActors (const PxPruningStructure &pruningStructure)=0
 Adds a pruning structure together with its actors to this scene. Only supports actors of type PxRigidStatic and PxRigidDynamic.
 
virtual void removeActor (PxActor &actor, bool wakeOnLostTouch=true)=0
 Removes an actor from this scene.
 
virtual void removeActors (PxActor *const *actors, PxU32 nbActors, bool wakeOnLostTouch=true)=0
 Removes actors from this scene. Only supports actors of type PxRigidStatic and PxRigidDynamic.
 
virtual bool addAggregate (PxAggregate &aggregate)=0
 Adds an aggregate to this scene.
 
virtual void removeAggregate (PxAggregate &aggregate, bool wakeOnLostTouch=true)=0
 Removes an aggregate from this scene.
 
virtual bool addCollection (const PxCollection &collection)=0
 Adds objects in the collection to this scene.
 
virtual PxU32 getNbActors (PxActorTypeFlags types) const =0
 Retrieve the number of actors of certain types in the scene. For supported types, see PxActorTypeFlags.
 
virtual PxU32 getActors (PxActorTypeFlags types, PxActor **userBuffer, PxU32 bufferSize, PxU32 startIndex=0) const =0
 Retrieve an array of all the actors of certain types in the scene. For supported types, see PxActorTypeFlags.
 
virtual PxActor ** getActiveActors (PxU32 &nbActorsOut)=0
 Queries the PxScene for a list of the PxActors whose transforms have been updated during the previous simulation step. Only includes actors of type PxRigidDynamic and PxArticulationLink.
 
virtual PxU32 getNbSoftBodies () const =0
 Retrieve the number of soft bodies in the scene.
 
virtual PxU32 getSoftBodies (PxSoftBody **userBuffer, PxU32 bufferSize, PxU32 startIndex=0) const =0
 Retrieve an array of all the soft bodies in the scene.
 
virtual PxU32 getNbParticleSystems (PxParticleSolverType::Enum type) const =0
 Retrieve the number of particle systems of the requested type in the scene.
 
virtual PxU32 getParticleSystems (PxParticleSolverType::Enum type, PxParticleSystem **userBuffer, PxU32 bufferSize, PxU32 startIndex=0) const =0
 Retrieve an array of all the particle systems of the requested type in the scene.
 
virtual PxU32 getNbFEMCloths () const =0
 Retrieve the number of FEM cloths in the scene.
 
virtual PxU32 getFEMCloths (PxFEMCloth **userBuffer, PxU32 bufferSize, PxU32 startIndex=0) const =0
 Retrieve an array of all the FEM cloths in the scene.
 
virtual PxU32 getNbHairSystems () const =0
 Retrieve the number of hair systems in the scene.
 
virtual PxU32 getHairSystems (PxHairSystem **userBuffer, PxU32 bufferSize, PxU32 startIndex=0) const =0
 Retrieve an array of all the hair systems in the scene.
 
virtual PxU32 getNbArticulations () const =0
 Returns the number of articulations in the scene.
 
virtual PxU32 getArticulations (PxArticulationReducedCoordinate **userBuffer, PxU32 bufferSize, PxU32 startIndex=0) const =0
 Retrieve all the articulations in the scene.
 
virtual PxU32 getNbConstraints () const =0
 Returns the number of constraint shaders in the scene.
 
virtual PxU32 getConstraints (PxConstraint **userBuffer, PxU32 bufferSize, PxU32 startIndex=0) const =0
 Retrieve all the constraint shaders in the scene.
 
virtual PxU32 getNbAggregates () const =0
 Returns the number of aggregates in the scene.
 
virtual PxU32 getAggregates (PxAggregate **userBuffer, PxU32 bufferSize, PxU32 startIndex=0) const =0
 Retrieve all the aggregates in the scene.
 
virtual void setDominanceGroupPair (PxDominanceGroup group1, PxDominanceGroup group2, const PxDominanceGroupPair &dominance)=0
 Specifies the dominance behavior of contacts between two actors with two certain dominance groups.
 
virtual PxDominanceGroupPair getDominanceGroupPair (PxDominanceGroup group1, PxDominanceGroup group2) const =0
 Samples the dominance matrix.
 
virtual PxCpuDispatcher * getCpuDispatcher () const =0
 Return the cpu dispatcher that was set in PxSceneDesc::cpuDispatcher when creating the scene with PxPhysics::createScene.
 
virtual PxCudaContextManager * getCudaContextManager () const =0
 Return the CUDA context manager that was set in PxSceneDesc::cudaContextManager when creating the scene with PxPhysics::createScene.
 
virtual PxClientID createClient ()=0
 Reserves a new client ID.
 
virtual void setSimulationEventCallback (PxSimulationEventCallback *callback)=0
 Sets a user notify object which receives special simulation events when they occur.
 
virtual PxSimulationEventCallback * getSimulationEventCallback () const =0
 Retrieves the simulationEventCallback pointer set with setSimulationEventCallback().
 
virtual void setContactModifyCallback (PxContactModifyCallback *callback)=0
 Sets a user callback object, which receives callbacks on all contacts generated for specified actors.
 
virtual void setCCDContactModifyCallback (PxCCDContactModifyCallback *callback)=0
 Sets a user callback object, which receives callbacks on all CCD contacts generated for specified actors.
 
virtual PxContactModifyCallback * getContactModifyCallback () const =0
 Retrieves the PxContactModifyCallback pointer set with setContactModifyCallback().
 
virtual PxCCDContactModifyCallback * getCCDContactModifyCallback () const =0
 Retrieves the PxCCDContactModifyCallback pointer set with setContactModifyCallback().
 
virtual void setBroadPhaseCallback (PxBroadPhaseCallback *callback)=0
 Sets a broad-phase user callback object.
 
virtual PxBroadPhaseCallback * getBroadPhaseCallback () const =0
 Retrieves the PxBroadPhaseCallback pointer set with setBroadPhaseCallback().
 
virtual void setFilterShaderData (const void *data, PxU32 dataSize)=0
 Sets the shared global filter data which will get passed into the filter shader.
 
virtual const void * getFilterShaderData () const =0
 Gets the shared global filter data in use for this scene.
 
virtual PxU32 getFilterShaderDataSize () const =0
 Gets the size of the shared global filter data (PxSceneDesc.filterShaderData)
 
virtual PxSimulationFilterShader getFilterShader () const =0
 Gets the custom collision filter shader in use for this scene.
 
virtual PxSimulationFilterCallback * getFilterCallback () const =0
 Gets the custom collision filter callback in use for this scene.
 
virtual bool resetFiltering (PxActor &actor)=0
 Marks the object to reset interactions and re-run collision filters in the next simulation step.
 
virtual bool resetFiltering (PxRigidActor &actor, PxShape *const *shapes, PxU32 shapeCount)=0
 Marks the object to reset interactions and re-run collision filters for specified shapes in the next simulation step.
 
virtual PxPairFilteringMode::Enum getKinematicKinematicFilteringMode () const =0
 Gets the pair filtering mode for kinematic-kinematic pairs.
 
virtual PxPairFilteringMode::Enum getStaticKinematicFilteringMode () const =0
 Gets the pair filtering mode for static-kinematic pairs.
 
virtual bool simulate (PxReal elapsedTime, physx::PxBaseTask *completionTask=NULL, void *scratchMemBlock=0, PxU32 scratchMemBlockSize=0, bool controlSimulation=true)=0
 Advances the simulation by an elapsedTime time.
 
virtual bool advance (physx::PxBaseTask *completionTask=0)=0
 Performs dynamics phase of the simulation pipeline.
 
virtual bool collide (PxReal elapsedTime, physx::PxBaseTask *completionTask=0, void *scratchMemBlock=0, PxU32 scratchMemBlockSize=0, bool controlSimulation=true)=0
 Performs collision detection for the scene over elapsedTime.
 
virtual bool checkResults (bool block=false)=0
 This checks to see if the simulation run has completed.
 
virtual bool fetchCollision (bool block=false)=0
 
virtual bool fetchResults (bool block=false, PxU32 *errorState=0)=0
 
virtual bool fetchResultsStart (const PxContactPairHeader *&contactPairs, PxU32 &nbContactPairs, bool block=false)=0
 
virtual void processCallbacks (physx::PxBaseTask *continuation)=0
 
virtual void fetchResultsFinish (PxU32 *errorState=0)=0
 
virtual void fetchResultsParticleSystem ()=0
 
virtual void flushSimulation (bool sendPendingReports=false)=0
 Clear internal buffers and free memory.
 
virtual void setGravity (const PxVec3 &vec)=0
 Sets a constant gravity for the entire scene.
 
virtual PxVec3 getGravity () const =0
 Retrieves the current gravity setting.
 
virtual void setBounceThresholdVelocity (const PxReal t)=0
 Set the bounce threshold velocity. Collision speeds below this threshold will not cause a bounce.
 
virtual PxReal getBounceThresholdVelocity () const =0
 Return the bounce threshold velocity.
 
virtual void setCCDMaxPasses (PxU32 ccdMaxPasses)=0
 Sets the maximum number of CCD passes.
 
virtual PxU32 getCCDMaxPasses () const =0
 Gets the maximum number of CCD passes.
 
virtual void setCCDMaxSeparation (const PxReal t)=0
 Set the maximum CCD separation.
 
virtual PxReal getCCDMaxSeparation () const =0
 Gets the maximum CCD separation.
 
virtual void setCCDThreshold (const PxReal t)=0
 Set the CCD threshold.
 
virtual PxReal getCCDThreshold () const =0
 Gets the CCD threshold.
 
virtual void setMaxBiasCoefficient (const PxReal t)=0
 Set the max bias coefficient.
 
virtual PxReal getMaxBiasCoefficient () const =0
 Gets the max bias coefficient.
 
virtual void setFrictionOffsetThreshold (const PxReal t)=0
 Set the friction offset threshold.
 
virtual PxReal getFrictionOffsetThreshold () const =0
 Gets the friction offset threshold.
 
virtual void setFrictionCorrelationDistance (const PxReal t)=0
 Set the friction correlation distance.
 
virtual PxReal getFrictionCorrelationDistance () const =0
 Gets the friction correlation distance.
 
virtual PxFrictionType::Enum getFrictionType () const =0
 Return the friction model.
 
virtual PxSolverType::Enum getSolverType () const =0
 Return the solver model.
 
virtual bool setVisualizationParameter (PxVisualizationParameter::Enum param, PxReal value)=0
 Function that lets you set debug visualization parameters.
 
virtual PxReal getVisualizationParameter (PxVisualizationParameter::Enum paramEnum) const =0
 Function that lets you query debug visualization parameters.
 
virtual void setVisualizationCullingBox (const PxBounds3 &box)=0
 Defines a box in world space to which visualization geometry will be (conservatively) culled. Use a non-empty culling box to enable the feature, and an empty culling box to disable it.
 
virtual PxBounds3 getVisualizationCullingBox () const =0
 Retrieves the visualization culling box.
 
virtual const PxRenderBuffer & getRenderBuffer ()=0
 Retrieves the render buffer.
 
virtual void getSimulationStatistics (PxSimulationStatistics &stats) const =0
 Call this method to retrieve statistics for the current simulation step.
 
virtual PxBroadPhaseType::Enum getBroadPhaseType () const =0
 Returns broad-phase type.
 
virtual bool getBroadPhaseCaps (PxBroadPhaseCaps &caps) const =0
 Gets broad-phase caps.
 
virtual PxU32 getNbBroadPhaseRegions () const =0
 Returns number of regions currently registered in the broad-phase.
 
virtual PxU32 getBroadPhaseRegions (PxBroadPhaseRegionInfo *userBuffer, PxU32 bufferSize, PxU32 startIndex=0) const =0
 Gets broad-phase regions.
 
virtual PxU32 addBroadPhaseRegion (const PxBroadPhaseRegion &region, bool populateRegion=false)=0
 Adds a new broad-phase region.
 
virtual bool removeBroadPhaseRegion (PxU32 handle)=0
 Removes a new broad-phase region.
 
virtual PxTaskManager * getTaskManager () const =0
 Get the task manager associated with this scene.
 
virtual void lockRead (const char *file=NULL, PxU32 line=0)=0
 Lock the scene for reading from the calling thread.
 
virtual void unlockRead ()=0
 Unlock the scene from reading.
 
virtual void lockWrite (const char *file=NULL, PxU32 line=0)=0
 Lock the scene for writing from this thread.
 
virtual void unlockWrite ()=0
 Unlock the scene from writing.
 
virtual void setNbContactDataBlocks (PxU32 numBlocks)=0
 set the cache blocks that can be used during simulate().
 
virtual PxU32 getNbContactDataBlocksUsed () const =0
 get the number of cache blocks currently used by the scene
 
virtual PxU32 getMaxNbContactDataBlocksUsed () const =0
 get the maximum number of cache blocks used by the scene
 
virtual PxU32 getContactReportStreamBufferSize () const =0
 Return the value of PxSceneDesc::contactReportStreamBufferSize that was set when creating the scene with PxPhysics::createScene.
 
virtual void setSolverBatchSize (PxU32 solverBatchSize)=0
 Sets the number of actors required to spawn a separate rigid body solver thread.
 
virtual PxU32 getSolverBatchSize () const =0
 Retrieves the number of actors required to spawn a separate rigid body solver thread.
 
virtual void setSolverArticulationBatchSize (PxU32 solverBatchSize)=0
 Sets the number of articulations required to spawn a separate rigid body solver thread.
 
virtual PxU32 getSolverArticulationBatchSize () const =0
 Retrieves the number of articulations required to spawn a separate rigid body solver thread.
 
virtual PxReal getWakeCounterResetValue () const =0
 Returns the wake counter reset value.
 
virtual void shiftOrigin (const PxVec3 &shift)=0
 Shift the scene origin by the specified vector.
 
virtual PxPvdSceneClient * getScenePvdClient ()=0
 Returns the Pvd client associated with the scene.
 
virtual void copyArticulationData (void *data, void *index, PxArticulationGpuDataType::Enum dataType, const PxU32 nbCopyArticulations, void *copyEvent=NULL)=0
 Copy GPU articulation data from the internal GPU buffer to a user-provided device buffer.
 
virtual void applyArticulationData (void *data, void *index, PxArticulationGpuDataType::Enum dataType, const PxU32 nbUpdatedArticulations, void *waitEvent=NULL, void *signalEvent=NULL)=0
 Apply GPU articulation data from a user-provided device buffer to the internal GPU buffer.
 
virtual void copySoftBodyData (void **data, void *dataSizes, void *softBodyIndices, PxSoftBodyDataFlag::Enum flag, const PxU32 nbCopySoftBodies, const PxU32 maxSize, void *copyEvent=NULL)=0
 Copy GPU softbody data from the internal GPU buffer to a user-provided device buffer.
 
virtual void applySoftBodyData (void **data, void *dataSizes, void *softBodyIndices, PxSoftBodyDataFlag::Enum flag, const PxU32 nbUpdatedSoftBodies, const PxU32 maxSize, void *applyEvent=NULL)=0
 Apply user-provided data to the internal softbody system.
 
virtual void copyContactData (void *data, const PxU32 maxContactPairs, void *numContactPairs, void *copyEvent=NULL)=0
 Copy contact data from the internal GPU buffer to a user-provided device buffer.
 
virtual void copyBodyData (PxGpuBodyData *data, PxGpuActorPair *index, const PxU32 nbCopyActors, void *copyEvent=NULL)=0
 Copy GPU rigid body data from the internal GPU buffer to a user-provided device buffer.
 
virtual void applyActorData (void *data, PxGpuActorPair *index, PxActorCacheFlag::Enum flag, const PxU32 nbUpdatedActors, void *waitEvent=NULL, void *signalEvent=NULL)=0
 Apply user-provided data to rigid body.
 
virtual void computeDenseJacobians (const PxIndexDataPair *indices, PxU32 nbIndices, void *computeEvent)=0
 Compute dense Jacobian matrices for specified articulations on the GPU.
 
virtual void computeGeneralizedMassMatrices (const PxIndexDataPair *indices, PxU32 nbIndices, void *computeEvent)=0
 Compute the joint-space inertia matrices that maps joint accelerations to joint forces: forces = M * accelerations on the GPU.
 
virtual void computeGeneralizedGravityForces (const PxIndexDataPair *indices, PxU32 nbIndices, void *computeEvent)=0
 Computes the joint DOF forces required to counteract gravitational forces for the given articulation pose.
 
virtual void computeCoriolisAndCentrifugalForces (const PxIndexDataPair *indices, PxU32 nbIndices, void *computeEvent)=0
 Computes the joint DOF forces required to counteract coriolis and centrifugal forces for the given articulation pose.
 
virtual PxgDynamicsMemoryConfig getGpuDynamicsConfig () const =0
 
virtual void applyParticleBufferData (const PxU32 *indices, const PxGpuParticleBufferIndexPair *bufferIndexPair, const PxParticleBufferFlags *flags, PxU32 nbUpdatedBuffers, void *waitEvent=NULL, void *signalEvent=NULL)=0
 Apply user-provided data to particle buffers.
 
virtual void release ()=0
 Deletes the scene.
 
virtual void setFlag (PxSceneFlag::Enum flag, bool value)=0
 Sets a scene flag. You can only set one flag at a time.
 
virtual PxSceneFlags getFlags () const =0
 Get the scene flags.
 
virtual void setLimits (const PxSceneLimits &limits)=0
 Set new scene limits.
 
virtual PxSceneLimits getLimits () const =0
 Get current scene limits.
 
virtual PxPhysics & getPhysics ()=0
 Call this method to retrieve the Physics SDK.
 
virtual PxU32 getTimestamp () const =0
 Retrieves the scene's internal timestamp, increased each time a simulation step is completed.
 
- Public Member Functions inherited from physx::PxSceneSQSystem
PX_FORCE_INLINE void setSceneQueryUpdateMode (PxSceneQueryUpdateMode::Enum updateMode)
 Sets scene query update mode.
 
PX_FORCE_INLINE PxSceneQueryUpdateMode::Enum getSceneQueryUpdateMode () const
 Gets scene query update mode.
 
PX_FORCE_INLINE PxU32 getSceneQueryStaticTimestamp () const
 Retrieves the scene's internal scene query timestamp, increased each time a change to the static scene query structure is performed.
 
PX_FORCE_INLINE void flushQueryUpdates ()
 Flushes any changes to the scene query representation.
 
PX_FORCE_INLINE void forceDynamicTreeRebuild (bool rebuildStaticStructure, bool rebuildDynamicStructure)
 Forces dynamic trees to be immediately rebuilt.
 
virtual PxPruningStructureType::Enum getStaticStructure () const =0
 Return the value of PxSceneQueryDesc::staticStructure that was set when creating the scene with PxPhysics::createScene.
 
virtual PxPruningStructureType::Enum getDynamicStructure () const =0
 Return the value of PxSceneQueryDesc::dynamicStructure that was set when creating the scene with PxPhysics::createScene.
 
virtual void sceneQueriesUpdate (PxBaseTask *completionTask=NULL, bool controlSimulation=true)=0
 Executes scene queries update tasks.
 
virtual bool checkQueries (bool block=false)=0
 This checks to see if the scene queries update has completed.
 
virtual bool fetchQueries (bool block=false)=0
 
- Public Member Functions inherited from physx::PxSceneQuerySystemBase
virtual void setDynamicTreeRebuildRateHint (PxU32 dynamicTreeRebuildRateHint)=0
 Sets the rebuild rate of the dynamic tree pruning structures.
 
virtual PxU32 getDynamicTreeRebuildRateHint () const =0
 Retrieves the rebuild rate of the dynamic tree pruning structures.
 
virtual void forceRebuildDynamicTree (PxU32 prunerIndex)=0
 Forces dynamic trees to be immediately rebuilt.
 
virtual void setUpdateMode (PxSceneQueryUpdateMode::Enum updateMode)=0
 Sets scene query update mode.
 
virtual PxSceneQueryUpdateMode::Enum getUpdateMode () const =0
 Gets scene query update mode.
 
virtual PxU32 getStaticTimestamp () const =0
 Retrieves the system's internal scene query timestamp, increased each time a change to the static scene query structure is performed.
 
virtual void flushUpdates ()=0
 Flushes any changes to the scene query representation.
 
virtual bool raycast (const PxVec3 &origin, const PxVec3 &unitDir, const PxReal distance, PxRaycastCallback &hitCall, PxHitFlags hitFlags=PxHitFlag::eDEFAULT, const PxQueryFilterData &filterData=PxQueryFilterData(), PxQueryFilterCallback *filterCall=NULL, const PxQueryCache *cache=NULL, PxGeometryQueryFlags queryFlags=PxGeometryQueryFlag::eDEFAULT) const =0
 Performs a raycast against objects in the scene, returns results in a PxRaycastBuffer object or via a custom user callback implementation inheriting from PxRaycastCallback.
 
virtual bool sweep (const PxGeometry &geometry, const PxTransform &pose, const PxVec3 &unitDir, const PxReal distance, PxSweepCallback &hitCall, PxHitFlags hitFlags=PxHitFlag::eDEFAULT, const PxQueryFilterData &filterData=PxQueryFilterData(), PxQueryFilterCallback *filterCall=NULL, const PxQueryCache *cache=NULL, const PxReal inflation=0.0f, PxGeometryQueryFlags queryFlags=PxGeometryQueryFlag::eDEFAULT) const =0
 Performs a sweep test against objects in the scene, returns results in a PxSweepBuffer object or via a custom user callback implementation inheriting from PxSweepCallback.
 
virtual bool overlap (const PxGeometry &geometry, const PxTransform &pose, PxOverlapCallback &hitCall, const PxQueryFilterData &filterData=PxQueryFilterData(), PxQueryFilterCallback *filterCall=NULL, const PxQueryCache *cache=NULL, PxGeometryQueryFlags queryFlags=PxGeometryQueryFlag::eDEFAULT) const =0
 Performs an overlap test of a given geometry against objects in the scene, returns results in a PxOverlapBuffer object or via a custom user callback implementation inheriting from PxOverlapCallback.
 

Additional Inherited Members

- Public Attributes inherited from physx::PxScene
void * userData
 user can assign this to whatever, usually to create a 1:1 relationship with a user object.
 
- Protected Member Functions inherited from physx::PxScene

The documentation for this class was generated from the following file: