Public Member Functions | |
| BTCollisionStruct (void) | |
| void | Init (const AABoxClass &box, const Vector3 &move, const TriClass &tri, const Vector3 &trimove) |
| BTCollisionStruct (const OBBoxClass &box, const Vector3 &move, const TriClass &tri, const Vector3 &trimove) | |
| void | Reset (void) |
Public Attributes | |
| bool | StartBad |
| float | MaxFrac |
| int | AxisId |
| int | Side |
| int | Point |
| int | TestAxisId |
| int | TestSide |
| int | TestPoint |
| Vector3 | TestAxis |
| Vector3 | D |
| Vector3 | Move |
| float | AE [3][3] |
| float | AN [3] |
| Vector3 | AxE [3][3] |
| Vector3 | E [3] |
| Vector3 | N |
| Vector3 | FinalD |
| const AABoxClass * | Box |
| const TriClass * | Tri |
| const Vector3 * | BoxMove |
| const Vector3 * | TriMove |
| Vector3 | A [3] |
| const OBBoxClass & | Box |
| const TriClass & | Tri |
| const Vector3 & | BoxMove |
| const Vector3 & | TriMove |
BoxTriColStruct Scratchpad variables for the OBBox-Triangle collision detection functions. One instance of this structure will be used for all of the local variables and its pointer will be handed of to various inline functions for the axis tests. Note that much of the code needs the un-normalized triangle normal. For this reason, I have to compute N rather than copying it from the triangle. (commenting this to avoid re-generating a difficult to find bug that I had)
Note that the MaxFrac variable starts negative so that we can accept slightly negative fractions (interpenetrations). But we clamp the returned result to 0.0 so that we never allow an object to get more embedded, just to possibly break itself free if it is within the epsilon. This is important because sometimes objects seem to intersect simply due to floating point roundoff error...
Definition at line 123 of file colmathaabtri.cpp.
|
inline |
Definition at line 125 of file colmathaabtri.cpp.
|
inline |
Definition at line 139 of file colmathobbtri.cpp.
|
inline |
Definition at line 127 of file colmathaabtri.cpp.
|
inline |
Definition at line 148 of file colmathobbtri.cpp.
| Vector3 BTCollisionStruct::A[3] |
Definition at line 187 of file colmathobbtri.cpp.
| float BTCollisionStruct::AE |
Definition at line 163 of file colmathaabtri.cpp.
| float BTCollisionStruct::AN |
Definition at line 164 of file colmathaabtri.cpp.
| Vector3 BTCollisionStruct::AxE |
Definition at line 165 of file colmathaabtri.cpp.
| int BTCollisionStruct::AxisId |
Definition at line 152 of file colmathaabtri.cpp.
| const AABoxClass* BTCollisionStruct::Box |
Definition at line 171 of file colmathaabtri.cpp.
| const OBBoxClass& BTCollisionStruct::Box |
Definition at line 192 of file colmathobbtri.cpp.
| const Vector3* BTCollisionStruct::BoxMove |
Definition at line 173 of file colmathaabtri.cpp.
| const Vector3& BTCollisionStruct::BoxMove |
Definition at line 194 of file colmathobbtri.cpp.
| Vector3 BTCollisionStruct::D |
Definition at line 161 of file colmathaabtri.cpp.
| Vector3 BTCollisionStruct::E |
Definition at line 167 of file colmathaabtri.cpp.
| Vector3 BTCollisionStruct::FinalD |
Definition at line 169 of file colmathaabtri.cpp.
| float BTCollisionStruct::MaxFrac |
Definition at line 150 of file colmathaabtri.cpp.
| Vector3 BTCollisionStruct::Move |
Definition at line 162 of file colmathaabtri.cpp.
| Vector3 BTCollisionStruct::N |
Definition at line 168 of file colmathaabtri.cpp.
| int BTCollisionStruct::Point |
Definition at line 154 of file colmathaabtri.cpp.
| int BTCollisionStruct::Side |
Definition at line 153 of file colmathaabtri.cpp.
| bool BTCollisionStruct::StartBad |
Definition at line 149 of file colmathaabtri.cpp.
| Vector3 BTCollisionStruct::TestAxis |
Definition at line 159 of file colmathaabtri.cpp.
| int BTCollisionStruct::TestAxisId |
Definition at line 156 of file colmathaabtri.cpp.
| int BTCollisionStruct::TestPoint |
Definition at line 158 of file colmathaabtri.cpp.
| int BTCollisionStruct::TestSide |
Definition at line 157 of file colmathaabtri.cpp.
| const TriClass* BTCollisionStruct::Tri |
Definition at line 172 of file colmathaabtri.cpp.
| const TriClass& BTCollisionStruct::Tri |
Definition at line 193 of file colmathobbtri.cpp.
| const Vector3* BTCollisionStruct::TriMove |
Definition at line 174 of file colmathaabtri.cpp.
| const Vector3& BTCollisionStruct::TriMove |
Definition at line 195 of file colmathobbtri.cpp.