summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2026-09-28 03:39:31 +0200
committerLéo Lam <leo@leolam.fr>2026-10-13 02:55:29 +0200
commit89322a8d0cb0c1aaab509ab653a9368a2ae5dea9 (patch)
tree32eb8a0aaa2dd4b25343643ac61b0808f6562d4e /src
parent0ee30415f78a5edc870c0947ca19292f01152205 (diff)
ksys/phys: rearrange the folder layout to match link order
A folder's files are linked before its subfolders, and the rigid body files are linked as one flat sequence. ListShape is the one file that does not fit this order. | Old | New | |---|---| | RigidBody/Shape/<Kind>/phys<Kind>Shape.cpp | RigidBody/Shape/phys<Kind>Shape.cpp | | RigidBody/Shape/<Kind>/phys<Kind>RigidBody.cpp | RigidBody/physRigidBody<Kind>.cpp | | RigidBody/Shape/List/physListShapeRigidBody.cpp | RigidBody/physRigidBodyListShape.cpp | | physHavokMemoryAllocator.cpp | System/physHavokMemoryAllocator.cpp | | StaticCompound/physStaticCompound{,Mgr,RigidBodyGroup,Util}.cpp | System/ | | StaticCompound/physStaticCompound{Info,Autogen}.cpp | System/physStaticCompoundInfo.cpp | The original has the type infos' cleanup functions just before StaticCompoundInfo's functions, so the merged file defines the reflection data first, with plain static cleanup functions as in Havok's generated reflection code. Template instantiations would be emitted after the rest of the file. (AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
Diffstat (limited to 'src')
-rw-r--r--src/KingSystem/Map/mapPlacementMap.cpp4
-rw-r--r--src/KingSystem/Physics/CMakeLists.txt94
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physBoxShape.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.cpp)2
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physBoxShape.h (renamed from src/KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physBoxWaterShape.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterShape.cpp)4
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physBoxWaterShape.h (renamed from src/KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterShape.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physCapsuleShape.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.cpp)2
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physCapsuleShape.h (renamed from src/KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physCharacterPrismShape.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/CharacterPrism/physCharacterPrismShape.cpp)4
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physCharacterPrismShape.h (renamed from src/KingSystem/Physics/RigidBody/Shape/CharacterPrism/physCharacterPrismShape.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physCylinderShape.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.cpp)2
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physCylinderShape.h (renamed from src/KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physCylinderWaterShape.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterShape.cpp)2
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physCylinderWaterShape.h (renamed from src/KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterShape.h)2
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physListShape.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/List/physListShape.cpp)14
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physListShape.h (renamed from src/KingSystem/Physics/RigidBody/Shape/List/physListShape.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physPolytopeShape.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.cpp)2
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physPolytopeShape.h (renamed from src/KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physShapeParamObj.cpp12
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physSphereShape.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.cpp)2
-rw-r--r--src/KingSystem/Physics/RigidBody/Shape/physSphereShape.h (renamed from src/KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/TeraMesh/physTeraMeshRigidBody.cpp2
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyBox.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/Box/physBoxRigidBody.cpp)4
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyBox.h (renamed from src/KingSystem/Physics/RigidBody/Shape/Box/physBoxRigidBody.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyBoxWater.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterRigidBody.cpp)4
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyBoxWater.h (renamed from src/KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterRigidBody.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyCapsule.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleRigidBody.cpp)4
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyCapsule.h (renamed from src/KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleRigidBody.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyCylinder.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderRigidBody.cpp)4
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyCylinder.h (renamed from src/KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderRigidBody.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyCylinderWater.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterRigidBody.cpp)4
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyCylinderWater.h (renamed from src/KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterRigidBody.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyFromResource.cpp2
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyFromShape.cpp32
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyListShape.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/List/physListShapeRigidBody.cpp)4
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyListShape.h (renamed from src/KingSystem/Physics/RigidBody/Shape/List/physListShapeRigidBody.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyParam.cpp32
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyPolytope.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeRigidBody.cpp)4
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodyPolytope.h (renamed from src/KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeRigidBody.h)0
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodySphere.cpp (renamed from src/KingSystem/Physics/RigidBody/Shape/Sphere/physSphereRigidBody.cpp)4
-rw-r--r--src/KingSystem/Physics/RigidBody/physRigidBodySphere.h (renamed from src/KingSystem/Physics/RigidBody/Shape/Sphere/physSphereRigidBody.h)0
-rw-r--r--src/KingSystem/Physics/StaticCompound/physStaticCompoundInfo.cpp56
-rw-r--r--src/KingSystem/Physics/StaticCompound/physStaticCompoundUtil.cpp1
-rw-r--r--src/KingSystem/Physics/System/physCharacterControllerParam.cpp14
-rw-r--r--src/KingSystem/Physics/System/physClosestPointQueryWithInfo.cpp4
-rw-r--r--src/KingSystem/Physics/System/physHavokMemoryAllocator.cpp (renamed from src/KingSystem/Physics/physHavokMemoryAllocator.cpp)2
-rw-r--r--src/KingSystem/Physics/System/physHavokMemoryAllocator.h (renamed from src/KingSystem/Physics/physHavokMemoryAllocator.h)0
-rw-r--r--src/KingSystem/Physics/System/physRayCast.cpp2
-rw-r--r--src/KingSystem/Physics/System/physShapeCastWithInfo.cpp4
-rw-r--r--src/KingSystem/Physics/System/physStaticCompound.cpp (renamed from src/KingSystem/Physics/StaticCompound/physStaticCompound.cpp)8
-rw-r--r--src/KingSystem/Physics/System/physStaticCompound.h (renamed from src/KingSystem/Physics/StaticCompound/physStaticCompound.h)0
-rw-r--r--src/KingSystem/Physics/System/physStaticCompoundInfo.cpp (renamed from src/KingSystem/Physics/StaticCompound/physStaticCompoundAutogen.cpp)67
-rw-r--r--src/KingSystem/Physics/System/physStaticCompoundInfo.h (renamed from src/KingSystem/Physics/StaticCompound/physStaticCompoundInfo.h)0
-rw-r--r--src/KingSystem/Physics/System/physStaticCompoundMgr.cpp (renamed from src/KingSystem/Physics/StaticCompound/physStaticCompoundMgr.cpp)8
-rw-r--r--src/KingSystem/Physics/System/physStaticCompoundMgr.h (renamed from src/KingSystem/Physics/StaticCompound/physStaticCompoundMgr.h)0
-rw-r--r--src/KingSystem/Physics/System/physStaticCompoundRigidBodyGroup.cpp (renamed from src/KingSystem/Physics/StaticCompound/physStaticCompoundRigidBodyGroup.cpp)6
-rw-r--r--src/KingSystem/Physics/System/physStaticCompoundRigidBodyGroup.h (renamed from src/KingSystem/Physics/StaticCompound/physStaticCompoundRigidBodyGroup.h)0
-rw-r--r--src/KingSystem/Physics/System/physStaticCompoundUtil.cpp1
-rw-r--r--src/KingSystem/Physics/System/physStaticCompoundUtil.h (renamed from src/KingSystem/Physics/StaticCompound/physStaticCompoundUtil.h)0
-rw-r--r--src/KingSystem/Physics/System/physSystem.cpp4
60 files changed, 211 insertions, 212 deletions
diff --git a/src/KingSystem/Map/mapPlacementMap.cpp b/src/KingSystem/Map/mapPlacementMap.cpp
index 05461527..e2bb1182 100644
--- a/src/KingSystem/Map/mapPlacementMap.cpp
+++ b/src/KingSystem/Map/mapPlacementMap.cpp
@@ -3,8 +3,8 @@
#include <thread/seadReadWriteLock.h>
#include "KingSystem/AOC/aocManager.h"
#include "KingSystem/Map/mapObject.h"
-#include "KingSystem/Physics/StaticCompound/physStaticCompound.h"
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundRigidBodyGroup.h"
+#include "KingSystem/Physics/System/physStaticCompound.h"
+#include "KingSystem/Physics/System/physStaticCompoundRigidBodyGroup.h"
#include "KingSystem/Resource/resLoadRequest.h"
namespace ksys::map {
diff --git a/src/KingSystem/Physics/CMakeLists.txt b/src/KingSystem/Physics/CMakeLists.txt
index a4efb365..9f9b7656 100644
--- a/src/KingSystem/Physics/CMakeLists.txt
+++ b/src/KingSystem/Physics/CMakeLists.txt
@@ -41,17 +41,31 @@ target_sources(uking PRIVATE
RigidBody/physRigidBody.h
RigidBody/physRigidBodyAccessor.cpp
RigidBody/physRigidBodyAccessor.h
+ RigidBody/physRigidBodyBox.cpp
+ RigidBody/physRigidBodyBox.h
+ RigidBody/physRigidBodyBoxWater.cpp
+ RigidBody/physRigidBodyBoxWater.h
+ RigidBody/physRigidBodyCapsule.cpp
+ RigidBody/physRigidBodyCapsule.h
RigidBody/physRigidBodyContactEvent.h
+ RigidBody/physRigidBodyCylinder.cpp
+ RigidBody/physRigidBodyCylinder.h
+ RigidBody/physRigidBodyCylinderWater.cpp
+ RigidBody/physRigidBodyCylinderWater.h
RigidBody/physRigidBodyFromResource.cpp
RigidBody/physRigidBodyFromResource.h
RigidBody/physRigidBodyFromShape.cpp
RigidBody/physRigidBodyFromShape.h
+ RigidBody/physRigidBodyListShape.cpp
+ RigidBody/physRigidBodyListShape.h
RigidBody/physRigidBodyMotionEntity.cpp
RigidBody/physRigidBodyMotionEntity.h
RigidBody/physRigidBodyMotionSensor.cpp
RigidBody/physRigidBodyMotionSensor.h
RigidBody/physRigidBodyParam.cpp
RigidBody/physRigidBodyParam.h
+ RigidBody/physRigidBodyPolytope.cpp
+ RigidBody/physRigidBodyPolytope.h
RigidBody/physRigidBodyRequestMgr.cpp
RigidBody/physRigidBodyRequestMgr.h
RigidBody/physRigidBodyResource.cpp
@@ -60,44 +74,30 @@ target_sources(uking PRIVATE
RigidBody/physRigidBodySet.h
RigidBody/physRigidBodySetParam.cpp
RigidBody/physRigidBodySetParam.h
+ RigidBody/physRigidBodySphere.cpp
+ RigidBody/physRigidBodySphere.h
- RigidBody/Shape/Box/physBoxRigidBody.cpp
- RigidBody/Shape/Box/physBoxRigidBody.h
- RigidBody/Shape/Box/physBoxShape.cpp
- RigidBody/Shape/Box/physBoxShape.h
- RigidBody/Shape/BoxWater/physBoxWaterRigidBody.cpp
- RigidBody/Shape/BoxWater/physBoxWaterRigidBody.h
- RigidBody/Shape/BoxWater/physBoxWaterShape.cpp
- RigidBody/Shape/BoxWater/physBoxWaterShape.h
- RigidBody/Shape/Capsule/physCapsuleRigidBody.cpp
- RigidBody/Shape/Capsule/physCapsuleRigidBody.h
- RigidBody/Shape/Capsule/physCapsuleShape.cpp
- RigidBody/Shape/Capsule/physCapsuleShape.h
- RigidBody/Shape/CharacterPrism/physCharacterPrismShape.cpp
- RigidBody/Shape/CharacterPrism/physCharacterPrismShape.h
- RigidBody/Shape/Cylinder/physCylinderRigidBody.cpp
- RigidBody/Shape/Cylinder/physCylinderRigidBody.h
- RigidBody/Shape/Cylinder/physCylinderShape.cpp
- RigidBody/Shape/Cylinder/physCylinderShape.h
- RigidBody/Shape/CylinderWater/physCylinderWaterRigidBody.cpp
- RigidBody/Shape/CylinderWater/physCylinderWaterRigidBody.h
- RigidBody/Shape/CylinderWater/physCylinderWaterShape.cpp
- RigidBody/Shape/CylinderWater/physCylinderWaterShape.h
- RigidBody/Shape/List/physListShape.cpp
- RigidBody/Shape/List/physListShape.h
- RigidBody/Shape/List/physListShapeRigidBody.cpp
- RigidBody/Shape/List/physListShapeRigidBody.h
- RigidBody/Shape/Polytope/physPolytopeRigidBody.cpp
- RigidBody/Shape/Polytope/physPolytopeRigidBody.h
- RigidBody/Shape/Polytope/physPolytopeShape.cpp
- RigidBody/Shape/Polytope/physPolytopeShape.h
- RigidBody/Shape/Sphere/physSphereRigidBody.cpp
- RigidBody/Shape/Sphere/physSphereRigidBody.h
- RigidBody/Shape/Sphere/physSphereShape.cpp
- RigidBody/Shape/Sphere/physSphereShape.h
+ RigidBody/Shape/physBoxShape.cpp
+ RigidBody/Shape/physBoxShape.h
+ RigidBody/Shape/physBoxWaterShape.cpp
+ RigidBody/Shape/physBoxWaterShape.h
+ RigidBody/Shape/physCapsuleShape.cpp
+ RigidBody/Shape/physCapsuleShape.h
+ RigidBody/Shape/physCharacterPrismShape.cpp
+ RigidBody/Shape/physCharacterPrismShape.h
+ RigidBody/Shape/physCylinderShape.cpp
+ RigidBody/Shape/physCylinderShape.h
+ RigidBody/Shape/physCylinderWaterShape.cpp
+ RigidBody/Shape/physCylinderWaterShape.h
+ RigidBody/Shape/physListShape.cpp
+ RigidBody/Shape/physListShape.h
+ RigidBody/Shape/physPolytopeShape.cpp
+ RigidBody/Shape/physPolytopeShape.h
RigidBody/Shape/physShape.h
RigidBody/Shape/physShapeParamObj.cpp
RigidBody/Shape/physShapeParamObj.h
+ RigidBody/Shape/physSphereShape.cpp
+ RigidBody/Shape/physSphereShape.h
RigidBody/TeraMesh/physTeraMeshRigidBody.cpp
RigidBody/TeraMesh/physTeraMeshRigidBody.h
@@ -106,18 +106,6 @@ target_sources(uking PRIVATE
RigidBody/TerrainHeightField/physTerrainHeightFieldRigidBody.h
- StaticCompound/physStaticCompound.cpp
- StaticCompound/physStaticCompound.h
- StaticCompound/physStaticCompoundAutogen.cpp
- StaticCompound/physStaticCompoundInfo.cpp
- StaticCompound/physStaticCompoundInfo.h
- StaticCompound/physStaticCompoundMgr.cpp
- StaticCompound/physStaticCompoundMgr.h
- StaticCompound/physStaticCompoundRigidBodyGroup.cpp
- StaticCompound/physStaticCompoundRigidBodyGroup.h
- StaticCompound/physStaticCompoundUtil.cpp
- StaticCompound/physStaticCompoundUtil.h
-
SupportBone/physSupportBoneParam.cpp
SupportBone/physSupportBoneParam.h
SupportBone/physSupportBoneResource.cpp
@@ -144,6 +132,8 @@ target_sources(uking PRIVATE
System/physContactMgr.h
System/physContactPointInfo.cpp
System/physContactPointInfo.h
+ System/physHavokMemoryAllocator.cpp
+ System/physHavokMemoryAllocator.h
System/physLayerContactPointInfo.cpp
System/physLayerContactPointInfo.h
System/physEntityContactListener.cpp
@@ -178,6 +168,16 @@ target_sources(uking PRIVATE
System/physShapeCast.h
System/physShapeCastWithInfo.cpp
System/physShapeCastWithInfo.h
+ System/physStaticCompound.cpp
+ System/physStaticCompound.h
+ System/physStaticCompoundInfo.cpp
+ System/physStaticCompoundInfo.h
+ System/physStaticCompoundMgr.cpp
+ System/physStaticCompoundMgr.h
+ System/physStaticCompoundRigidBodyGroup.cpp
+ System/physStaticCompoundRigidBodyGroup.h
+ System/physStaticCompoundUtil.cpp
+ System/physStaticCompoundUtil.h
System/physSystem.cpp
System/physSystem.h
System/physSystemData.cpp
@@ -188,8 +188,6 @@ target_sources(uking PRIVATE
physConversions.h
physDefines.cpp
physDefines.h
- physHavokMemoryAllocator.cpp
- physHavokMemoryAllocator.h
physHeapUtil.h
physLayerMaskBuilder.h
physMaterialMask.cpp
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.cpp b/src/KingSystem/Physics/RigidBody/Shape/physBoxShape.cpp
index 1ded03e0..fe54a365 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.cpp
+++ b/src/KingSystem/Physics/RigidBody/Shape/physBoxShape.cpp
@@ -1,4 +1,4 @@
-#include "KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physBoxShape.h"
#include <Havok/Physics2012/Collide/Shape/Convex/Box/hkpBoxShape.h>
#include <Havok/Physics2012/Collide/Shape/Convex/ConvexTransform/hkpConvexTransformShape.h>
#include "KingSystem/Physics/physConversions.h"
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.h b/src/KingSystem/Physics/RigidBody/Shape/physBoxShape.h
index a1da021b..a1da021b 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.h
+++ b/src/KingSystem/Physics/RigidBody/Shape/physBoxShape.h
diff --git a/src/KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterShape.cpp b/src/KingSystem/Physics/RigidBody/Shape/physBoxWaterShape.cpp
index 5adc16ec..787d9801 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterShape.cpp
+++ b/src/KingSystem/Physics/RigidBody/Shape/physBoxWaterShape.cpp
@@ -1,9 +1,9 @@
-#include "KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physBoxWaterShape.h"
#include <Havok/Common/Base/Types/Geometry/Aabb/hkAabb.h>
#include <Havok/Common/Base/Types/Geometry/Sphere/hkSphere.h>
#include <Havok/Physics2012/Collide/Shape/HeightField/Plane/hkpPlaneShape.h>
#include <Havok/Physics2012/Collide/Shape/Query/hkpShapeRayCastOutput.h>
-#include "KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physBoxShape.h"
#include "KingSystem/Physics/physConversions.h"
#include "KingSystem/Utils/HeapUtil.h"
#include "KingSystem/Utils/SafeDelete.h"
diff --git a/src/KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterShape.h b/src/KingSystem/Physics/RigidBody/Shape/physBoxWaterShape.h
index ec55eaed..ec55eaed 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterShape.h
+++ b/src/KingSystem/Physics/RigidBody/Shape/physBoxWaterShape.h
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.cpp b/src/KingSystem/Physics/RigidBody/Shape/physCapsuleShape.cpp
index fb4c7c78..25fb18f8 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.cpp
+++ b/src/KingSystem/Physics/RigidBody/Shape/physCapsuleShape.cpp
@@ -1,4 +1,4 @@
-#include "KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCapsuleShape.h"
#include <Havok/Physics2012/Collide/Shape/Convex/Capsule/hkpCapsuleShape.h>
#include <heap/seadHeap.h>
#include <math/seadMathCalcCommon.h>
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.h b/src/KingSystem/Physics/RigidBody/Shape/physCapsuleShape.h
index 5190f212..5190f212 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.h
+++ b/src/KingSystem/Physics/RigidBody/Shape/physCapsuleShape.h
diff --git a/src/KingSystem/Physics/RigidBody/Shape/CharacterPrism/physCharacterPrismShape.cpp b/src/KingSystem/Physics/RigidBody/Shape/physCharacterPrismShape.cpp
index 1e58d6d8..31f747ff 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/CharacterPrism/physCharacterPrismShape.cpp
+++ b/src/KingSystem/Physics/RigidBody/Shape/physCharacterPrismShape.cpp
@@ -1,8 +1,8 @@
-#include "KingSystem/Physics/RigidBody/Shape/CharacterPrism/physCharacterPrismShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCharacterPrismShape.h"
#include <Havok/Geometry/Internal/Types/hkcdVertex.h>
#include <Havok/Physics2012/Collide/Shape/Convex/ConvexVertices/hkpConvexVerticesShape.h>
#include <Havok/Physics2012/Collide/Shape/Convex/hkpConvexShape.h>
-#include "KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physPolytopeShape.h"
#include "KingSystem/Physics/physConversions.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/RigidBody/Shape/CharacterPrism/physCharacterPrismShape.h b/src/KingSystem/Physics/RigidBody/Shape/physCharacterPrismShape.h
index 1724835b..1724835b 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/CharacterPrism/physCharacterPrismShape.h
+++ b/src/KingSystem/Physics/RigidBody/Shape/physCharacterPrismShape.h
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.cpp b/src/KingSystem/Physics/RigidBody/Shape/physCylinderShape.cpp
index f306f2a4..b167fcf5 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.cpp
+++ b/src/KingSystem/Physics/RigidBody/Shape/physCylinderShape.cpp
@@ -1,4 +1,4 @@
-#include "KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCylinderShape.h"
#include <Havok/Physics2012/Collide/Shape/Convex/Cylinder/hkpCylinderShape.h>
#include "KingSystem/Physics/physConversions.h"
#include "KingSystem/Utils/HeapUtil.h"
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.h b/src/KingSystem/Physics/RigidBody/Shape/physCylinderShape.h
index 2e5cb723..2e5cb723 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.h
+++ b/src/KingSystem/Physics/RigidBody/Shape/physCylinderShape.h
diff --git a/src/KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterShape.cpp b/src/KingSystem/Physics/RigidBody/Shape/physCylinderWaterShape.cpp
index f9b65b07..679cac0b 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterShape.cpp
+++ b/src/KingSystem/Physics/RigidBody/Shape/physCylinderWaterShape.cpp
@@ -1,4 +1,4 @@
-#include "KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCylinderWaterShape.h"
#include <Havok/Common/Base/Types/Geometry/Aabb/hkAabb.h>
#include <Havok/Common/Base/Types/Geometry/Aabb/hkAabbUtil.h>
#include <Havok/Common/Base/Types/Geometry/Sphere/hkSphere.h>
diff --git a/src/KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterShape.h b/src/KingSystem/Physics/RigidBody/Shape/physCylinderWaterShape.h
index a06a2b8f..02e8de24 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterShape.h
+++ b/src/KingSystem/Physics/RigidBody/Shape/physCylinderWaterShape.h
@@ -2,7 +2,7 @@
#include <prim/seadTypedBitFlag.h>
#include <thread/seadAtomic.h>
-#include "KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCylinderShape.h"
#include "KingSystem/Physics/RigidBody/physRigidBody.h"
#include "KingSystem/Physics/RigidBody/physRigidBodyParam.h"
#include "KingSystem/Physics/physMaterialMask.h"
diff --git a/src/KingSystem/Physics/RigidBody/Shape/List/physListShape.cpp b/src/KingSystem/Physics/RigidBody/Shape/physListShape.cpp
index fbffbb46..3bcbb344 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/List/physListShape.cpp
+++ b/src/KingSystem/Physics/RigidBody/Shape/physListShape.cpp
@@ -1,14 +1,14 @@
-#include "KingSystem/Physics/RigidBody/Shape/List/physListShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physListShape.h"
#include <Havok/Physics2012/Collide/Shape/Compound/Collection/List/hkpListShape.h>
#include <Havok/Physics2012/Collide/Shape/Convex/Sphere/hkpSphereShape.h>
#include <basis/seadRawPrint.h>
#include <container/seadSafeArray.h>
-#include "KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/CharacterPrism/physCharacterPrismShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physBoxShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCapsuleShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCharacterPrismShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCylinderShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physPolytopeShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physSphereShape.h"
#include "KingSystem/Physics/physHeapUtil.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/RigidBody/Shape/List/physListShape.h b/src/KingSystem/Physics/RigidBody/Shape/physListShape.h
index de29ab30..de29ab30 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/List/physListShape.h
+++ b/src/KingSystem/Physics/RigidBody/Shape/physListShape.h
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.cpp b/src/KingSystem/Physics/RigidBody/Shape/physPolytopeShape.cpp
index 8ce7f93d..7c8f2dc8 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.cpp
+++ b/src/KingSystem/Physics/RigidBody/Shape/physPolytopeShape.cpp
@@ -1,4 +1,4 @@
-#include "KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physPolytopeShape.h"
#include <Havok/Common/Base/Types/Geometry/hkStridedVertices.h>
#include <Havok/Physics2012/Collide/Shape/Convex/ConvexTransform/hkpConvexTransformShape.h>
#include <Havok/Physics2012/Collide/Shape/Convex/ConvexVertices/hkpConvexVerticesShape.h>
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.h b/src/KingSystem/Physics/RigidBody/Shape/physPolytopeShape.h
index 3a62e7a6..3a62e7a6 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.h
+++ b/src/KingSystem/Physics/RigidBody/Shape/physPolytopeShape.h
diff --git a/src/KingSystem/Physics/RigidBody/Shape/physShapeParamObj.cpp b/src/KingSystem/Physics/RigidBody/Shape/physShapeParamObj.cpp
index 90a04023..42c58aeb 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/physShapeParamObj.cpp
+++ b/src/KingSystem/Physics/RigidBody/Shape/physShapeParamObj.cpp
@@ -1,11 +1,11 @@
#include "KingSystem/Physics/RigidBody/Shape/physShapeParamObj.h"
-#include "KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/CharacterPrism/physCharacterPrismShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physBoxShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCapsuleShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCharacterPrismShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCylinderShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physPolytopeShape.h"
#include "KingSystem/Physics/RigidBody/Shape/physShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physSphereShape.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.cpp b/src/KingSystem/Physics/RigidBody/Shape/physSphereShape.cpp
index 46f211de..a5e04131 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.cpp
+++ b/src/KingSystem/Physics/RigidBody/Shape/physSphereShape.cpp
@@ -1,4 +1,4 @@
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physSphereShape.h"
#include "KingSystem/Physics/physConversions.h"
#include "KingSystem/Utils/HeapUtil.h"
#include "KingSystem/Utils/SafeDelete.h"
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.h b/src/KingSystem/Physics/RigidBody/Shape/physSphereShape.h
index 2d3a2182..2d3a2182 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.h
+++ b/src/KingSystem/Physics/RigidBody/Shape/physSphereShape.h
diff --git a/src/KingSystem/Physics/RigidBody/TeraMesh/physTeraMeshRigidBody.cpp b/src/KingSystem/Physics/RigidBody/TeraMesh/physTeraMeshRigidBody.cpp
index 438a035a..9e55c51d 100644
--- a/src/KingSystem/Physics/RigidBody/TeraMesh/physTeraMeshRigidBody.cpp
+++ b/src/KingSystem/Physics/RigidBody/TeraMesh/physTeraMeshRigidBody.cpp
@@ -1,7 +1,7 @@
#include "KingSystem/Physics/RigidBody/TeraMesh/physTeraMeshRigidBody.h"
#include <Havok/Physics2012/Dynamics/Entity/hkpRigidBody.h>
#include "KingSystem/Physics/RigidBody/physRigidBodyParam.h"
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundUtil.h"
+#include "KingSystem/Physics/System/physStaticCompoundUtil.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Box/physBoxRigidBody.cpp b/src/KingSystem/Physics/RigidBody/physRigidBodyBox.cpp
index 9e38ba43..80f2babb 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Box/physBoxRigidBody.cpp
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyBox.cpp
@@ -1,6 +1,6 @@
-#include "KingSystem/Physics/RigidBody/Shape/Box/physBoxRigidBody.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyBox.h"
#include <Havok/Physics2012/Dynamics/Entity/hkpRigidBody.h>
-#include "KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physBoxShape.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Box/physBoxRigidBody.h b/src/KingSystem/Physics/RigidBody/physRigidBodyBox.h
index 2e92404b..2e92404b 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Box/physBoxRigidBody.h
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyBox.h
diff --git a/src/KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterRigidBody.cpp b/src/KingSystem/Physics/RigidBody/physRigidBodyBoxWater.cpp
index 3f30214f..5c02928d 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterRigidBody.cpp
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyBoxWater.cpp
@@ -1,5 +1,5 @@
-#include "KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterShape.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyBoxWater.h"
+#include "KingSystem/Physics/RigidBody/Shape/physBoxWaterShape.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterRigidBody.h b/src/KingSystem/Physics/RigidBody/physRigidBodyBoxWater.h
index 1d281c66..1d281c66 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterRigidBody.h
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyBoxWater.h
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleRigidBody.cpp b/src/KingSystem/Physics/RigidBody/physRigidBodyCapsule.cpp
index b4a2663b..1d8b9594 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleRigidBody.cpp
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyCapsule.cpp
@@ -1,6 +1,6 @@
-#include "KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleRigidBody.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyCapsule.h"
#include <Havok/Physics2012/Dynamics/Entity/hkpRigidBody.h>
-#include "KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCapsuleShape.h"
#include "KingSystem/Utils/SafeDelete.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleRigidBody.h b/src/KingSystem/Physics/RigidBody/physRigidBodyCapsule.h
index d4a996fe..d4a996fe 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleRigidBody.h
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyCapsule.h
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderRigidBody.cpp b/src/KingSystem/Physics/RigidBody/physRigidBodyCylinder.cpp
index 48764205..0f1a6ac3 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderRigidBody.cpp
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyCylinder.cpp
@@ -1,6 +1,6 @@
-#include "KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderRigidBody.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyCylinder.h"
#include <Havok/Physics2012/Dynamics/Entity/hkpRigidBody.h>
-#include "KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCylinderShape.h"
#include "KingSystem/Utils/SafeDelete.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderRigidBody.h b/src/KingSystem/Physics/RigidBody/physRigidBodyCylinder.h
index e5cac790..e5cac790 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderRigidBody.h
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyCylinder.h
diff --git a/src/KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterRigidBody.cpp b/src/KingSystem/Physics/RigidBody/physRigidBodyCylinderWater.cpp
index 154f70e8..9e5acbeb 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterRigidBody.cpp
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyCylinderWater.cpp
@@ -1,5 +1,5 @@
-#include "KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterShape.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyCylinderWater.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCylinderWaterShape.h"
#include "KingSystem/Utils/SafeDelete.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterRigidBody.h b/src/KingSystem/Physics/RigidBody/physRigidBodyCylinderWater.h
index cc4c8201..cc4c8201 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterRigidBody.h
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyCylinderWater.h
diff --git a/src/KingSystem/Physics/RigidBody/physRigidBodyFromResource.cpp b/src/KingSystem/Physics/RigidBody/physRigidBodyFromResource.cpp
index 397cee6b..6e4384d1 100644
--- a/src/KingSystem/Physics/RigidBody/physRigidBodyFromResource.cpp
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyFromResource.cpp
@@ -5,7 +5,7 @@
#include <Havok/Physics2012/Utilities/Dynamics/ScaleSystem/hkpSystemScalingUtility.h>
#include <math/seadMathCalcCommon.h>
#include "KingSystem/Physics/RigidBody/physRigidBodyParam.h"
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundUtil.h"
+#include "KingSystem/Physics/System/physStaticCompoundUtil.h"
#include "KingSystem/Physics/physConversions.h"
#include "KingSystem/Physics/physMaterialMask.h"
diff --git a/src/KingSystem/Physics/RigidBody/physRigidBodyFromShape.cpp b/src/KingSystem/Physics/RigidBody/physRigidBodyFromShape.cpp
index 3f1bd76e..286c6242 100644
--- a/src/KingSystem/Physics/RigidBody/physRigidBodyFromShape.cpp
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyFromShape.cpp
@@ -2,24 +2,24 @@
#include <Havok/Physics2012/Dynamics/Entity/hkpRigidBody.h>
#include <Havok/Physics2012/Dynamics/Entity/hkpRigidBodyCinfo.h>
#include <basis/seadRawPrint.h>
-#include "KingSystem/Physics/RigidBody/Shape/Box/physBoxRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/CharacterPrism/physCharacterPrismShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/List/physListShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/List/physListShapeRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physBoxShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physBoxWaterShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCapsuleShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCharacterPrismShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCylinderWaterShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physListShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physPolytopeShape.h"
#include "KingSystem/Physics/RigidBody/Shape/physShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physSphereShape.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyBox.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyBoxWater.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyCapsule.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyCylinder.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyCylinderWater.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyListShape.h"
#include "KingSystem/Physics/RigidBody/physRigidBodyParam.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyPolytope.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodySphere.h"
#include "KingSystem/Physics/System/physGroupFilter.h"
#include "KingSystem/Physics/physConversions.h"
#include "KingSystem/Physics/physDefines.h"
diff --git a/src/KingSystem/Physics/RigidBody/Shape/List/physListShapeRigidBody.cpp b/src/KingSystem/Physics/RigidBody/physRigidBodyListShape.cpp
index 3bb9c3b9..ff31dcbb 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/List/physListShapeRigidBody.cpp
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyListShape.cpp
@@ -1,5 +1,5 @@
-#include "KingSystem/Physics/RigidBody/Shape/List/physListShapeRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/List/physListShape.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyListShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physListShape.h"
#include "KingSystem/Utils/SafeDelete.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/RigidBody/Shape/List/physListShapeRigidBody.h b/src/KingSystem/Physics/RigidBody/physRigidBodyListShape.h
index 8eb340a1..8eb340a1 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/List/physListShapeRigidBody.h
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyListShape.h
diff --git a/src/KingSystem/Physics/RigidBody/physRigidBodyParam.cpp b/src/KingSystem/Physics/RigidBody/physRigidBodyParam.cpp
index 9339f5d7..73021829 100644
--- a/src/KingSystem/Physics/RigidBody/physRigidBodyParam.cpp
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyParam.cpp
@@ -1,23 +1,23 @@
#include "KingSystem/Physics/RigidBody/physRigidBodyParam.h"
#include <basis/seadRawPrint.h>
#include <functional>
-#include "KingSystem/Physics/RigidBody/Shape/Box/physBoxRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/BoxWater/physBoxWaterShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/CylinderWater/physCylinderWaterShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/List/physListShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/List/physListShapeRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physBoxShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physBoxWaterShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCapsuleShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCylinderShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCylinderWaterShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physListShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physPolytopeShape.h"
#include "KingSystem/Physics/RigidBody/Shape/physShapeParamObj.h"
+#include "KingSystem/Physics/RigidBody/Shape/physSphereShape.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyBox.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyBoxWater.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyCapsule.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyCylinder.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyCylinderWater.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyListShape.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyPolytope.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodySphere.h"
#include "KingSystem/Physics/System/physEntityGroupFilter.h"
#include "KingSystem/Utils/SafeDelete.h"
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeRigidBody.cpp b/src/KingSystem/Physics/RigidBody/physRigidBodyPolytope.cpp
index 97a3ca0c..0a6e4be3 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeRigidBody.cpp
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyPolytope.cpp
@@ -1,5 +1,5 @@
-#include "KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodyPolytope.h"
+#include "KingSystem/Physics/RigidBody/Shape/physPolytopeShape.h"
#include "KingSystem/Utils/SafeDelete.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeRigidBody.h b/src/KingSystem/Physics/RigidBody/physRigidBodyPolytope.h
index a112435a..a112435a 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeRigidBody.h
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodyPolytope.h
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Sphere/physSphereRigidBody.cpp b/src/KingSystem/Physics/RigidBody/physRigidBodySphere.cpp
index 2ed40ff9..00884113 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Sphere/physSphereRigidBody.cpp
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodySphere.cpp
@@ -1,6 +1,6 @@
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereRigidBody.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodySphere.h"
#include <Havok/Physics2012/Dynamics/Entity/hkpRigidBody.h>
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physSphereShape.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/RigidBody/Shape/Sphere/physSphereRigidBody.h b/src/KingSystem/Physics/RigidBody/physRigidBodySphere.h
index 20896b9a..20896b9a 100644
--- a/src/KingSystem/Physics/RigidBody/Shape/Sphere/physSphereRigidBody.h
+++ b/src/KingSystem/Physics/RigidBody/physRigidBodySphere.h
diff --git a/src/KingSystem/Physics/StaticCompound/physStaticCompoundInfo.cpp b/src/KingSystem/Physics/StaticCompound/physStaticCompoundInfo.cpp
deleted file mode 100644
index 149bdbeb..00000000
--- a/src/KingSystem/Physics/StaticCompound/physStaticCompoundInfo.cpp
+++ /dev/null
@@ -1,56 +0,0 @@
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundInfo.h"
-
-namespace ksys::phys {
-
-int StaticCompoundInfo::getActorIdx(u32 hash_id, u32 srt_hash) const {
- for (int i = 0; i < m_ActorInfo.getSize(); ++i) {
- const auto& info = m_ActorInfo[i];
- if (info.m_HashId == hash_id && u32(info.m_SRTHash) == srt_hash)
- return i;
- }
- return -1;
-}
-
-int StaticCompoundInfo::getShapeInfoStart(int actor_idx) const {
- if (actor_idx < 0 || actor_idx >= m_ActorInfo.getSize())
- return -1;
- return m_ActorInfo[actor_idx].m_ShapeInfoStart;
-}
-
-int StaticCompoundInfo::getShapeInfoEnd(int actor_idx) const {
- if (actor_idx < 0 || actor_idx >= m_ActorInfo.getSize())
- return -1;
- return m_ActorInfo[actor_idx].m_ShapeInfoEnd;
-}
-
-const ShapeInfo* StaticCompoundInfo::getShapeInfo(int shape_idx) const {
- if (shape_idx < 0 || shape_idx >= m_ShapeInfo.getSize())
- return nullptr;
- return &m_ShapeInfo[shape_idx];
-}
-
-static ContactLayer getContactLayerForBodyLayerType(BodyLayerType type) {
- ContactLayer map[NumBodyLayerTypes];
- map[int(BodyLayerType::EntityGround)] = ContactLayer::EntityGround;
- map[int(BodyLayerType::EntityGroundSmooth)] = ContactLayer::EntityGroundSmooth;
- map[int(BodyLayerType::EntityGroundRough)] = ContactLayer::EntityGroundRough;
- map[int(BodyLayerType::EntityObject)] = ContactLayer::EntityObject;
- map[int(BodyLayerType::EntityGroundObject)] = ContactLayer::EntityGroundObject;
- map[int(BodyLayerType::EntityTree)] = ContactLayer::EntityTree;
- map[int(BodyLayerType::SensorInDoor)] = ContactLayer::SensorInDoor;
- map[int(BodyLayerType::EntityNoHit)] = ContactLayer::EntityNoHit;
- map[int(BodyLayerType::EntityWallForClimb)] = ContactLayer::EntityWallForClimb;
- map[int(BodyLayerType::EntityWater)] = ContactLayer::EntityWater;
- return map[int(type)];
-}
-
-BodyLayerType getBodyLayerType(ContactLayer layer) {
- for (int i = 0; i < NumBodyLayerTypes; ++i) {
- auto type = static_cast<BodyLayerType>(i);
- if (int(getContactLayerForBodyLayerType(type)) == int(layer))
- return type;
- }
- return BodyLayerType::Invalid;
-}
-
-} // namespace ksys::phys
diff --git a/src/KingSystem/Physics/StaticCompound/physStaticCompoundUtil.cpp b/src/KingSystem/Physics/StaticCompound/physStaticCompoundUtil.cpp
deleted file mode 100644
index 72d1bcbb..00000000
--- a/src/KingSystem/Physics/StaticCompound/physStaticCompoundUtil.cpp
+++ /dev/null
@@ -1 +0,0 @@
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundUtil.h"
diff --git a/src/KingSystem/Physics/System/physCharacterControllerParam.cpp b/src/KingSystem/Physics/System/physCharacterControllerParam.cpp
index a4ca3d0f..dc190d05 100644
--- a/src/KingSystem/Physics/System/physCharacterControllerParam.cpp
+++ b/src/KingSystem/Physics/System/physCharacterControllerParam.cpp
@@ -1,14 +1,14 @@
#include "KingSystem/Physics/System/physCharacterControllerParam.h"
#include <basis/seadRawPrint.h>
-#include "KingSystem/Physics/RigidBody/Shape/Box/physBoxShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Capsule/physCapsuleShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/CharacterPrism/physCharacterPrismShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Cylinder/physCylinderShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/List/physListShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Polytope/physPolytopeShape.h"
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physBoxShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCapsuleShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCharacterPrismShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physCylinderShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physListShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physPolytopeShape.h"
#include "KingSystem/Physics/RigidBody/Shape/physShape.h"
#include "KingSystem/Physics/RigidBody/Shape/physShapeParamObj.h"
+#include "KingSystem/Physics/RigidBody/Shape/physSphereShape.h"
#include "KingSystem/Utils/SafeDelete.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/System/physClosestPointQueryWithInfo.cpp b/src/KingSystem/Physics/System/physClosestPointQueryWithInfo.cpp
index 65f34b68..0aa43528 100644
--- a/src/KingSystem/Physics/System/physClosestPointQueryWithInfo.cpp
+++ b/src/KingSystem/Physics/System/physClosestPointQueryWithInfo.cpp
@@ -1,6 +1,6 @@
#include "KingSystem/Physics/System/physClosestPointQueryWithInfo.h"
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physSphereShape.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodySphere.h"
#include "KingSystem/Physics/System/physQueryContactPointInfo.h"
#include "KingSystem/Physics/System/physSystem.h"
diff --git a/src/KingSystem/Physics/physHavokMemoryAllocator.cpp b/src/KingSystem/Physics/System/physHavokMemoryAllocator.cpp
index efe356ce..dfa76401 100644
--- a/src/KingSystem/Physics/physHavokMemoryAllocator.cpp
+++ b/src/KingSystem/Physics/System/physHavokMemoryAllocator.cpp
@@ -1,4 +1,4 @@
-#include "KingSystem/Physics/physHavokMemoryAllocator.h"
+#include "KingSystem/Physics/System/physHavokMemoryAllocator.h"
#include "KingSystem/Utils/HeapUtil.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/physHavokMemoryAllocator.h b/src/KingSystem/Physics/System/physHavokMemoryAllocator.h
index c429670d..c429670d 100644
--- a/src/KingSystem/Physics/physHavokMemoryAllocator.h
+++ b/src/KingSystem/Physics/System/physHavokMemoryAllocator.h
diff --git a/src/KingSystem/Physics/System/physRayCast.cpp b/src/KingSystem/Physics/System/physRayCast.cpp
index 338bfe12..e7f8f9b9 100644
--- a/src/KingSystem/Physics/System/physRayCast.cpp
+++ b/src/KingSystem/Physics/System/physRayCast.cpp
@@ -14,10 +14,10 @@
#include <Havok/Physics2012/Utilities/Collide/ShapeUtils/ShapeKeyPath/hkpShapeKeyPath.h>
#include <prim/seadScopeGuard.h>
#include "KingSystem/Physics/RigidBody/physRigidBody.h"
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundUtil.h"
#include "KingSystem/Physics/System/physEntityContactListener.h"
#include "KingSystem/Physics/System/physGroupFilter.h"
#include "KingSystem/Physics/System/physPhantom.h"
+#include "KingSystem/Physics/System/physStaticCompoundUtil.h"
#include "KingSystem/Physics/System/physSystem.h"
#include "KingSystem/Physics/physConversions.h"
#include "KingSystem/Physics/physLayerMaskBuilder.h"
diff --git a/src/KingSystem/Physics/System/physShapeCastWithInfo.cpp b/src/KingSystem/Physics/System/physShapeCastWithInfo.cpp
index 10bb5afd..bcb4a0c9 100644
--- a/src/KingSystem/Physics/System/physShapeCastWithInfo.cpp
+++ b/src/KingSystem/Physics/System/physShapeCastWithInfo.cpp
@@ -3,9 +3,9 @@
#include <Havok/Physics2012/Collide/Query/Collector/PointCollector/hkpAllCdPointCollector.h>
#include <Havok/Physics2012/Dynamics/Entity/hkpRigidBody.h>
#include <Havok/Physics2012/Dynamics/World/hkpWorld.h>
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereRigidBody.h"
-#include "KingSystem/Physics/RigidBody/Shape/Sphere/physSphereShape.h"
+#include "KingSystem/Physics/RigidBody/Shape/physSphereShape.h"
#include "KingSystem/Physics/RigidBody/physRigidBody.h"
+#include "KingSystem/Physics/RigidBody/physRigidBodySphere.h"
#include "KingSystem/Physics/System/physQueryContactPointInfo.h"
#include "KingSystem/Physics/System/physSystem.h"
#include "KingSystem/Physics/physConversions.h"
diff --git a/src/KingSystem/Physics/StaticCompound/physStaticCompound.cpp b/src/KingSystem/Physics/System/physStaticCompound.cpp
index 88853b39..d95f642d 100644
--- a/src/KingSystem/Physics/StaticCompound/physStaticCompound.cpp
+++ b/src/KingSystem/Physics/System/physStaticCompound.cpp
@@ -1,12 +1,12 @@
-#include "KingSystem/Physics/StaticCompound/physStaticCompound.h"
+#include "KingSystem/Physics/System/physStaticCompound.h"
#include <Havok/Common/Serialize/Util/hkNativePackfileUtils.h>
#include <Havok/Common/Serialize/Util/hkRootLevelContainer.h>
#include <Havok/Physics2012/Utilities/Serialize/hkpPhysicsData.h>
#include <heap/seadHeapMgr.h>
#include <prim/seadScopedLock.h>
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundInfo.h"
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundMgr.h"
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundRigidBodyGroup.h"
+#include "KingSystem/Physics/System/physStaticCompoundInfo.h"
+#include "KingSystem/Physics/System/physStaticCompoundMgr.h"
+#include "KingSystem/Physics/System/physStaticCompoundRigidBodyGroup.h"
#include "KingSystem/Physics/System/physSystem.h"
#include "KingSystem/Utils/Debug.h"
#include "KingSystem/Utils/HeapUtil.h"
diff --git a/src/KingSystem/Physics/StaticCompound/physStaticCompound.h b/src/KingSystem/Physics/System/physStaticCompound.h
index 4c328e51..4c328e51 100644
--- a/src/KingSystem/Physics/StaticCompound/physStaticCompound.h
+++ b/src/KingSystem/Physics/System/physStaticCompound.h
diff --git a/src/KingSystem/Physics/StaticCompound/physStaticCompoundAutogen.cpp b/src/KingSystem/Physics/System/physStaticCompoundInfo.cpp
index 20d6066e..920255be 100644
--- a/src/KingSystem/Physics/StaticCompound/physStaticCompoundAutogen.cpp
+++ b/src/KingSystem/Physics/System/physStaticCompoundInfo.cpp
@@ -1,8 +1,15 @@
+#include "KingSystem/Physics/System/physStaticCompoundInfo.h"
#include <Havok/Common/Base/Reflection/hkClass.h>
#include <Havok/Common/Base/Reflection/hkClassMember.h>
#include <Havok/Common/Base/Reflection/hkTypeInfo.h>
#include <array>
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundInfo.h"
+
+#define DEFINE_TYPE_INFO(TYPE) \
+ static void cleanupLoadedObject##TYPE(void* p) { \
+ static_cast<TYPE*>(p)->~TYPE(); \
+ } \
+ const hkTypeInfo TYPE##_TypeInfo(#TYPE, "!" #TYPE, nullptr, cleanupLoadedObject##TYPE, \
+ nullptr, sizeof(TYPE))
namespace ksys::phys {
@@ -38,7 +45,7 @@ const hkClass& ShapeInfo::staticClass() {
return ShapeInfo_Class;
}
-const hkTypeInfo ShapeInfo_TypeInfo = hkTypeInfo::make<ShapeInfo>("ShapeInfo", "!ShapeInfo");
+DEFINE_TYPE_INFO(ShapeInfo);
// ActorInfo
@@ -69,7 +76,7 @@ const hkClass& ActorInfo::staticClass() {
return ActorInfo_Class;
}
-const hkTypeInfo ActorInfo_TypeInfo = hkTypeInfo::make<ActorInfo>("ActorInfo", "!ActorInfo");
+DEFINE_TYPE_INFO(ActorInfo);
// StaticCompoundInfo
@@ -98,7 +105,57 @@ const hkClass& StaticCompoundInfo::staticClass() {
return StaticCompoundInfo_Class;
}
-const hkTypeInfo StaticCompoundInfo_TypeInfo =
- hkTypeInfo::make<StaticCompoundInfo>("StaticCompoundInfo", "!StaticCompoundInfo");
+DEFINE_TYPE_INFO(StaticCompoundInfo);
+
+int StaticCompoundInfo::getActorIdx(u32 hash_id, u32 srt_hash) const {
+ for (int i = 0; i < m_ActorInfo.getSize(); ++i) {
+ const auto& info = m_ActorInfo[i];
+ if (info.m_HashId == hash_id && u32(info.m_SRTHash) == srt_hash)
+ return i;
+ }
+ return -1;
+}
+
+int StaticCompoundInfo::getShapeInfoStart(int actor_idx) const {
+ if (actor_idx < 0 || actor_idx >= m_ActorInfo.getSize())
+ return -1;
+ return m_ActorInfo[actor_idx].m_ShapeInfoStart;
+}
+
+int StaticCompoundInfo::getShapeInfoEnd(int actor_idx) const {
+ if (actor_idx < 0 || actor_idx >= m_ActorInfo.getSize())
+ return -1;
+ return m_ActorInfo[actor_idx].m_ShapeInfoEnd;
+}
+
+const ShapeInfo* StaticCompoundInfo::getShapeInfo(int shape_idx) const {
+ if (shape_idx < 0 || shape_idx >= m_ShapeInfo.getSize())
+ return nullptr;
+ return &m_ShapeInfo[shape_idx];
+}
+
+static ContactLayer getContactLayerForBodyLayerType(BodyLayerType type) {
+ ContactLayer map[NumBodyLayerTypes];
+ map[int(BodyLayerType::EntityGround)] = ContactLayer::EntityGround;
+ map[int(BodyLayerType::EntityGroundSmooth)] = ContactLayer::EntityGroundSmooth;
+ map[int(BodyLayerType::EntityGroundRough)] = ContactLayer::EntityGroundRough;
+ map[int(BodyLayerType::EntityObject)] = ContactLayer::EntityObject;
+ map[int(BodyLayerType::EntityGroundObject)] = ContactLayer::EntityGroundObject;
+ map[int(BodyLayerType::EntityTree)] = ContactLayer::EntityTree;
+ map[int(BodyLayerType::SensorInDoor)] = ContactLayer::SensorInDoor;
+ map[int(BodyLayerType::EntityNoHit)] = ContactLayer::EntityNoHit;
+ map[int(BodyLayerType::EntityWallForClimb)] = ContactLayer::EntityWallForClimb;
+ map[int(BodyLayerType::EntityWater)] = ContactLayer::EntityWater;
+ return map[int(type)];
+}
+
+BodyLayerType getBodyLayerType(ContactLayer layer) {
+ for (int i = 0; i < NumBodyLayerTypes; ++i) {
+ auto type = static_cast<BodyLayerType>(i);
+ if (int(getContactLayerForBodyLayerType(type)) == int(layer))
+ return type;
+ }
+ return BodyLayerType::Invalid;
+}
} // namespace ksys::phys
diff --git a/src/KingSystem/Physics/StaticCompound/physStaticCompoundInfo.h b/src/KingSystem/Physics/System/physStaticCompoundInfo.h
index dfd31ed9..dfd31ed9 100644
--- a/src/KingSystem/Physics/StaticCompound/physStaticCompoundInfo.h
+++ b/src/KingSystem/Physics/System/physStaticCompoundInfo.h
diff --git a/src/KingSystem/Physics/StaticCompound/physStaticCompoundMgr.cpp b/src/KingSystem/Physics/System/physStaticCompoundMgr.cpp
index c16285a2..95c4c607 100644
--- a/src/KingSystem/Physics/StaticCompound/physStaticCompoundMgr.cpp
+++ b/src/KingSystem/Physics/System/physStaticCompoundMgr.cpp
@@ -1,9 +1,9 @@
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundMgr.h"
+#include "KingSystem/Physics/System/physStaticCompoundMgr.h"
#include <Havok/Physics2012/Internal/Collide/StaticCompound/hkpStaticCompoundShape.h>
#include <prim/seadScopedLock.h>
-#include "KingSystem/Physics/StaticCompound/physStaticCompound.h"
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundInfo.h"
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundRigidBodyGroup.h"
+#include "KingSystem/Physics/System/physStaticCompound.h"
+#include "KingSystem/Physics/System/physStaticCompoundInfo.h"
+#include "KingSystem/Physics/System/physStaticCompoundRigidBodyGroup.h"
#include "KingSystem/Physics/System/physSystem.h"
namespace ksys::phys {
diff --git a/src/KingSystem/Physics/StaticCompound/physStaticCompoundMgr.h b/src/KingSystem/Physics/System/physStaticCompoundMgr.h
index ab84d282..ab84d282 100644
--- a/src/KingSystem/Physics/StaticCompound/physStaticCompoundMgr.h
+++ b/src/KingSystem/Physics/System/physStaticCompoundMgr.h
diff --git a/src/KingSystem/Physics/StaticCompound/physStaticCompoundRigidBodyGroup.cpp b/src/KingSystem/Physics/System/physStaticCompoundRigidBodyGroup.cpp
index 8623a3b3..a3da25c2 100644
--- a/src/KingSystem/Physics/StaticCompound/physStaticCompoundRigidBodyGroup.cpp
+++ b/src/KingSystem/Physics/System/physStaticCompoundRigidBodyGroup.cpp
@@ -1,4 +1,4 @@
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundRigidBodyGroup.h"
+#include "KingSystem/Physics/System/physStaticCompoundRigidBodyGroup.h"
#include <Havok/Common/Base/hkBase.h>
#include <Havok/Physics2012/Dynamics/Entity/hkpRigidBody.h>
#include <Havok/Physics2012/Dynamics/World/hkpPhysicsSystem.h>
@@ -6,8 +6,8 @@
#include "KingSystem/Physics/RigidBody/physRigidBody.h"
#include "KingSystem/Physics/RigidBody/physRigidBodyFromResource.h"
#include "KingSystem/Physics/RigidBody/physRigidBodyParam.h"
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundInfo.h"
-#include "KingSystem/Physics/StaticCompound/physStaticCompoundMgr.h"
+#include "KingSystem/Physics/System/physStaticCompoundInfo.h"
+#include "KingSystem/Physics/System/physStaticCompoundMgr.h"
#include "KingSystem/Physics/System/physSystem.h"
#include "KingSystem/Utils/MathUtil.h"
diff --git a/src/KingSystem/Physics/StaticCompound/physStaticCompoundRigidBodyGroup.h b/src/KingSystem/Physics/System/physStaticCompoundRigidBodyGroup.h
index 21f8df37..21f8df37 100644
--- a/src/KingSystem/Physics/StaticCompound/physStaticCompoundRigidBodyGroup.h
+++ b/src/KingSystem/Physics/System/physStaticCompoundRigidBodyGroup.h
diff --git a/src/KingSystem/Physics/System/physStaticCompoundUtil.cpp b/src/KingSystem/Physics/System/physStaticCompoundUtil.cpp
new file mode 100644
index 00000000..3216d4bf
--- /dev/null
+++ b/src/KingSystem/Physics/System/physStaticCompoundUtil.cpp
@@ -0,0 +1 @@
+#include "KingSystem/Physics/System/physStaticCompoundUtil.h"
diff --git a/src/KingSystem/Physics/StaticCompound/physStaticCompoundUtil.h b/src/KingSystem/Physics/System/physStaticCompoundUtil.h
index 976a6889..976a6889 100644
--- a/src/KingSystem/Physics/StaticCompound/physStaticCompoundUtil.h
+++ b/src/KingSystem/Physics/System/physStaticCompoundUtil.h
diff --git a/src/KingSystem/Physics/System/physSystem.cpp b/src/KingSystem/Physics/System/physSystem.cpp
index acc926fc..2a42ae70 100644
--- a/src/KingSystem/Physics/System/physSystem.cpp
+++ b/src/KingSystem/Physics/System/physSystem.cpp
@@ -6,19 +6,19 @@
#include "KingSystem/Physics/Ragdoll/physRagdollResource.h"
#include "KingSystem/Physics/RigidBody/TeraMesh/physTeraMeshRigidBodyResource.h"
#include "KingSystem/Physics/RigidBody/physRigidBodyResource.h"
-#include "KingSystem/Physics/StaticCompound/physStaticCompound.h"
#include "KingSystem/Physics/SupportBone/physSupportBoneResource.h"
#include "KingSystem/Physics/System/physContactListener.h"
#include "KingSystem/Physics/System/physContactMgr.h"
#include "KingSystem/Physics/System/physContactPointInfo.h"
#include "KingSystem/Physics/System/physEntityGroupFilter.h"
#include "KingSystem/Physics/System/physGroupFilter.h"
+#include "KingSystem/Physics/System/physHavokMemoryAllocator.h"
#include "KingSystem/Physics/System/physLayerContactPointInfo.h"
#include "KingSystem/Physics/System/physMaterialTable.h"
#include "KingSystem/Physics/System/physRayCastRequestMgr.h"
#include "KingSystem/Physics/System/physSensorGroupFilter.h"
+#include "KingSystem/Physics/System/physStaticCompound.h"
#include "KingSystem/Physics/System/physSystemData.h"
-#include "KingSystem/Physics/physHavokMemoryAllocator.h"
#include "KingSystem/Resource/resEntryFactory.h"
#include "KingSystem/Resource/resSystem.h"