RavEngine
Loading...
Searching...
No Matches
physx::ExtGpu::PxParticleRigidBufferHelper Class Referenceabstract

Helper class to manage PxParticleRigidDesc buffers used for communicating particle based rigids to PxPaticleSystem. More...

#include <PxParticleExt.h>

Inheritance diagram for physx::ExtGpu::PxParticleRigidBufferHelper:
[legend]

Public Member Functions

virtual void release ()=0
 
virtual PxU32 getMaxRigids () const =0
 
virtual PxU32 getNumRigids () const =0
 
virtual PxU32 getMaxParticles () const =0
 
virtual PxU32 getNumParticles () const =0
 
virtual void addRigid (const PxVec3 &translation, const PxQuat &rotation, const PxReal coefficient, const PxVec4 *localPositions, const PxVec4 *localNormals, PxU32 numParticles)=0
 Adds a rigid.
 
virtual PxParticleRigidDesc & getParticleRigidDesc ()=0
 Get the PxParticleRigidDesc for this buffer.
 

Detailed Description

Helper class to manage PxParticleRigidDesc buffers used for communicating particle based rigids to PxPaticleSystem.

Member Function Documentation

◆ addRigid()

virtual void physx::ExtGpu::PxParticleRigidBufferHelper::addRigid ( const PxVec3 &  translation,
const PxQuat &  rotation,
const PxReal  coefficient,
const PxVec4 *  localPositions,
const PxVec4 *  localNormals,
PxU32  numParticles 
)
pure virtual

Adds a rigid.

Parameters
[in]translationThe world-space location of the rigid.
[in]rotationThe world-space rotation of the rigid.
[in]coefficientThe stiffness of the rigid.
[in]localPositionsThe particle positions in local space.
[in]localNormalsThe surface normal for all the particles in local space. Each PxVec4 has the normal in the first 3 components and the SDF in the last component.
[in]numParticlesThe number of particles in this rigid.

Implemented in physx::ExtGpu::ParticleRigidBuffersImpl, and physx::ExtGpu::ParticleRigidBuffersImpl.

◆ getMaxParticles()

virtual PxU32 physx::ExtGpu::PxParticleRigidBufferHelper::getMaxParticles ( ) const
pure virtual
Returns
The maximum number of particles this PxParticleRigidBufferHelper instance can hold.

Implemented in physx::ExtGpu::ParticleRigidBuffersImpl, and physx::ExtGpu::ParticleRigidBuffersImpl.

◆ getMaxRigids()

virtual PxU32 physx::ExtGpu::PxParticleRigidBufferHelper::getMaxRigids ( ) const
pure virtual
Returns
The maximum number of rigids this PxParticleRigidBufferHelper instance can hold.

Implemented in physx::ExtGpu::ParticleRigidBuffersImpl, and physx::ExtGpu::ParticleRigidBuffersImpl.

◆ getNumParticles()

virtual PxU32 physx::ExtGpu::PxParticleRigidBufferHelper::getNumParticles ( ) const
pure virtual
Returns
The current number of particles in this PxParticleRigidBufferHelper instance.

Implemented in physx::ExtGpu::ParticleRigidBuffersImpl, and physx::ExtGpu::ParticleRigidBuffersImpl.

◆ getNumRigids()

virtual PxU32 physx::ExtGpu::PxParticleRigidBufferHelper::getNumRigids ( ) const
pure virtual
Returns
The current number of rigids in this PxParticleRigidBufferHelper instance.

Implemented in physx::ExtGpu::ParticleRigidBuffersImpl, and physx::ExtGpu::ParticleRigidBuffersImpl.

◆ getParticleRigidDesc()

virtual PxParticleRigidDesc & physx::ExtGpu::PxParticleRigidBufferHelper::getParticleRigidDesc ( )
pure virtual

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