ksys/phys: Add some ContactListener prerequisites

This commit is contained in:
Léo Lam
2022-03-01 16:55:34 +01:00
parent 7f52270cdd
commit 18d0c53293
12 changed files with 172 additions and 21 deletions
+1
View File
@@ -172,6 +172,7 @@ add_library(hkStubs OBJECT
Havok/Physics2012/Internal/Collide/Mopp/Code/hkpMoppCode.h
Havok/Physics2012/Utilities/CharacterControl/CharacterRigidBody/hkpCharacterRigidBody.h
Havok/Physics2012/Utilities/Collide/ShapeUtils/ShapeScaling/hkpShapeScalingUtility.h
Havok/Physics2012/Utilities/Dynamics/ScaleSystem/hkpSystemScalingUtility.h
Havok/Physics2012/Utilities/Serialize/hkpPhysicsData.h
@@ -187,6 +187,9 @@ public:
void setZ(hkSimdFloat32Parameter val) { setComponent(2, val); }
void setW(hkSimdFloat32Parameter val) { setComponent(3, val); }
HK_FORCE_INLINE void setInt24W(int value);
HK_FORCE_INLINE int getInt24W() const;
// ========== Load/store
template <int Constant>
@@ -510,6 +510,14 @@ inline hkSimdFloat32 hkVector4f::dot4xyz1(hkVector4fParameter a) const {
#endif
}
inline void hkVector4f::setInt24W(int value) {
reinterpret_cast<hkInt32*>(&v)[3] = hkInt32(value) | 0x3f000000;
}
inline int hkVector4f::getInt24W() const {
return reinterpret_cast<const hkInt32*>(&v)[3] & ~0x3f000000;
}
template <int Constant>
inline const hkVector4f& hkVector4f::getConstant() {
return reinterpret_cast<const hkVector4f&>(g_vectorfConstants[Constant]);
@@ -0,0 +1,12 @@
#pragma once
#include <Havok/Common/Base/hkBase.h>
// TODO
class hkpCharacterRigidBody {
public:
HK_DECLARE_CLASS_ALLOCATOR(hkpCharacterRigidBody)
static const int m_magicNumber = 0x008df4a7;
static const int m_notMagicNumber = 0x00fa2bb3;
};