|
| BrushT () |
| The default constructor. More...
|
|
void | CacheHullVerts () const |
|
void | CacheHullEdges () const |
|
void | TraceConvexSolid (const InternalTraceSolidT &TraceSolid, const Vector3dT &Start, const Vector3dT &Ray, unsigned long ClipMask, TraceResultT &Result) const |
| Traces the given convex polyhedron from Start along Ray (up to the input value of Result.Fraction) through the brush, and reports the first collision, if any. More...
|
|
void | TraceRay (const Vector3dT &Start, const Vector3dT &Ray, unsigned long ClipMask, TraceResultT &Result) const |
|
void | TraceBevelBB (const BoundingBox3dT &TraceBB, const Vector3dT &Start, const Vector3dT &Ray, unsigned long ClipMask, TraceResultT &Result) const |
|
|
CollisionModelStaticT * | Parent |
|
SideT * | Sides |
| The sides of the brush (i.e. the planes whose intersection forms the brush). This points into Parent->m_BrushSides, the array of all sides of the collision shape the brush is a part of. More...
|
|
unsigned long | NrOfSides |
| How many sides the brush has. More...
|
|
BoundingBox3dT | BB |
| The bounding box (of the vertices) of this brush. More...
|
|
unsigned long | Contents |
| The contents of this brush. More...
|
|
unsigned long | CheckCount |
| Used in order to avoid processing things twice. More...
|
|
unsigned long * | HullVerts |
| The union of the vertex indices of the sides of this brush (i.e. the unique vertices whose convex hull forms the brush), referring into the m_Vertices list. More...
|
|
unsigned long | NrOfHullVerts |
| The number of unique vertices (or rather, vertex indices). More...
|
|
EdgeT * | HullEdges |
| The unique edges of this brush (e.g. edge <A, B> is not stored again as edge <B, A>). More...
|
|
unsigned long | NrOfHullEdges |
| The number of unique edges (or rather, edge indices). More...
|
|
This class describes a brush (convex polyhedron) within a CollisionModelStaticT collision shape.
It is conceptually very similar to and has in fact been created from the Brush3T<double> class.
Brushes participate in traces (collision tests) and are exclusively used for volume contents tests.
Note that most members (all but CheckCount) could and should be declared "const" - if not for the assignment operator that is required when storing elements of this class in ArrayT<>s.