|
RavEngine
|
A particle system that uses the position based dynamics(PBD) solver. More...
#include <PxPBDParticleSystem.h>
Public Member Functions | |
| virtual void | setWind (const PxVec3 &wind)=0 |
| Set wind direction and intensity. | |
| virtual PxVec3 | getWind () const =0 |
| Retrieves the wind direction and intensity. | |
| virtual void | setFluidBoundaryDensityScale (PxReal fluidBoundaryDensityScale)=0 |
| Set the fluid boundary density scale. | |
| virtual PxReal | getFluidBoundaryDensityScale () const =0 |
| Return the fluid boundary density scale. | |
| virtual void | setFluidRestOffset (PxReal fluidRestOffset)=0 |
| Set the fluid rest offset. | |
| virtual PxReal | getFluidRestOffset () const =0 |
| Return the fluid rest offset. | |
| virtual void | setGridSizeX (PxU32 gridSizeX)=0 |
| Set the particle system grid size x dimension. | |
| virtual void | setGridSizeY (PxU32 gridSizeY)=0 |
| Set the particle system grid size y dimension. | |
| virtual void | setGridSizeZ (PxU32 gridSizeZ)=0 |
| Set the particle system grid size z dimension. | |
| virtual const char * | getConcreteTypeName () const PX_OVERRIDE |
| Returns string name of dynamic type. | |
Public Member Functions inherited from physx::PxParticleSystem | |
| virtual void | setSolverIterationCounts (PxU32 minPositionIters, PxU32 minVelocityIters=1)=0 |
| Sets the solver iteration counts for the body. | |
| virtual void | getSolverIterationCounts (PxU32 &minPositionIters, PxU32 &minVelocityIters) const =0 |
| Retrieves the solver iteration counts. | |
| virtual PxFilterData | getSimulationFilterData () const =0 |
| Retrieves the collision filter settings. | |
| virtual void | setSimulationFilterData (const PxFilterData &data)=0 |
| Set collision filter settings. | |
| virtual void | setParticleFlag (PxParticleFlag::Enum flag, bool val)=0 |
| Set particle flag. | |
| virtual void | setParticleFlags (PxParticleFlags flags)=0 |
| Set particle flags. | |
| virtual PxParticleFlags | getParticleFlags () const =0 |
| Retrieves the particle flags. | |
| virtual void | setMaxDepenetrationVelocity (PxReal maxDepenetrationVelocity)=0 |
| Set the maximal depenetration velocity particles can reach. | |
| virtual PxReal | getMaxDepenetrationVelocity ()=0 |
| Retrieves maximal depenetration velocity a particle can have. | |
| virtual void | setMaxVelocity (PxReal maxVelocity)=0 |
| Set the maximal velocity particles can reach. | |
| virtual PxReal | getMaxVelocity ()=0 |
| Retrieves maximal velocity a particle can have. | |
| virtual PxCudaContextManager * | getCudaContextManager () const =0 |
| Return the cuda context manager. | |
| virtual void | setRestOffset (PxReal restOffset)=0 |
| Set the rest offset for the collision between particles and rigids or soft bodies. | |
| virtual PxReal | getRestOffset () const =0 |
| Return the rest offset. | |
| virtual void | setContactOffset (PxReal contactOffset)=0 |
| Set the contact offset for the collision between particles and rigids or soft bodies. | |
| virtual PxReal | getContactOffset () const =0 |
| Return the contact offset. | |
| virtual void | setParticleContactOffset (PxReal particleContactOffset)=0 |
| Set the contact offset for the interactions between particles. | |
| virtual PxReal | getParticleContactOffset () const =0 |
| Return the particle contact offset. | |
| virtual void | setSolidRestOffset (PxReal solidRestOffset)=0 |
| Set the solid rest offset. | |
| virtual PxReal | getSolidRestOffset () const =0 |
| Return the solid rest offset. | |
| virtual void | addRigidAttachment (PxRigidActor *actor)=0 |
| Creates a rigid attachment between a particle and a rigid actor. | |
| virtual void | removeRigidAttachment (PxRigidActor *actor)=0 |
| Removes a rigid attachment between a particle and a rigid body. | |
| virtual void | enableCCD (bool enable)=0 |
| Enable continuous collision detection for particles. | |
| virtual PxU32 | createPhase (PxParticleMaterial *material, PxParticlePhaseFlags flags)=0 |
| Creates combined particle flag with particle material and particle phase flags. | |
| virtual PxU32 | getNbParticleMaterials () const =0 |
| Returns number of particle materials. | |
| virtual void | setParticleSystemCallback (PxParticleSystemCallback *callback)=0 |
| Sets a user notify object which receives special simulation events when they occur. | |
| virtual PxParticleSystemCallback * | getParticleSystemCallback () const =0 |
| Retrieves the simulationEventCallback pointer set with setSimulationEventCallback(). | |
| virtual void | setPeriodicBoundary (const PxVec3 &boundary)=0 |
| Sets periodic boundary wrap value. | |
| virtual PxVec3 | getPeriodicBoundary () const =0 |
| Gets periodic boundary wrap value. | |
| virtual void | addParticleBuffer (PxParticleBuffer *particleBuffer)=0 |
| Add an existing particle buffer to the particle system. | |
| virtual void | removeParticleBuffer (PxParticleBuffer *particleBuffer)=0 |
| Remove particle buffer from the particle system. | |
| virtual PxU32 | getGpuParticleSystemIndex ()=0 |
| Returns the GPU particle system index. | |
Public Member Functions inherited from physx::PxActor | |
| virtual void | release ()=0 |
| Deletes the actor. | |
| virtual PxActorType::Enum | getType () const =0 |
| Retrieves the type of actor. | |
| virtual PxScene * | getScene () const =0 |
| Retrieves the scene which this actor belongs to. | |
| virtual void | setName (const char *name)=0 |
| Sets a name string for the object that can be retrieved with getName(). | |
| virtual const char * | getName () const =0 |
| Retrieves the name string set with setName(). | |
| virtual PxBounds3 | getWorldBounds (float inflation=1.01f) const =0 |
| Retrieves the axis aligned bounding box enclosing the actor. | |
| virtual void | setActorFlag (PxActorFlag::Enum flag, bool value)=0 |
| Raises or clears a particular actor flag. | |
| virtual void | setActorFlags (PxActorFlags inFlags)=0 |
| Sets the actor flags. | |
| virtual PxActorFlags | getActorFlags () const =0 |
| Reads the PxActor flags. | |
| virtual void | setDominanceGroup (PxDominanceGroup dominanceGroup)=0 |
| Assigns dynamic actors a dominance group identifier. | |
| virtual PxDominanceGroup | getDominanceGroup () const =0 |
| Retrieves the value set with setDominanceGroup(). | |
| virtual void | setOwnerClient (PxClientID inClient)=0 |
| Sets the owner client of an actor. | |
| virtual PxClientID | getOwnerClient () const =0 |
| Returns the owner client that was specified at creation time. | |
| virtual PxAggregate * | getAggregate () const =0 |
| Retrieves the aggregate the actor might be a part of. | |
Public Member Functions inherited from physx::PxBase | |
| template<class T > | |
| T * | is () |
| template<class T > | |
| const T * | is () const |
| PX_FORCE_INLINE PxType | getConcreteType () const |
| Returns concrete type of object. | |
| PX_FORCE_INLINE void | setBaseFlag (PxBaseFlag::Enum flag, bool value) |
| Set PxBaseFlag | |
| PX_FORCE_INLINE void | setBaseFlags (PxBaseFlags inFlags) |
| Set PxBaseFlags | |
| PX_FORCE_INLINE PxBaseFlags | getBaseFlags () const |
| Returns PxBaseFlags. | |
| virtual bool | isReleasable () const |
| Whether the object is subordinate. | |
Protected Member Functions | |
| PX_INLINE | PxPBDParticleSystem (PxType concreteType, PxBaseFlags baseFlags) |
| PX_INLINE | PxPBDParticleSystem (PxBaseFlags baseFlags) |
| virtual bool | isKindOf (const char *name) const PX_OVERRIDE |
| Returns whether a given type name matches with the type of this instance. | |
Protected Member Functions inherited from physx::PxParticleSystem | |
| PX_INLINE | PxParticleSystem (PxType concreteType, PxBaseFlags baseFlags) |
| PX_INLINE | PxParticleSystem (PxBaseFlags baseFlags) |
Protected Member Functions inherited from physx::PxActor | |
| PX_INLINE | PxActor (PxType concreteType, PxBaseFlags baseFlags) |
| PX_INLINE | PxActor (PxBaseFlags baseFlags) |
Protected Member Functions inherited from physx::PxBase | |
| PX_INLINE | PxBase (PxType concreteType, PxBaseFlags baseFlags) |
| Constructor setting concrete type and base flags. | |
| PX_INLINE | PxBase (PxBaseFlags baseFlags) |
| Deserialization constructor setting base flags. | |
| virtual | ~PxBase () |
| Destructor. | |
| template<class T > | |
| bool | typeMatch () const |
Additional Inherited Members | |
Public Attributes inherited from physx::PxActor | |
| void * | userData |
| user can assign this to whatever, usually to create a 1:1 relationship with a user object. | |
Protected Attributes inherited from physx::PxBase | |
| PxType | mConcreteType |
| PxBaseFlags | mBaseFlags |
| PxU32 | mBuiltInRefCount |
A particle system that uses the position based dynamics(PBD) solver.
The position based dynamics solver for particle systems supports behaviors like fluid, cloth, inflatables etc.
|
inlinevirtual |
Returns string name of dynamic type.
Implements physx::PxBase.
|
pure virtual |
Return the fluid boundary density scale.
|
pure virtual |
|
pure virtual |
Retrieves the wind direction and intensity.
|
inlineprotectedvirtual |
Returns whether a given type name matches with the type of this instance.
Reimplemented from physx::PxParticleSystem.
|
pure virtual |
Set the fluid boundary density scale.
Defines how strong of a contribution the boundary (typically a rigid surface) should have on a fluid particle's density.
| [in] | fluidBoundaryDensityScale | Range: (0.0, 1.0) |
|
pure virtual |
Set the fluid rest offset.
Two fluid particles will come to rest at a distance equal to twice the fluidRestOffset value.
| [in] | fluidRestOffset | Range: (0, particleContactOffset) |
|
pure virtual |
Set the particle system grid size x dimension.
| [in] | gridSizeX | x dimension in the particle grid |
|
pure virtual |
Set the particle system grid size y dimension.
| [in] | gridSizeY | y dimension in the particle grid |
|
pure virtual |
Set the particle system grid size z dimension.
| [in] | gridSizeZ | z dimension in the particle grid |
|
pure virtual |
Set wind direction and intensity.
| [in] | wind | The wind direction and intensity |