#include <ObjectCollisionBase.hh>
The base class that all objects' collision inherits from.
Implementation is done via the GJK distance algorithm. https://en.wikipedia.org/wiki/Gilbert-Johnson-Keerthi_distance_algorithm
Definition at line 24 of file ObjectCollisionBase.hh.
Public Member Functions | |
| virtual void | transform (const EGG::Matrix34f &mat, const EGG::Vector3f &scale)=0 |
| virtual void | transform (const EGG::Matrix34f &mat, const EGG::Vector3f &scale, const EGG::Vector3f &speed)=0 |
| virtual const EGG::Vector3f & | getSupport (const EGG::Vector3f &v) const =0 |
| virtual f32 | getBoundingRadius () const =0 |
| bool | check (ObjectCollisionBase &rhs, EGG::Vector3f &distance) |
| const EGG::Vector3f & | translation () const |
Protected Attributes | |
| EGG::Vector3f | m_translation |
Private Member Functions | |
| bool | enclosesOrigin (const GJKState &state, u32 idx) const |
| void | FUN_808350e4 (GJKState &state, EGG::Vector3f &v) const |
| bool | getNearestSimplex (GJKState &state, EGG::Vector3f &v) const |
| void | getNearestPoint (GJKState &state, u32 idx, EGG::Vector3f &v0, EGG::Vector3f &v1) const |
| bool | FUN_808357e4 (const GJKState &state, u32 idx) const |
| bool | inSimplex (const GJKState &state, const EGG::Vector3f &v) const |
| void | getNearestPoint (const GJKState &state, u32 idx, EGG::Vector3f &v) const |
| void | calcSimplex (GJKState &state) const |
Private Attributes | |
| EGG::Vector3f | m_00 |
Static Private Attributes | |
| static std::array< std::array< f32, 4 >, 4 > | s_dotProductCache = {{}} |
|
private0x80835A8C |
Definition at line 227 of file ObjectCollisionBase.cc.
|
0x80834348 |
Definition at line 14 of file ObjectCollisionBase.cc.
|
private0x8083504C |
Definition at line 100 of file ObjectCollisionBase.cc.
|
private0x808350E4 |
Definition at line 112 of file ObjectCollisionBase.cc.
|
private0x808357E40x808359A4 |
Definition at line 179 of file ObjectCollisionBase.cc.
|
private0x80835F34 |
Definition at line 209 of file ObjectCollisionBase.cc.
|
private0x80835650 |
Definition at line 158 of file ObjectCollisionBase.cc.
|
private0x80835304 |
Definition at line 134 of file ObjectCollisionBase.cc.
|
private0x808358CC |
Definition at line 198 of file ObjectCollisionBase.cc.
|
inlinenodiscard0x80573520 |
Definition at line 40 of file ObjectCollisionBase.hh.
|
private |
Definition at line 57 of file ObjectCollisionBase.hh.
|
protected |
Definition at line 45 of file ObjectCollisionBase.hh.
|
staticprivate |
Definition at line 59 of file ObjectCollisionBase.hh.