29#ifndef SQ_COMPOUND_PRUNER_H
30#define SQ_COMPOUND_PRUNER_H
32#include "SqCompoundPruningPool.h"
33#include "GuSqInternal.h"
34#include "GuPrunerMergeData.h"
35#include "GuIncrementalAABBTree.h"
36#include "GuPruningPool.h"
37#include "foundation/PxHashMap.h"
38#include "foundation/PxArray.h"
46 typedef PxHashMap<PrunerCompoundId, Gu::PoolIndex> ActorIdPoolIndexMap;
47 typedef PxArray<PrunerCompoundId> PoolIndexActorIdMap;
60 DECLARE_BASE_PRUNER_API
78 virtual bool setTransform(Gu::PrunerHandle handle, PrunerCompoundId compoundId,
const PxTransform& transform);
79 virtual const PxTransform& getTransform(PrunerCompoundId compoundId)
const;
80 virtual void visualizeEx(
PxRenderOutput& out, PxU32 color,
bool drawStatic,
bool drawDynamic)
const;
85 void updateMainTreeNode(Gu::PoolIndex index);
96 mutable bool mDrawStatic;
97 mutable bool mDrawDynamic;
Represents a BVH.
Definition GuBVH.h:93
Definition GuIncrementalAABBTree.h:68
Definition GuIncrementalAABBTree.h:131
Definition GuBounds.h:115
Class representing 3D range or axis aligned bounding box.
Definition PxBounds3.h:58
Definition PxRenderOutput.h:50
3 Element vector class.
Definition PxVec3.h:50
Definition SqCompoundPruner.h:52
virtual DECLARE_BASE_PRUNER_API bool addCompound(Gu::PrunerHandle *results, const Gu::BVH &bvh, PrunerCompoundId compoundId, const PxTransform &transform, bool isDynamic, const Gu::PrunerPayload *data, const PxTransform *transforms)
Adds compound to the pruner.
Definition SqCompoundPruner.cpp:70
virtual bool raycast(const PxVec3 &origin, const PxVec3 &unitDir, PxReal &inOutDistance, CompoundPrunerRaycastCallback &, PxCompoundPrunerQueryFlags flags) const
Definition SqCompoundPruner.cpp:344
virtual bool addObject(PrunerCompoundId compoundId, Gu::PrunerHandle &result, const PxBounds3 &bounds, const Gu::PrunerPayload userData, const PxTransform &transform)
Adds object to the pruner.
Definition SqCompoundPruner.cpp:641
virtual const Gu::PrunerPayload & getPayloadData(Gu::PrunerHandle handle, PrunerCompoundId compoundId, Gu::PrunerPayloadData *data) const
Retrieves the object's payload and data associated with the handle.
Definition SqCompoundPruner.cpp:568
virtual void preallocate(PxU32 nbEntries)
Preallocate space.
Definition SqCompoundPruner.cpp:578
virtual bool removeCompound(PrunerCompoundId compoundId, Gu::PrunerPayloadRemovalCallback *removalCallback)
Definition SqCompoundPruner.cpp:132
virtual bool updateCompound(PrunerCompoundId compoundId, const PxTransform &transform)
Definition SqCompoundPruner.cpp:181
virtual void updateObjectAfterManualBoundsUpdates(PrunerCompoundId compoundId, const Gu::PrunerHandle handle)
Definition SqCompoundPruner.cpp:606
virtual void removeObject(PrunerCompoundId compoundId, const Gu::PrunerHandle handle, Gu::PrunerPayloadRemovalCallback *removalCallback)
Definition SqCompoundPruner.cpp:621
Definition SqCompoundPruningPool.h:75
Sorts an array of objects in ascending order, assuming that the predicate implements the < operator:
Definition PxBoxController.h:39
Definition GuPrunerPayload.h:55
Definition GuPrunerPayload.h:63
Definition GuPrunerPayload.h:43