Class representing the bounding volume hierarchy structure. More...
#include <PxBVHStructure.h>
Public Member Functions | |
virtual PxU32 | raycast (const PxVec3 &origin, const PxVec3 &unitDir, PxReal maxDist, PxU32 maxHits, PxU32 *PX_RESTRICT rayHits) const =0 |
Raycast test against a BVH structure. More... | |
virtual PxU32 | sweep (const PxBounds3 &aabb, const PxVec3 &unitDir, PxReal maxDist, PxU32 maxHits, PxU32 *PX_RESTRICT sweepHits) const =0 |
Sweep test against a BVH structure. More... | |
virtual PxU32 | overlap (const PxBounds3 &aabb, PxU32 maxHits, PxU32 *PX_RESTRICT overlapHits) const =0 |
AABB overlap test against a BVH structure. More... | |
virtual const PxBounds3 * | getBounds () const =0 |
Retrieve the bounds in the BVH. More... | |
virtual PxU32 | getNbBounds () const =0 |
Returns the number of bounds in the BVH. More... | |
virtual const char * | getConcreteTypeName () const |
Returns string name of dynamic type. More... | |
Public Member Functions inherited from PxBase | |
virtual void | release ()=0 |
Releases the PxBase instance, please check documentation of release in derived class. More... | |
template<class T > | |
T * | is () |
template<class T > | |
const T * | is () const |
PX_FORCE_INLINE PxType | getConcreteType () const |
Returns concrete type of object. More... | |
PX_FORCE_INLINE void | setBaseFlag (PxBaseFlag::Enum flag, bool value) |
Set PxBaseFlag. More... | |
PX_FORCE_INLINE void | setBaseFlags (PxBaseFlags inFlags) |
Set PxBaseFlags. More... | |
PX_FORCE_INLINE PxBaseFlags | getBaseFlags () const |
Returns PxBaseFlags. More... | |
virtual bool | isReleasable () const |
Whether the object is subordinate. More... | |
Protected Member Functions | |
PX_INLINE | PxBVHStructure (PxType concreteType, PxBaseFlags baseFlags) |
PX_INLINE | PxBVHStructure (PxBaseFlags baseFlags) |
virtual | ~PxBVHStructure () |
virtual bool | isKindOf (const char *name) const |
Returns whether a given type name matches with the type of this instance. More... | |
Protected Member Functions inherited from PxBase | |
PX_INLINE | PxBase (PxType concreteType, PxBaseFlags baseFlags) |
Constructor setting concrete type and base flags. More... | |
PX_INLINE | PxBase (PxBaseFlags baseFlags) |
Deserialization constructor setting base flags. More... | |
virtual | ~PxBase () |
Destructor. More... | |
template<class T > | |
bool | typeMatch () const |
Additional Inherited Members | |
Protected Attributes inherited from PxBase | |
PxType | mConcreteType |
PxBaseFlags | mBaseFlags |
Class representing the bounding volume hierarchy structure.
PxBVHStructure can be provided to PxScene::addActor. In this case the scene query pruning structure inside PhysX SDK will store/update one bound per actor. The scene queries against such an actor will query actor bounds and then make a local space query against the provided BVH structure, which is in actor's local space.
|
inlineprotected |
|
inlineprotected |
|
inlineprotectedvirtual |
|
pure virtual |
Retrieve the bounds in the BVH.
|
inlinevirtual |
Returns string name of dynamic type.
Implements PxBase.
|
pure virtual |
Returns the number of bounds in the BVH.
You can use getBounds() to retrieve the bounds.
|
inlineprotectedvirtual |
Returns whether a given type name matches with the type of this instance.
Reimplemented from PxBase.
References PxBase::isKindOf().
|
pure virtual |
AABB overlap test against a BVH structure.
[in] | aabb | The axis aligned bounding box |
[in] | maxHits | Max number of returned hits = size of 'overlapHits' buffer |
[out] | overlapHits | Overlap hits information, bounds indices |
|
pure virtual |
Raycast test against a BVH structure.
[in] | origin | The origin of the ray. |
[in] | unitDir | Normalized direction of the ray. |
[in] | maxDist | Maximum ray length, has to be in the [0, inf) range |
[in] | maxHits | Max number of returned hits = size of 'rayHits' buffer |
[out] | rayHits | Raycast hits information, bounds indices |
|
pure virtual |
Sweep test against a BVH structure.
[in] | aabb | The axis aligned bounding box to sweep |
[in] | unitDir | Normalized direction of the sweep. |
[in] | maxDist | Maximum sweep length, has to be in the [0, inf) range |
[in] | maxHits | Max number of returned hits = size of 'sweepHits' buffer |
[out] | sweepHits | Sweep hits information, bounds indices |