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

Public Member Functions

 PxsNphaseImplementationContext (PxsContext &context, IG::IslandSim *islandSim, PxVirtualAllocatorCallback *callback, PxU32 index=0)
 
virtual void destroy ()
 
virtual void updateContactManager (PxReal dt, bool hasBoundsArrayChanged, bool hasContactDistanceChanged, PxBaseTask *continuation, PxBaseTask *firstPassContinuation, Cm::FanoutTask *updateBoundAndShape)
 
virtual void postBroadPhaseUpdateContactManager (PxBaseTask *)
 
virtual void secondPassUpdateContactManager (PxReal dt, PxBaseTask *continuation)
 
virtual void registerContactManager (PxsContactManager *cm, Sc::ShapeInteraction *shapeInteraction, PxI32 touching, PxU32 numPatches)
 
virtual void unregisterContactManager (PxsContactManager *cm)
 
virtual void unregisterContactManagerFallback (PxsContactManager *cm, PxsContactManagerOutput *cmOutputs)
 
virtual void refreshContactManager (PxsContactManager *cm)
 
virtual void refreshContactManagerFallback (PxsContactManager *cm, PxsContactManagerOutput *cmOutputs)
 
virtual void registerShape (const PxNodeIndex &, const PxsShapeCore &, const PxU32, PxActor *, const bool)
 
virtual void unregisterShape (const PxsShapeCore &, const PxU32, const bool)
 
virtual void registerAggregate (const PxU32)
 
virtual void updateShapeMaterial (const PxsShapeCore &)
 
virtual void updateShapeContactOffset (const PxsShapeCore &)
 
virtual void registerMaterial (const PxsMaterialCore &)
 
virtual void updateMaterial (const PxsMaterialCore &)
 
virtual void unregisterMaterial (const PxsMaterialCore &)
 
virtual void registerMaterial (const PxsFEMSoftBodyMaterialCore &)
 
virtual void updateMaterial (const PxsFEMSoftBodyMaterialCore &)
 
virtual void unregisterMaterial (const PxsFEMSoftBodyMaterialCore &)
 
virtual void registerMaterial (const PxsFEMClothMaterialCore &)
 
virtual void updateMaterial (const PxsFEMClothMaterialCore &)
 
virtual void unregisterMaterial (const PxsFEMClothMaterialCore &)
 
virtual void registerMaterial (const PxsPBDMaterialCore &)
 
virtual void updateMaterial (const PxsPBDMaterialCore &)
 
virtual void unregisterMaterial (const PxsPBDMaterialCore &)
 
virtual void registerMaterial (const PxsFLIPMaterialCore &)
 
virtual void updateMaterial (const PxsFLIPMaterialCore &)
 
virtual void unregisterMaterial (const PxsFLIPMaterialCore &)
 
virtual void registerMaterial (const PxsMPMMaterialCore &)
 
virtual void updateMaterial (const PxsMPMMaterialCore &)
 
virtual void unregisterMaterial (const PxsMPMMaterialCore &)
 
virtual void registerMaterial (const PxsCustomMaterialCore &)
 
virtual void updateMaterial (const PxsCustomMaterialCore &)
 
virtual void unregisterMaterial (const PxsCustomMaterialCore &)
 
virtual void appendContactManagers ()
 
virtual void appendContactManagersFallback (PxsContactManagerOutput *cmOutputs)
 
virtual void removeContactManagersFallback (PxsContactManagerOutput *cmOutputs)
 
virtual void setContactModifyCallback (PxContactModifyCallback *callback)
 
virtual PxsContactManagerOutputIterator getContactManagerOutputs ()
 
virtual PxsContactManagerOutput & getNewContactManagerOutput (PxU32 npIndex)
 
virtual void acquireContext ()
 
virtual void releaseContext ()
 
virtual void preallocateNewBuffers (PxU32, PxU32)
 
virtual PxsContactManagerOutputCounts * getFoundPatchOutputCounts ()
 
virtual PxsContactManager ** getFoundPatchManagers ()
 
virtual PxU32 getNbFoundPatchManagers ()
 
