29#ifndef GU_SWEEP_TESTS_H
30#define GU_SWEEP_TESTS_H
32#include "geometry/PxGeometry.h"
33#include "geometry/PxGeometryHit.h"
34#include "geometry/PxGeometryQueryContext.h"
38 class PxConvexMeshGeometry;
39 class PxCapsuleGeometry;
43 #define UNUSED_SWEEP_THREAD_CONTEXT NULL
59 #define GU_CAPSULE_SWEEP_FUNC_PARAMS const PxGeometry& geom, const PxTransform& pose, \
60 const PxCapsuleGeometry& capsuleGeom_, const PxTransform& capsulePose_, const Gu::Capsule& lss, \
61 const PxVec3& unitDir, PxReal distance, \
62 PxGeomSweepHit& sweepHit, const PxHitFlags hitFlags, PxReal inflation, PxSweepThreadContext* threadContext
65 #define GU_BOX_SWEEP_FUNC_PARAMS const PxGeometry& geom, const PxTransform& pose, \
66 const PxBoxGeometry& boxGeom_, const PxTransform& boxPose_, const Gu::Box& box, \
67 const PxVec3& unitDir, PxReal distance, \
68 PxGeomSweepHit& sweepHit, const PxHitFlags hitFlags, PxReal inflation, PxSweepThreadContext* threadContext
71 #define GU_CONVEX_SWEEP_FUNC_PARAMS const PxGeometry& geom, const PxTransform& pose, \
72 const PxConvexMeshGeometry& convexGeom, const PxTransform& convexPose, \
73 const PxVec3& unitDir, PxReal distance, \
74 PxGeomSweepHit& sweepHit, const PxHitFlags hitFlags, PxReal inflation, PxSweepThreadContext* threadContext
83 typedef bool (*SweepCapsuleFunc) (GU_CAPSULE_SWEEP_FUNC_PARAMS);
88 typedef bool (*SweepBoxFunc) (GU_BOX_SWEEP_FUNC_PARAMS);
93 typedef bool (*SweepConvexFunc) (GU_CONVEX_SWEEP_FUNC_PARAMS);
102 GeomSweepCapsuleTable capsuleMap;
103 GeomSweepCapsuleTable preciseCapsuleMap;
104 GeomSweepBoxTable boxMap;
105 GeomSweepBoxTable preciseBoxMap;
106 GeomSweepConvexTable convexMap;
125 #define GU_SWEEP_TRIANGLES_FUNC_PARAMS(x) PxU32 nbTris, const PxTriangle* triangles, bool doubleSided, \
126 const x& geom, const PxTransform& pose, \
127 const PxVec3& unitDir, const PxReal distance, \
128 PxGeomSweepHit& hit, const PxU32* cachedIndex, \
129 const PxReal inflation, PxHitFlags hitFlags
132 bool sweepBoxTriangles (GU_SWEEP_TRIANGLES_FUNC_PARAMS(
PxBoxGeometry));
133 bool sweepBoxTriangles_Precise (GU_SWEEP_TRIANGLES_FUNC_PARAMS(
PxBoxGeometry));
Class representing the geometry of a box.
Definition PxBoxGeometry.h:49
Class representing the geometry of a capsule.
Definition PxCapsuleGeometry.h:54
Sorts an array of objects in ascending order, assuming that the predicate implements the < operator:
Definition PxBoxController.h:39
Definition GuSweepTests.h:101
@ eGEOMETRY_COUNT
internal use only!
Definition PxGeometry.h:65