13 void createCollision()
override;
14 void calcCollisionTransform()
override;
17 [[nodiscard]]
const EGG::Vector3f &getPosition()
const override {
22 f32 getCollisionRadius()
const override {
23 return m_bboxHalfSideLength + colRadiusAdditionalLength();
26 void initCollision()
override;
35 [[nodiscard]]
bool checkSpherePartial(f32 radius,
const EGG::Vector3f &pos,
38 [[nodiscard]]
bool checkSpherePartialPush(f32 radius,
const EGG::Vector3f &pos,
41 [[nodiscard]]
bool checkSphereFull(f32 radius,
const EGG::Vector3f &pos,
44 [[nodiscard]]
bool checkSphereFullPush(f32 radius,
const EGG::Vector3f &pos,
48 u32 timeOffset)
override;
49 [[nodiscard]]
bool checkPointCachedPartial(
const EGG::Vector3f &pos,
52 [[nodiscard]]
bool checkPointCachedPartialPush(
const EGG::Vector3f &pos,
57 [[nodiscard]]
bool checkPointCachedFullPush(
const EGG::Vector3f &pos,
60 [[nodiscard]]
bool checkSphereCachedPartial(f32 radius,
const EGG::Vector3f &pos,
63 [[nodiscard]]
bool checkSphereCachedPartialPush(f32 radius,
const EGG::Vector3f &pos,
66 [[nodiscard]]
bool checkSphereCachedFull(f32 radius,
const EGG::Vector3f &pos,
69 [[nodiscard]]
bool checkSphereCachedFullPush(f32 radius,
const EGG::Vector3f &pos,
73 virtual void update(
u32 timeOffset);
74 virtual void calcScale(
u32 timeOffset);
78 m_objColMgr->setMovingObjVel(v);
84 [[nodiscard]]
virtual f32 getScaleY(
u32 )
const {
89 [[nodiscard]]
virtual f32 colRadiusAdditionalLength()
const {
94 [[nodiscard]]
virtual bool shouldCheckColNoPush()
const {
99 [[nodiscard]]
virtual bool shouldCheckColPush()
const {
103 [[nodiscard]]
virtual bool checkCollision(f32 radius,
const EGG::Vector3f &pos,
106 [[nodiscard]]
virtual bool checkCollisionCached(f32 radius,
const EGG::Vector3f &pos,
113 f32 m_bboxHalfSideLength;
114 s32 m_lastMtxUpdateFrame;
115 s32 m_lastScaleUpdateFrame;