void processContactManager (PxReal dt, PxsContactManagerOutput *cmOutputs, PxBaseTask *continuation)
 
void processContactManagerSecondPass (PxReal dt, PxBaseTask *continuation)
 
void fetchUpdateContactManager ()
 
void appendNewLostPairs ()
 
void startNarrowPhaseTasks ()
 
virtual void lock ()
 
virtual void unlock ()
 
virtual Sc::ShapeInteraction ** getShapeInteractions ()
 
virtual PxReal * getRestDistances ()
 
virtual PxsTorsionalFrictionData * getTorsionalData ()
 
virtual PxsContactManagerOutput * getGPUContactManagerOutputBase ()
 
virtual PxReal * getGPURestDistances ()
 
virtual Sc::ShapeInteraction ** getGPUShapeInteractions ()
 
virtual PxsTorsionalFrictionData * getGPUTorsionalData ()
 
- Public Member Functions inherited from physx::PxvNphaseImplementationContextUsableAsFallback
 PxvNphaseImplementationContextUsableAsFallback (PxsContext &context)
 
- Public Member Functions inherited from physx::PxvNphaseImplementationContext
 PxvNphaseImplementationContext (PxsContext &context)
 
virtual void waitForContactsReady ()
 

Static Public Member Functions

static PxsNphaseImplementationContext * create (PxsContext &context, IG::IslandSim *islandSim, PxVirtualAllocatorCallback *allocator)
 

Public Attributes

PxArray< PxU32 > mRemovedContactManagers
 
PxsContactManagers mNarrowPhasePairs
 
PxsContactManagers mNewNarrowPhasePairs
 
PxContactModifyCallback * mModifyCallback
 
IG::IslandSim * mIslandSim
 
PxMutex mContactManagerMutex
 
PxArray< PxsCMDiscreteUpdateTask * > mCmTasks
 
PxArray< PxsContactManagerOutputCounts > mCmFoundLostOutputCounts
 
PxArray< PxsContactManager * > mCmFoundLost
 

Additional Inherited Members

- Protected Attributes inherited from physx::PxvNphaseImplementationContext
PxsContext & mContext
 

Member Function Documentation

◆ acquireContext()

virtual void physx::PxsNphaseImplementationContext::acquireContext ( )
inlinevirtual

◆ appendContactManagers()

void PxsNphaseImplementationContext::appendContactManagers ( )
virtual

◆ appendContactManagersFallback()

void PxsNphaseImplementationContext::appendContactManagersFallback ( PxsContactManagerOutput *  cmOutputs)
virtual

◆ destroy()

void PxsNphaseImplementationContext::destroy ( )
virtual

◆ fetchUpdateContactManager()

void physx::PxsNphaseImplementationContext::fetchUpdateContactManager ( )
inlinevirtual

◆ getContactManagerOutputs()

PxsContactManagerOutputIterator PxsNphaseImplementationContext::getContactManagerOutputs ( )
virtual

◆ getFoundPatchManagers()

virtual PxsContactManager ** physx::PxsNphaseImplementationContext::getFoundPatchManagers ( )
inlinevirtual

◆ getFoundPatchOutputCounts()

virtual PxsContactManagerOutputCounts * physx::PxsNphaseImplementationContext::getFoundPatchOutputCounts ( )
inlinevirtual

◆ getGPUContactManagerOutputBase()

virtual PxsContactManagerOutput * physx::PxsNphaseImplementationContext::getGPUContactManagerOutputBase ( )
inlinevirtual

◆ getGPURestDistances()

virtual PxReal * physx::PxsNphaseImplementationContext::getGPURestDistances ( )
inlinevirtual

◆ getGPUShapeInteractions()

virtual Sc::ShapeInteraction ** physx::PxsNphaseImplementationContext::getGPUShapeInteractions ( )
inlinevirtual

◆ getGPUTorsionalData()

virtual PxsTorsionalFrictionData * physx::PxsNphaseImplementationContext::getGPUTorsionalData ( )
inlinevirtual

◆ getNbFoundPatchManagers()

virtual PxU32 physx::PxsNphaseImplementationContext::getNbFoundPatchManagers ( )
inlinevirtual

◆ getNewContactManagerOutput()

