Definition at line 7 of file ObjectAurora.hh.
Public Member Functions | |
ObjectAurora (const System::MapdataGeoObj ¶ms) | |
void | init () override |
u32 | loadFlags () const override |
void | createCollision () override |
void | calcCollisionTransform () override |
f32 | getCollisionRadius () const override |
bool | checkPointPartial (const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfoPartial *pInfo, KCLTypeMask *pFlagsOut) override |
bool | checkPointPartialPush (const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfoPartial *pInfo, KCLTypeMask *pFlagsOut) override |
bool | checkPointFull (const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfo *pInfo, KCLTypeMask *pFlagsOut) override |
bool | checkPointFullPush (const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfo *pInfo, KCLTypeMask *pFlagsOut) override |
bool | checkSpherePartial (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfoPartial *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset) override |
bool | checkSpherePartialPush (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfoPartial *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset) override |
bool | checkSphereFull (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfo *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset) override |
bool | checkSphereFullPush (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfo *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset) override |
bool | checkPointCachedPartial (const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfoPartial *pInfo, KCLTypeMask *pFlagsOut) override |
bool | checkPointCachedPartialPush (const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfoPartial *pInfo, KCLTypeMask *pFlagsOut) override |
bool | checkPointCachedFull (const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfo *pInfo, KCLTypeMask *pFlagsOut) override |
bool | checkPointCachedFullPush (const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfo *pInfo, KCLTypeMask *pFlagsOut) override |
bool | checkSphereCachedPartial (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfoPartial *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset) override |
bool | checkSphereCachedPartialPush (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfoPartial *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset) override |
bool | checkSphereCachedFull (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfo *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset) override |
bool | checkSphereCachedFullPush (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfo *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset) override |
![]() | |
ObjectDrivable (const System::MapdataGeoObj ¶ms) | |
void | load () override |
f32 | getCollisionRadius () const override |
virtual void | initCollision () |
virtual void | loadAABB (f32 radius) |
virtual void | narrScLocal (f32, const EGG::Vector3f &, KCLTypeMask, u32) |
![]() | |
ObjectBase (const System::MapdataGeoObj ¶ms) | |
virtual void | calc () |
virtual void | calcModel () |
virtual const char * | getResources () const |
virtual void | loadGraphics () |
virtual void | loadAnims () |
virtual void | loadRail () |
virtual const char * | getKclName () const |
virtual const EGG::Vector3f & | getPosition () const |
ObjectId | id () const |
void | setPos (const EGG::Vector3f &pos) |
Private Member Functions | |
bool | checkSpherePartialImpl (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfoPartial *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset) |
bool | checkSpherePartialPushImpl (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfoPartial *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset) |
bool | checkSphereFullImpl (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfo *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset) |
bool | checkSphereFullPushImpl (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfo *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset) |
bool | checkSpherePartialImpl (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfoPartial *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset, bool push) |
Helper function which contains frequently re-used code. Behavior branches depending on whether it is a push (push entry in the CollisionDirector). | |
bool | checkSphereFullImpl (f32 radius, const EGG::Vector3f &v0, const EGG::Vector3f &v1, KCLTypeMask flags, CollisionInfo *pInfo, KCLTypeMask *pFlagsOut, u32 timeOffset, bool push) |
Helper function which contains frequently re-used code. Behavior branches depending on whether it is a push (push entry in the CollisionDirector). | |
bool | calcCollision (f32 radius, const EGG::Vector3f &vel, u32 time, EGG::Vector3f &v0, EGG::Vector3f &fnrm, f32 &dist) |
Calculates the sin-like collision of the wavy road. | |
Static Private Attributes | |
static constexpr EGG::Vector3f | COLLISION_SIZE = EGG::Vector3f(2000.0f, 2000.0f, 15000.0f) |
Additional Inherited Members | |
![]() | |
void | calcTransform () |
void | linkAnims (const std::span< const char * > &names, const std::span< Render::AnmType > types) |
void | setMatrixTangentTo (const EGG::Vector3f &up, const EGG::Vector3f &tangent) |
![]() | |
static EGG::Vector3f | RotateAxisAngle (f32 angle, const EGG::Vector3f &axis, const EGG::Vector3f &v1) |
static void | SetRotTangentHorizontal (EGG::Matrix34f &mat, const EGG::Vector3f &up, const EGG::Vector3f &tangent) |
static EGG::Vector3f | Interpolate (f32 t, const EGG::Vector3f &v0, const EGG::Vector3f &v1) |
![]() | |
Render::DrawMdl * | m_drawMdl |
Abstract::g3d::ResFile * | m_resFile |
ObjectId | m_id |
RailInterpolator * | m_railInterpolator |
BoxColUnit * | m_boxColUnit |
u16 | m_flags |
EGG::Vector3f | m_pos |
EGG::Vector3f | m_rot |
EGG::Vector3f | m_scale |
EGG::Matrix34f | m_transform |
const System::MapdataGeoObj * | m_mapObj |
|
0x807FAB58 |
Definition at line 10 of file ObjectAurora.cc.
|
nodiscardprivate0x807FB060 |
Calculates the sin-like collision of the wavy road.
It seems to be modeled as a quadratic chirp with a starting frequency of 1 and a max frequency of 4. The minimum frequency of 1 occurs 30s into the race, and the maximum frequency occurs 2min 13s into the race. The "observed" frequency is dependent on the player's velocity towards the wavy road as well.
Definition at line 280 of file ObjectAurora.cc.
|
overridevirtual0x807FB680 |
Implements Field::ObjectBase.
Definition at line 27 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB56C |
Implements Field::ObjectDrivable.
Definition at line 96 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB57C |
Implements Field::ObjectDrivable.
Definition at line 102 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB54C |
Implements Field::ObjectDrivable.
Definition at line 84 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB55C |
Implements Field::ObjectDrivable.
Definition at line 90 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB5BC |
Implements Field::ObjectDrivable.
Definition at line 47 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB5CC |
Implements Field::ObjectDrivable.
Definition at line 53 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB59C |
Implements Field::ObjectDrivable.
Definition at line 35 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB5AC |
Implements Field::ObjectDrivable.
Definition at line 41 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB544 |
Implements Field::ObjectDrivable.
Definition at line 122 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB548 |
Implements Field::ObjectDrivable.
Definition at line 129 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB53C |
Implements Field::ObjectDrivable.
Definition at line 108 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB540 |
Implements Field::ObjectDrivable.
Definition at line 115 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB594 |
Implements Field::ObjectDrivable.
Definition at line 72 of file ObjectAurora.cc.
|
nodiscardprivate0x807FBAC0 |
Definition at line 150 of file ObjectAurora.cc.
|
nodiscardprivate |
Helper function which contains frequently re-used code. Behavior branches depending on whether it is a push (push entry in the CollisionDirector).
push | Whether to push a collision entry |
Definition at line 220 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB598 |
Implements Field::ObjectDrivable.
Definition at line 78 of file ObjectAurora.cc.
|
nodiscardprivate0x807FBE6C |
Definition at line 156 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB58C |
Implements Field::ObjectDrivable.
Definition at line 59 of file ObjectAurora.cc.
|
nodiscardprivate0x807FB6D0 |
Definition at line 136 of file ObjectAurora.cc.
|
nodiscardprivate |
Helper function which contains frequently re-used code. Behavior branches depending on whether it is a push (push entry in the CollisionDirector).
push | Whether to push a collision entry |
Definition at line 165 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB590 |
Implements Field::ObjectDrivable.
Definition at line 65 of file ObjectAurora.cc.
|
nodiscardprivate0x807FB8B0 |
Definition at line 143 of file ObjectAurora.cc.
|
overridevirtual0x807FB684 |
Implements Field::ObjectBase.
Definition at line 24 of file ObjectAurora.cc.
|
overridevirtual0x807FB5DC |
Reimplemented from Field::ObjectBase.
Definition at line 30 of file ObjectAurora.cc.
|
overridevirtual0x807FABC4 |
Reimplemented from Field::ObjectBase.
Definition at line 16 of file ObjectAurora.cc.
|
nodiscardoverridevirtual0x807FB688 |
Reimplemented from Field::ObjectBase.
Definition at line 19 of file ObjectAurora.cc.
|
staticconstexprprivate |
Definition at line 84 of file ObjectAurora.hh.