From 88f3c8c49a1271aafd37e5e6a74844b4e58b3f85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Lam?= Date: Sun, 16 Jan 2022 15:16:46 +0100 Subject: [PATCH] Havok: Add hkpFixedRigidMotion --- lib/hkStubs/CMakeLists.txt | 1 + .../Motion/Rigid/hkpFixedRigidMotion.h | 20 +++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 lib/hkStubs/Havok/Physics2012/Dynamics/Motion/Rigid/hkpFixedRigidMotion.h diff --git a/lib/hkStubs/CMakeLists.txt b/lib/hkStubs/CMakeLists.txt index 0c36426e..ba563694 100644 --- a/lib/hkStubs/CMakeLists.txt +++ b/lib/hkStubs/CMakeLists.txt @@ -105,6 +105,7 @@ add_library(hkStubs OBJECT Havok/Physics2012/Dynamics/Entity/hkpRigidBodyCinfo.h Havok/Physics2012/Dynamics/Motion/hkpMotion.h Havok/Physics2012/Dynamics/Motion/Rigid/hkpBoxMotion.h + Havok/Physics2012/Dynamics/Motion/Rigid/hkpFixedRigidMotion.h Havok/Physics2012/Dynamics/Motion/Rigid/hkpKeyframedRigidMotion.h Havok/Physics2012/Dynamics/Motion/Rigid/hkpSphereMotion.h Havok/Physics2012/Dynamics/World/hkpPhysicsSystem.h diff --git a/lib/hkStubs/Havok/Physics2012/Dynamics/Motion/Rigid/hkpFixedRigidMotion.h b/lib/hkStubs/Havok/Physics2012/Dynamics/Motion/Rigid/hkpFixedRigidMotion.h new file mode 100644 index 00000000..23b5cb9e --- /dev/null +++ b/lib/hkStubs/Havok/Physics2012/Dynamics/Motion/Rigid/hkpFixedRigidMotion.h @@ -0,0 +1,20 @@ +#pragma once + +#include + +class hkpFixedRigidMotion : public hkpKeyframedRigidMotion { +public: + HK_DECLARE_CLASS_ALLOCATOR(hkpFixedRigidMotion) + HK_DECLARE_REFLECTION() + + hkpFixedRigidMotion(const hkVector4& position, const hkQuaternion& rotation); + explicit hkpFixedRigidMotion(hkFinishLoadedObjectFlag flag) : hkpKeyframedRigidMotion(flag) {} + + virtual void getPositionAndVelocities(hkpMotion* motionOut); + + void setStepPosition(hkReal position, hkReal timestep) override; + /// Asserts if called. Fixed rigid bodies do not move. + void setLinearVelocity(const hkVector4& newVel) override; + /// Asserts if called. Fixed rigid bodies do not move. + void setAngularVelocity(const hkVector4& newVel) override; +};