PxsContactManagerOutput & PxsNphaseImplementationContext::getNewContactManagerOutput ( PxU32  npIndex)
virtual

◆ getRestDistances()

virtual PxReal * physx::PxsNphaseImplementationContext::getRestDistances ( )
inlinevirtual

◆ getShapeInteractions()

virtual Sc::ShapeInteraction ** physx::PxsNphaseImplementationContext::getShapeInteractions ( )
inlinevirtual

◆ getTorsionalData()

virtual PxsTorsionalFrictionData * physx::PxsNphaseImplementationContext::getTorsionalData ( )
inlinevirtual

◆ lock()

virtual void physx::PxsNphaseImplementationContext::lock ( )
inlinevirtual

◆ postBroadPhaseUpdateContactManager()

virtual void physx::PxsNphaseImplementationContext::postBroadPhaseUpdateContactManager ( PxBaseTask *  )
inlinevirtual

◆ preallocateNewBuffers()

virtual void physx::PxsNphaseImplementationContext::preallocateNewBuffers ( PxU32  ,
PxU32   
)
inlinevirtual

◆ processContactManager()

void PxsNphaseImplementationContext::processContactManager ( PxReal  dt,
PxsContactManagerOutput *  cmOutputs,
PxBaseTask *  continuation 
)
virtual

◆ processContactManagerSecondPass()

void PxsNphaseImplementationContext::processContactManagerSecondPass ( PxReal  dt,
PxBaseTask *  continuation 
)
virtual

◆ refreshContactManager()

void PxsNphaseImplementationContext::refreshContactManager ( PxsContactManager *  cm)
virtual

◆ refreshContactManagerFallback()

void PxsNphaseImplementationContext::refreshContactManagerFallback ( PxsContactManager *  cm,
PxsContactManagerOutput *  cmOutputs 
)
virtual

◆ registerAggregate()

virtual void physx::PxsNphaseImplementationContext::registerAggregate ( const PxU32  )
inlinevirtual

◆ registerContactManager()

void PxsNphaseImplementationContext::registerContactManager ( PxsContactManager *  cm,
Sc::ShapeInteraction *  shapeInteraction,
PxI32  touching,
PxU32  numPatches 
)
virtual

◆ registerMaterial() [1/7]

virtual void physx::PxsNphaseImplementationContext::registerMaterial ( const PxsCustomMaterialCore &  )
inlinevirtual

◆ registerMaterial() [2/7]

virtual void physx::PxsNphaseImplementationContext::registerMaterial ( const PxsFEMClothMaterialCore &  )
inlinevirtual

◆ registerMaterial() [3/7]

virtual void physx::PxsNphaseImplementationContext::registerMaterial ( const PxsFEMSoftBodyMaterialCore &  )
inlinevirtual

◆ registerMaterial() [4/7]

virtual void physx::PxsNphaseImplementationContext::registerMaterial ( const PxsFLIPMaterialCore &  )
inlinevirtual

◆ registerMaterial() [5/7]

virtual void physx::PxsNphaseImplementationContext::registerMaterial ( const PxsMaterialCore &  )
inlinevirtual

◆ registerMaterial() [6/7]

virtual void physx::PxsNphaseImplementationContext::registerMaterial ( const PxsMPMMaterialCore &  )
inlinevirtual

◆ registerMaterial() [7/7]

virtual void physx::PxsNphaseImplementationContext::registerMaterial ( const PxsPBDMaterialCore &  )
inlinevirtual

◆ registerShape()

virtual void physx::PxsNphaseImplementationContext::registerShape ( const PxNodeIndex &  ,
const PxsShapeCore &  ,
const PxU32  ,
PxActor *  ,
const bool   
)
inlinevirtual

◆ releaseContext()

virtual void physx::PxsNphaseImplementationContext::releaseContext ( )
inlinevirtual

◆ removeContactManagersFallback()

void PxsNphaseImplementationContext::removeContactManagersFallback ( PxsContactManagerOutput *  cmOutputs)
virtual

◆ secondPassUpdateContactManager()

void PxsNphaseImplementationContext::secondPassUpdateContactManager ( PxReal  dt,
PxBaseTask *  continuation 
)
virtual

