From c20142ab7b947f2ac3014b9a031ec1c4453568a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Lam?= Date: Wed, 19 Jan 2022 00:36:26 +0100 Subject: [PATCH] ksys/phys: Rename flag 0x80 to RigidBody::Flag::HighQualityCollidable --- src/KingSystem/Physics/RigidBody/physRigidBody.cpp | 6 +++--- src/KingSystem/Physics/RigidBody/physRigidBody.h | 3 ++- .../Physics/RigidBody/physRigidBodyMotionEntity.cpp | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/KingSystem/Physics/RigidBody/physRigidBody.cpp b/src/KingSystem/Physics/RigidBody/physRigidBody.cpp index 5b1a6dbb..46c87f0c 100644 --- a/src/KingSystem/Physics/RigidBody/physRigidBody.cpp +++ b/src/KingSystem/Physics/RigidBody/physRigidBody.cpp @@ -44,7 +44,7 @@ RigidBody::RigidBody(Type type, ContactLayerType layer_type, hkpRigidBody* hk_bo mHkBody->m_responseModifierFlags |= hkpResponseModifier::Flags::MASS_SCALING; } - mFlags.change(Flag::IsCharacterController, isCharacterControllerType()); + mFlags.change(Flag::HighQualityCollidable, isCharacterControllerType()); mFlags.change(Flag::IsSensor, layer_type == ContactLayerType::Sensor); mFlags.change(Flag::_10, a7); mFlags.set(Flag::_100); @@ -370,7 +370,7 @@ void RigidBody::updateCollidableQualityType(bool high_quality) { if (isCharacterControllerType()) { setCollidableQualityType(HK_COLLIDABLE_QUALITY_CHARACTER); - mFlags.set(Flag::IsCharacterController); + mFlags.set(Flag::HighQualityCollidable); return; } @@ -392,7 +392,7 @@ void RigidBody::updateCollidableQualityType(bool high_quality) { break; } - mFlags.change(Flag::IsCharacterController, high_quality); + mFlags.change(Flag::HighQualityCollidable, high_quality); } void RigidBody::setCollidableQualityType(hkpCollidableQualityType quality) { diff --git a/src/KingSystem/Physics/RigidBody/physRigidBody.h b/src/KingSystem/Physics/RigidBody/physRigidBody.h index 4b5c1b22..6ebf7042 100644 --- a/src/KingSystem/Physics/RigidBody/physRigidBody.h +++ b/src/KingSystem/Physics/RigidBody/physRigidBody.h @@ -54,7 +54,8 @@ public: _10 = 1 << 4, _20 = 1 << 5, _40 = 1 << 6, - IsCharacterController = 1 << 7, + /// Indicates whether the Havok collidable has been configured to use a higher quality type. + HighQualityCollidable = 1 << 7, _100 = 1 << 8, _200 = 1 << 9, _400 = 1 << 10, diff --git a/src/KingSystem/Physics/RigidBody/physRigidBodyMotionEntity.cpp b/src/KingSystem/Physics/RigidBody/physRigidBodyMotionEntity.cpp index 1ef30076..c0b7f8f5 100644 --- a/src/KingSystem/Physics/RigidBody/physRigidBodyMotionEntity.cpp +++ b/src/KingSystem/Physics/RigidBody/physRigidBodyMotionEntity.cpp @@ -525,7 +525,7 @@ void RigidBodyMotionEntity::updateRigidBodyMotionExceptState() { // Fix up pointers and invalidate cached info. switch (mBody->getMotionType()) { case MotionType::Dynamic: - getHkBody()->setQualityType(mBody->hasFlag(RigidBody::Flag::IsCharacterController) ? + getHkBody()->setQualityType(mBody->hasFlag(RigidBody::Flag::HighQualityCollidable) ? HK_COLLIDABLE_QUALITY_BULLET : HK_COLLIDABLE_QUALITY_DEBRIS); break; @@ -561,7 +561,7 @@ void RigidBodyMotionEntity::updateRigidBodyMotionExceptStateAndVel() { *getHkBody()->getMotion()->getMotionState() = state; getHkBody()->getMotion()->m_linearVelocity = linear_vel; getHkBody()->getMotion()->m_angularVelocity = angular_vel; - getHkBody()->setQualityType(mBody->hasFlag(RigidBody::Flag::IsCharacterController) ? + getHkBody()->setQualityType(mBody->hasFlag(RigidBody::Flag::HighQualityCollidable) ? HK_COLLIDABLE_QUALITY_BULLET : HK_COLLIDABLE_QUALITY_DEBRIS); getHkBody()->getMotion()->m_deactivationIntegrateCounter = deactivation_counter;