◆ setContactModifyCallback()

virtual void physx::PxsNphaseImplementationContext::setContactModifyCallback ( PxContactModifyCallback *  callback)
inlinevirtual

◆ startNarrowPhaseTasks()

void physx::PxsNphaseImplementationContext::startNarrowPhaseTasks ( )
inlinevirtual

◆ unlock()

virtual void physx::PxsNphaseImplementationContext::unlock ( )
inlinevirtual

◆ unregisterContactManager()

void PxsNphaseImplementationContext::unregisterContactManager ( PxsContactManager *  cm)
virtual

◆ unregisterContactManagerFallback()

void PxsNphaseImplementationContext::unregisterContactManagerFallback ( PxsContactManager *  cm,
PxsContactManagerOutput *  cmOutputs 
)
virtual

◆ unregisterMaterial() [1/7]

virtual void physx::PxsNphaseImplementationContext::unregisterMaterial ( const PxsCustomMaterialCore &  )
inlinevirtual

◆ unregisterMaterial() [2/7]

virtual void physx::PxsNphaseImplementationContext::unregisterMaterial ( const PxsFEMClothMaterialCore &  )
inlinevirtual

◆ unregisterMaterial() [3/7]

virtual void physx::PxsNphaseImplementationContext::unregisterMaterial ( const PxsFEMSoftBodyMaterialCore &  )
inlinevirtual

◆ unregisterMaterial() [4/7]

virtual void physx::PxsNphaseImplementationContext::unregisterMaterial ( const PxsFLIPMaterialCore &  )
inlinevirtual

◆ unregisterMaterial() [5/7]

virtual void physx::PxsNphaseImplementationContext::unregisterMaterial ( const PxsMaterialCore &  )
inlinevirtual

◆ unregisterMaterial() [6/7]

virtual void physx::PxsNphaseImplementationContext::unregisterMaterial ( const PxsMPMMaterialCore &  )
inlinevirtual

◆ unregisterMaterial() [7/7]

virtual void physx::PxsNphaseImplementationContext::unregisterMaterial ( const PxsPBDMaterialCore &  )
inlinevirtual

◆ unregisterShape()

virtual void physx::PxsNphaseImplementationContext::unregisterShape ( const PxsShapeCore &  ,
const PxU32  ,
const bool   
)
inlinevirtual

◆ updateContactManager()

void PxsNphaseImplementationContext::updateContactManager ( PxReal  dt,
bool  hasBoundsArrayChanged,
bool  hasContactDistanceChanged,
PxBaseTask *  continuation,
PxBaseTask *  firstPassContinuation,
Cm::FanoutTask *  updateBoundAndShape 
)
virtual

◆ updateMaterial() [1/7]

virtual void physx::PxsNphaseImplementationContext::updateMaterial ( const PxsCustomMaterialCore &  )
inlinevirtual

◆ updateMaterial() [2/7]

virtual void physx::PxsNphaseImplementationContext::updateMaterial ( const PxsFEMClothMaterialCore &  )
inlinevirtual

◆ updateMaterial() [3/7]

virtual void physx::PxsNphaseImplementationContext::updateMaterial ( const PxsFEMSoftBodyMaterialCore &  )
inlinevirtual

◆ updateMaterial() [4/7]

virtual void physx::PxsNphaseImplementationContext::updateMaterial ( const PxsFLIPMaterialCore &  )
inlinevirtual

◆ updateMaterial() [5/7]

virtual void physx::PxsNphaseImplementationContext::updateMaterial ( const PxsMaterialCore &  )
inlinevirtual

◆ updateMaterial() [6/7]

virtual void physx::PxsNphaseImplementationContext::updateMaterial ( const PxsMPMMaterialCore &  )
inlinevirtual

◆ updateMaterial() [7/7]

virtual void physx::PxsNphaseImplementationContext::updateMaterial ( const PxsPBDMaterialCore &  )
inlinevirtual

◆ updateShapeMaterial()

virtual void physx::PxsNphaseImplementationContext::updateShapeMaterial ( const PxsShapeCore &  )
inlinevirtual

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