@bloomengine/engine 0.3.3 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/native/shared/build.rs +137 -6
- package/package.json +4 -11
- package/native/third_party/JoltPhysics/Build/Android/PerformanceTest/build.gradle +0 -51
- package/native/third_party/JoltPhysics/Build/Android/PerformanceTest/src/main/AndroidManifest.xml +0 -20
- package/native/third_party/JoltPhysics/Build/Android/PerformanceTest/src/main/cpp/CMakeLists.txt +0 -20
- package/native/third_party/JoltPhysics/Build/Android/UnitTests/build.gradle +0 -51
- package/native/third_party/JoltPhysics/Build/Android/UnitTests/src/main/AndroidManifest.xml +0 -20
- package/native/third_party/JoltPhysics/Build/Android/UnitTests/src/main/cpp/CMakeLists.txt +0 -20
- package/native/third_party/JoltPhysics/Build/Android/build.gradle +0 -17
- package/native/third_party/JoltPhysics/Build/Android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/native/third_party/JoltPhysics/Build/Android/gradle/wrapper/gradle-wrapper.properties +0 -5
- package/native/third_party/JoltPhysics/Build/Android/gradle.properties +0 -21
- package/native/third_party/JoltPhysics/Build/Android/gradlew +0 -185
- package/native/third_party/JoltPhysics/Build/Android/gradlew.bat +0 -89
- package/native/third_party/JoltPhysics/Build/Android/settings.gradle +0 -10
- package/native/third_party/JoltPhysics/Build/CMakeLists.txt +0 -449
- package/native/third_party/JoltPhysics/Build/README.md +0 -250
- package/native/third_party/JoltPhysics/Build/cmake_linux_clang_gcc.sh +0 -28
- package/native/third_party/JoltPhysics/Build/cmake_linux_emscripten.sh +0 -19
- package/native/third_party/JoltPhysics/Build/cmake_linux_mingw.sh +0 -19
- package/native/third_party/JoltPhysics/Build/cmake_vs2022_cl.bat +0 -3
- package/native/third_party/JoltPhysics/Build/cmake_vs2022_cl_32bit.bat +0 -3
- package/native/third_party/JoltPhysics/Build/cmake_vs2022_cl_arm.bat +0 -3
- package/native/third_party/JoltPhysics/Build/cmake_vs2022_cl_arm_32bit.bat +0 -4
- package/native/third_party/JoltPhysics/Build/cmake_vs2022_cl_cross_platform_deterministic.bat +0 -3
- package/native/third_party/JoltPhysics/Build/cmake_vs2022_cl_double.bat +0 -3
- package/native/third_party/JoltPhysics/Build/cmake_vs2022_cl_no_object_stream.bat +0 -3
- package/native/third_party/JoltPhysics/Build/cmake_vs2022_clang.bat +0 -10
- package/native/third_party/JoltPhysics/Build/cmake_vs2022_clang_cross_platform_deterministic.bat +0 -10
- package/native/third_party/JoltPhysics/Build/cmake_vs2022_clang_double.bat +0 -10
- package/native/third_party/JoltPhysics/Build/cmake_vs2022_uwp.bat +0 -5
- package/native/third_party/JoltPhysics/Build/cmake_vs2022_uwp_arm.bat +0 -5
- package/native/third_party/JoltPhysics/Build/cmake_vs2026_cl.bat +0 -3
- package/native/third_party/JoltPhysics/Build/cmake_vs2026_cl_cross_platform_deterministic.bat +0 -3
- package/native/third_party/JoltPhysics/Build/cmake_vs2026_cl_double.bat +0 -3
- package/native/third_party/JoltPhysics/Build/cmake_vs2026_clang.bat +0 -10
- package/native/third_party/JoltPhysics/Build/cmake_vs2026_clang_cross_platform_deterministic.bat +0 -10
- package/native/third_party/JoltPhysics/Build/cmake_vs2026_clang_double.bat +0 -10
- package/native/third_party/JoltPhysics/Build/cmake_windows_mingw.sh +0 -19
- package/native/third_party/JoltPhysics/Build/cmake_xcode_ios.sh +0 -4
- package/native/third_party/JoltPhysics/Build/cmake_xcode_macos.sh +0 -4
- package/native/third_party/JoltPhysics/Build/iOS/JoltViewerInfo.plist +0 -34
- package/native/third_party/JoltPhysics/Build/iOS/SamplesInfo.plist +0 -34
- package/native/third_party/JoltPhysics/Build/iOS/UnitTestsInfo.plist +0 -34
- package/native/third_party/JoltPhysics/Build/macOS/icon.icns +0 -0
- package/native/third_party/JoltPhysics/Build/macos_install_vulkan_sdk.sh +0 -13
- package/native/third_party/JoltPhysics/Build/ubuntu24_install_vulkan_sdk.sh +0 -4
- package/native/third_party/JoltPhysics/Jolt/AABBTree/AABBTreeBuilder.cpp +0 -242
- package/native/third_party/JoltPhysics/Jolt/AABBTree/AABBTreeBuilder.h +0 -121
- package/native/third_party/JoltPhysics/Jolt/AABBTree/AABBTreeToBuffer.h +0 -296
- package/native/third_party/JoltPhysics/Jolt/AABBTree/NodeCodec/NodeCodecQuadTreeHalfFloat.h +0 -323
- package/native/third_party/JoltPhysics/Jolt/AABBTree/TriangleCodec/TriangleCodecIndexed8BitPackSOA4Flags.h +0 -555
- package/native/third_party/JoltPhysics/Jolt/ConfigurationString.h +0 -112
- package/native/third_party/JoltPhysics/Jolt/Core/ARMNeon.h +0 -94
- package/native/third_party/JoltPhysics/Jolt/Core/Array.h +0 -713
- package/native/third_party/JoltPhysics/Jolt/Core/Atomics.h +0 -44
- package/native/third_party/JoltPhysics/Jolt/Core/BinaryHeap.h +0 -96
- package/native/third_party/JoltPhysics/Jolt/Core/ByteBuffer.h +0 -74
- package/native/third_party/JoltPhysics/Jolt/Core/Color.cpp +0 -38
- package/native/third_party/JoltPhysics/Jolt/Core/Color.h +0 -98
- package/native/third_party/JoltPhysics/Jolt/Core/Core.h +0 -652
- package/native/third_party/JoltPhysics/Jolt/Core/FPControlWord.h +0 -143
- package/native/third_party/JoltPhysics/Jolt/Core/FPException.h +0 -96
- package/native/third_party/JoltPhysics/Jolt/Core/FPFlushDenormals.h +0 -43
- package/native/third_party/JoltPhysics/Jolt/Core/Factory.cpp +0 -92
- package/native/third_party/JoltPhysics/Jolt/Core/Factory.h +0 -54
- package/native/third_party/JoltPhysics/Jolt/Core/FixedSizeFreeList.h +0 -122
- package/native/third_party/JoltPhysics/Jolt/Core/FixedSizeFreeList.inl +0 -215
- package/native/third_party/JoltPhysics/Jolt/Core/HashCombine.h +0 -234
- package/native/third_party/JoltPhysics/Jolt/Core/HashTable.h +0 -876
- package/native/third_party/JoltPhysics/Jolt/Core/InsertionSort.h +0 -58
- package/native/third_party/JoltPhysics/Jolt/Core/IssueReporting.cpp +0 -27
- package/native/third_party/JoltPhysics/Jolt/Core/IssueReporting.h +0 -38
- package/native/third_party/JoltPhysics/Jolt/Core/JobSystem.h +0 -311
- package/native/third_party/JoltPhysics/Jolt/Core/JobSystem.inl +0 -56
- package/native/third_party/JoltPhysics/Jolt/Core/JobSystemSingleThreaded.cpp +0 -65
- package/native/third_party/JoltPhysics/Jolt/Core/JobSystemSingleThreaded.h +0 -62
- package/native/third_party/JoltPhysics/Jolt/Core/JobSystemThreadPool.cpp +0 -364
- package/native/third_party/JoltPhysics/Jolt/Core/JobSystemThreadPool.h +0 -101
- package/native/third_party/JoltPhysics/Jolt/Core/JobSystemWithBarrier.cpp +0 -230
- package/native/third_party/JoltPhysics/Jolt/Core/JobSystemWithBarrier.h +0 -85
- package/native/third_party/JoltPhysics/Jolt/Core/LinearCurve.cpp +0 -51
- package/native/third_party/JoltPhysics/Jolt/Core/LinearCurve.h +0 -67
- package/native/third_party/JoltPhysics/Jolt/Core/LockFreeHashMap.h +0 -182
- package/native/third_party/JoltPhysics/Jolt/Core/LockFreeHashMap.inl +0 -351
- package/native/third_party/JoltPhysics/Jolt/Core/Memory.cpp +0 -85
- package/native/third_party/JoltPhysics/Jolt/Core/Memory.h +0 -85
- package/native/third_party/JoltPhysics/Jolt/Core/Mutex.h +0 -223
- package/native/third_party/JoltPhysics/Jolt/Core/MutexArray.h +0 -98
- package/native/third_party/JoltPhysics/Jolt/Core/NonCopyable.h +0 -18
- package/native/third_party/JoltPhysics/Jolt/Core/Profiler.cpp +0 -677
- package/native/third_party/JoltPhysics/Jolt/Core/Profiler.h +0 -301
- package/native/third_party/JoltPhysics/Jolt/Core/Profiler.inl +0 -90
- package/native/third_party/JoltPhysics/Jolt/Core/QuickSort.h +0 -137
- package/native/third_party/JoltPhysics/Jolt/Core/RTTI.cpp +0 -149
- package/native/third_party/JoltPhysics/Jolt/Core/RTTI.h +0 -436
- package/native/third_party/JoltPhysics/Jolt/Core/Reference.h +0 -244
- package/native/third_party/JoltPhysics/Jolt/Core/Result.h +0 -174
- package/native/third_party/JoltPhysics/Jolt/Core/STLAlignedAllocator.h +0 -72
- package/native/third_party/JoltPhysics/Jolt/Core/STLAllocator.h +0 -127
- package/native/third_party/JoltPhysics/Jolt/Core/STLLocalAllocator.h +0 -170
- package/native/third_party/JoltPhysics/Jolt/Core/STLTempAllocator.h +0 -80
- package/native/third_party/JoltPhysics/Jolt/Core/ScopeExit.h +0 -49
- package/native/third_party/JoltPhysics/Jolt/Core/Semaphore.cpp +0 -135
- package/native/third_party/JoltPhysics/Jolt/Core/Semaphore.h +0 -68
- package/native/third_party/JoltPhysics/Jolt/Core/StaticArray.h +0 -329
- package/native/third_party/JoltPhysics/Jolt/Core/StreamIn.h +0 -120
- package/native/third_party/JoltPhysics/Jolt/Core/StreamOut.h +0 -97
- package/native/third_party/JoltPhysics/Jolt/Core/StreamUtils.h +0 -168
- package/native/third_party/JoltPhysics/Jolt/Core/StreamWrapper.h +0 -53
- package/native/third_party/JoltPhysics/Jolt/Core/StridedPtr.h +0 -63
- package/native/third_party/JoltPhysics/Jolt/Core/StringTools.cpp +0 -101
- package/native/third_party/JoltPhysics/Jolt/Core/StringTools.h +0 -38
- package/native/third_party/JoltPhysics/Jolt/Core/TempAllocator.h +0 -209
- package/native/third_party/JoltPhysics/Jolt/Core/TickCounter.cpp +0 -37
- package/native/third_party/JoltPhysics/Jolt/Core/TickCounter.h +0 -58
- package/native/third_party/JoltPhysics/Jolt/Core/UnorderedMap.h +0 -80
- package/native/third_party/JoltPhysics/Jolt/Core/UnorderedSet.h +0 -32
- package/native/third_party/JoltPhysics/Jolt/Geometry/AABox.h +0 -313
- package/native/third_party/JoltPhysics/Jolt/Geometry/AABox4.h +0 -224
- package/native/third_party/JoltPhysics/Jolt/Geometry/ClipPoly.h +0 -200
- package/native/third_party/JoltPhysics/Jolt/Geometry/ClosestPoint.h +0 -498
- package/native/third_party/JoltPhysics/Jolt/Geometry/ConvexHullBuilder.cpp +0 -1467
- package/native/third_party/JoltPhysics/Jolt/Geometry/ConvexHullBuilder.h +0 -276
- package/native/third_party/JoltPhysics/Jolt/Geometry/ConvexHullBuilder2D.cpp +0 -335
- package/native/third_party/JoltPhysics/Jolt/Geometry/ConvexHullBuilder2D.h +0 -105
- package/native/third_party/JoltPhysics/Jolt/Geometry/ConvexSupport.h +0 -188
- package/native/third_party/JoltPhysics/Jolt/Geometry/EPAConvexHullBuilder.h +0 -845
- package/native/third_party/JoltPhysics/Jolt/Geometry/EPAPenetrationDepth.h +0 -557
- package/native/third_party/JoltPhysics/Jolt/Geometry/Ellipse.h +0 -77
- package/native/third_party/JoltPhysics/Jolt/Geometry/GJKClosestPoint.h +0 -945
- package/native/third_party/JoltPhysics/Jolt/Geometry/IndexedTriangle.h +0 -130
- package/native/third_party/JoltPhysics/Jolt/Geometry/Indexify.cpp +0 -222
- package/native/third_party/JoltPhysics/Jolt/Geometry/Indexify.h +0 -19
- package/native/third_party/JoltPhysics/Jolt/Geometry/MortonCode.h +0 -40
- package/native/third_party/JoltPhysics/Jolt/Geometry/OrientedBox.cpp +0 -178
- package/native/third_party/JoltPhysics/Jolt/Geometry/OrientedBox.h +0 -39
- package/native/third_party/JoltPhysics/Jolt/Geometry/Plane.h +0 -104
- package/native/third_party/JoltPhysics/Jolt/Geometry/RayAABox.h +0 -241
- package/native/third_party/JoltPhysics/Jolt/Geometry/RayCapsule.h +0 -37
- package/native/third_party/JoltPhysics/Jolt/Geometry/RayCylinder.h +0 -101
- package/native/third_party/JoltPhysics/Jolt/Geometry/RaySphere.h +0 -96
- package/native/third_party/JoltPhysics/Jolt/Geometry/RayTriangle.h +0 -158
- package/native/third_party/JoltPhysics/Jolt/Geometry/Sphere.h +0 -72
- package/native/third_party/JoltPhysics/Jolt/Geometry/Triangle.h +0 -34
- package/native/third_party/JoltPhysics/Jolt/Jolt.cmake +0 -703
- package/native/third_party/JoltPhysics/Jolt/Jolt.h +0 -16
- package/native/third_party/JoltPhysics/Jolt/Jolt.natvis +0 -116
- package/native/third_party/JoltPhysics/Jolt/Math/BVec16.h +0 -99
- package/native/third_party/JoltPhysics/Jolt/Math/BVec16.inl +0 -177
- package/native/third_party/JoltPhysics/Jolt/Math/DMat44.h +0 -158
- package/native/third_party/JoltPhysics/Jolt/Math/DMat44.inl +0 -310
- package/native/third_party/JoltPhysics/Jolt/Math/DVec3.h +0 -291
- package/native/third_party/JoltPhysics/Jolt/Math/DVec3.inl +0 -941
- package/native/third_party/JoltPhysics/Jolt/Math/Double3.h +0 -48
- package/native/third_party/JoltPhysics/Jolt/Math/DynMatrix.h +0 -31
- package/native/third_party/JoltPhysics/Jolt/Math/EigenValueSymmetric.h +0 -177
- package/native/third_party/JoltPhysics/Jolt/Math/FindRoot.h +0 -42
- package/native/third_party/JoltPhysics/Jolt/Math/Float2.h +0 -36
- package/native/third_party/JoltPhysics/Jolt/Math/Float3.h +0 -50
- package/native/third_party/JoltPhysics/Jolt/Math/Float4.h +0 -44
- package/native/third_party/JoltPhysics/Jolt/Math/GaussianElimination.h +0 -102
- package/native/third_party/JoltPhysics/Jolt/Math/HalfFloat.h +0 -208
- package/native/third_party/JoltPhysics/Jolt/Math/Mat44.h +0 -243
- package/native/third_party/JoltPhysics/Jolt/Math/Mat44.inl +0 -952
- package/native/third_party/JoltPhysics/Jolt/Math/Math.h +0 -208
- package/native/third_party/JoltPhysics/Jolt/Math/MathTypes.h +0 -32
- package/native/third_party/JoltPhysics/Jolt/Math/Matrix.h +0 -259
- package/native/third_party/JoltPhysics/Jolt/Math/Quat.h +0 -268
- package/native/third_party/JoltPhysics/Jolt/Math/Quat.inl +0 -406
- package/native/third_party/JoltPhysics/Jolt/Math/Real.h +0 -44
- package/native/third_party/JoltPhysics/Jolt/Math/Swizzle.h +0 -19
- package/native/third_party/JoltPhysics/Jolt/Math/Trigonometry.h +0 -79
- package/native/third_party/JoltPhysics/Jolt/Math/UVec4.h +0 -232
- package/native/third_party/JoltPhysics/Jolt/Math/UVec4.inl +0 -636
- package/native/third_party/JoltPhysics/Jolt/Math/Vec3.cpp +0 -71
- package/native/third_party/JoltPhysics/Jolt/Math/Vec3.h +0 -308
- package/native/third_party/JoltPhysics/Jolt/Math/Vec3.inl +0 -942
- package/native/third_party/JoltPhysics/Jolt/Math/Vec4.h +0 -320
- package/native/third_party/JoltPhysics/Jolt/Math/Vec4.inl +0 -1152
- package/native/third_party/JoltPhysics/Jolt/Math/Vector.h +0 -211
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/GetPrimitiveTypeOfType.h +0 -54
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStream.cpp +0 -38
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStream.h +0 -337
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamBinaryIn.cpp +0 -252
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamBinaryIn.h +0 -57
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamBinaryOut.cpp +0 -165
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamBinaryOut.h +0 -57
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamIn.cpp +0 -635
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamIn.h +0 -148
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamOut.cpp +0 -166
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamOut.h +0 -101
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamTextIn.cpp +0 -418
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamTextIn.h +0 -55
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamTextOut.cpp +0 -255
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamTextOut.h +0 -62
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/ObjectStreamTypes.h +0 -26
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/SerializableAttribute.h +0 -111
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/SerializableAttributeEnum.h +0 -67
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/SerializableAttributeTyped.h +0 -60
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/SerializableObject.cpp +0 -15
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/SerializableObject.h +0 -170
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/TypeDeclarations.cpp +0 -70
- package/native/third_party/JoltPhysics/Jolt/ObjectStream/TypeDeclarations.h +0 -45
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/AllowedDOFs.h +0 -68
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/Body.cpp +0 -426
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/Body.h +0 -452
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/Body.inl +0 -197
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyAccess.h +0 -68
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyActivationListener.h +0 -28
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyCreationSettings.cpp +0 -234
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyCreationSettings.h +0 -124
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyFilter.h +0 -130
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyID.h +0 -101
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyInterface.cpp +0 -1099
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyInterface.h +0 -324
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyLock.h +0 -111
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyLockInterface.h +0 -134
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyLockMulti.h +0 -120
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyManager.cpp +0 -1220
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyManager.h +0 -403
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyPair.h +0 -36
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/BodyType.h +0 -19
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/MassProperties.cpp +0 -185
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/MassProperties.h +0 -58
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/MotionProperties.cpp +0 -92
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/MotionProperties.h +0 -308
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/MotionProperties.inl +0 -178
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/MotionQuality.h +0 -31
- package/native/third_party/JoltPhysics/Jolt/Physics/Body/MotionType.h +0 -17
- package/native/third_party/JoltPhysics/Jolt/Physics/Character/Character.cpp +0 -354
- package/native/third_party/JoltPhysics/Jolt/Physics/Character/Character.h +0 -159
- package/native/third_party/JoltPhysics/Jolt/Physics/Character/CharacterBase.cpp +0 -59
- package/native/third_party/JoltPhysics/Jolt/Physics/Character/CharacterBase.h +0 -157
- package/native/third_party/JoltPhysics/Jolt/Physics/Character/CharacterID.h +0 -98
- package/native/third_party/JoltPhysics/Jolt/Physics/Character/CharacterVirtual.cpp +0 -1933
- package/native/third_party/JoltPhysics/Jolt/Physics/Character/CharacterVirtual.h +0 -752
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/AABoxCast.h +0 -20
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/ActiveEdgeMode.h +0 -17
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/ActiveEdges.h +0 -114
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BackFaceMode.h +0 -16
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/BroadPhase.cpp +0 -16
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/BroadPhase.h +0 -109
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/BroadPhaseBruteForce.cpp +0 -313
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/BroadPhaseBruteForce.h +0 -38
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/BroadPhaseLayer.h +0 -148
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/BroadPhaseLayerInterfaceMask.h +0 -92
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/BroadPhaseLayerInterfaceTable.h +0 -64
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/BroadPhaseQuadTree.cpp +0 -629
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/BroadPhaseQuadTree.h +0 -108
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/BroadPhaseQuery.h +0 -56
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/ObjectVsBroadPhaseLayerFilterMask.h +0 -35
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/ObjectVsBroadPhaseLayerFilterTable.h +0 -66
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/QuadTree.cpp +0 -1768
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/BroadPhase/QuadTree.h +0 -389
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CastConvexVsTriangles.cpp +0 -107
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CastConvexVsTriangles.h +0 -46
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CastResult.h +0 -37
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CastSphereVsTriangles.cpp +0 -223
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CastSphereVsTriangles.h +0 -49
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollectFacesMode.h +0 -16
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollideConvexVsTriangles.cpp +0 -155
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollideConvexVsTriangles.h +0 -56
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollidePointResult.h +0 -25
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollideShape.h +0 -106
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollideShapeVsShapePerLeaf.h +0 -94
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollideSoftBodyVertexIterator.h +0 -110
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollideSoftBodyVerticesVsTriangles.h +0 -102
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollideSphereVsTriangles.cpp +0 -121
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollideSphereVsTriangles.h +0 -50
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollisionCollector.h +0 -109
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollisionCollectorImpl.h +0 -219
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollisionDispatch.cpp +0 -107
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollisionDispatch.h +0 -97
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollisionGroup.cpp +0 -35
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/CollisionGroup.h +0 -97
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/ContactListener.h +0 -143
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/EstimateCollisionResponse.cpp +0 -213
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/EstimateCollisionResponse.h +0 -48
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/GroupFilter.cpp +0 -32
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/GroupFilter.h +0 -46
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/GroupFilterTable.cpp +0 -38
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/GroupFilterTable.h +0 -130
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/InternalEdgeRemovingCollector.h +0 -279
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/ManifoldBetweenTwoFaces.cpp +0 -271
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/ManifoldBetweenTwoFaces.h +0 -44
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/NarrowPhaseQuery.cpp +0 -448
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/NarrowPhaseQuery.h +0 -77
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/NarrowPhaseStats.cpp +0 -62
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/NarrowPhaseStats.h +0 -110
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/ObjectLayer.h +0 -111
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/ObjectLayerPairFilterMask.h +0 -52
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/ObjectLayerPairFilterTable.h +0 -78
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/PhysicsMaterial.cpp +0 -35
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/PhysicsMaterial.h +0 -57
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/PhysicsMaterialSimple.cpp +0 -38
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/PhysicsMaterialSimple.h +0 -37
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/RayCast.h +0 -87
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/BoxShape.cpp +0 -318
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/BoxShape.h +0 -115
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/CapsuleShape.cpp +0 -438
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/CapsuleShape.h +0 -129
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/CompoundShape.cpp +0 -433
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/CompoundShape.h +0 -354
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/CompoundShapeVisitors.h +0 -461
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/ConvexHullShape.cpp +0 -1311
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/ConvexHullShape.h +0 -202
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/ConvexShape.cpp +0 -566
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/ConvexShape.h +0 -150
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/CylinderShape.cpp +0 -418
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/CylinderShape.h +0 -126
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/DecoratedShape.cpp +0 -87
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/DecoratedShape.h +0 -80
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/EmptyShape.cpp +0 -64
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/EmptyShape.h +0 -75
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/GetTrianglesContext.h +0 -248
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/HeightFieldShape.cpp +0 -2754
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/HeightFieldShape.h +0 -380
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/MeshShape.cpp +0 -1305
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/MeshShape.h +0 -228
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/MutableCompoundShape.cpp +0 -596
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/MutableCompoundShape.h +0 -176
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/OffsetCenterOfMassShape.cpp +0 -217
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/OffsetCenterOfMassShape.h +0 -140
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/PlaneShape.cpp +0 -541
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/PlaneShape.h +0 -147
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/PolyhedronSubmergedVolumeCalculator.h +0 -319
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/RotatedTranslatedShape.cpp +0 -333
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/RotatedTranslatedShape.h +0 -161
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/ScaleHelpers.h +0 -83
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/ScaledShape.cpp +0 -238
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/ScaledShape.h +0 -145
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/Shape.cpp +0 -325
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/Shape.h +0 -466
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/SphereShape.cpp +0 -347
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/SphereShape.h +0 -125
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/StaticCompoundShape.cpp +0 -674
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/StaticCompoundShape.h +0 -139
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/SubShapeID.h +0 -138
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/SubShapeIDPair.h +0 -65
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/TaperedCapsuleShape.cpp +0 -453
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/TaperedCapsuleShape.gliffy +0 -1
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/TaperedCapsuleShape.h +0 -135
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/TaperedCylinderShape.cpp +0 -691
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/TaperedCylinderShape.h +0 -132
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/TriangleShape.cpp +0 -430
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/Shape/TriangleShape.h +0 -143
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/ShapeCast.h +0 -173
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/ShapeFilter.h +0 -73
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/SimShapeFilter.h +0 -40
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/SimShapeFilterWrapper.h +0 -58
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/SortReverseAndStore.h +0 -48
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/TransformedShape.cpp +0 -180
- package/native/third_party/JoltPhysics/Jolt/Physics/Collision/TransformedShape.h +0 -194
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/CalculateSolverSteps.h +0 -70
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConeConstraint.cpp +0 -246
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConeConstraint.h +0 -133
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/Constraint.cpp +0 -73
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/Constraint.h +0 -243
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintManager.cpp +0 -289
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintManager.h +0 -100
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintPart/AngleConstraintPart.h +0 -257
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintPart/AxisConstraintPart.h +0 -682
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintPart/DualAxisConstraintPart.h +0 -276
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintPart/GearConstraintPart.h +0 -195
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintPart/HingeRotationConstraintPart.h +0 -222
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintPart/IndependentAxisConstraintPart.h +0 -246
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintPart/PointConstraintPart.h +0 -239
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintPart/RackAndPinionConstraintPart.h +0 -196
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintPart/RotationEulerConstraintPart.h +0 -283
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintPart/RotationQuatConstraintPart.h +0 -246
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintPart/SpringPart.h +0 -169
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ConstraintPart/SwingTwistConstraintPart.h +0 -597
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ContactConstraintManager.cpp +0 -1804
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/ContactConstraintManager.h +0 -524
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/DistanceConstraint.cpp +0 -266
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/DistanceConstraint.h +0 -120
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/FixedConstraint.cpp +0 -215
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/FixedConstraint.h +0 -96
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/GearConstraint.cpp +0 -188
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/GearConstraint.h +0 -116
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/HingeConstraint.cpp +0 -443
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/HingeConstraint.h +0 -205
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/MotorSettings.cpp +0 -43
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/MotorSettings.h +0 -66
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/PathConstraint.cpp +0 -458
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/PathConstraint.h +0 -191
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/PathConstraintPath.cpp +0 -85
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/PathConstraintPath.h +0 -76
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/PathConstraintPathHermite.cpp +0 -308
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/PathConstraintPathHermite.h +0 -54
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/PointConstraint.cpp +0 -157
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/PointConstraint.h +0 -94
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/PulleyConstraint.cpp +0 -253
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/PulleyConstraint.h +0 -137
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/RackAndPinionConstraint.cpp +0 -189
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/RackAndPinionConstraint.h +0 -118
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/SixDOFConstraint.cpp +0 -900
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/SixDOFConstraint.h +0 -289
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/SliderConstraint.cpp +0 -501
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/SliderConstraint.h +0 -198
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/SpringSettings.cpp +0 -35
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/SpringSettings.h +0 -70
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/SwingTwistConstraint.cpp +0 -524
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/SwingTwistConstraint.h +0 -197
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/TwoBodyConstraint.cpp +0 -56
- package/native/third_party/JoltPhysics/Jolt/Physics/Constraints/TwoBodyConstraint.h +0 -65
- package/native/third_party/JoltPhysics/Jolt/Physics/DeterminismLog.cpp +0 -17
- package/native/third_party/JoltPhysics/Jolt/Physics/DeterminismLog.h +0 -159
- package/native/third_party/JoltPhysics/Jolt/Physics/EActivation.h +0 -16
- package/native/third_party/JoltPhysics/Jolt/Physics/EPhysicsUpdateError.h +0 -37
- package/native/third_party/JoltPhysics/Jolt/Physics/IslandBuilder.cpp +0 -492
- package/native/third_party/JoltPhysics/Jolt/Physics/IslandBuilder.h +0 -144
- package/native/third_party/JoltPhysics/Jolt/Physics/LargeIslandSplitter.cpp +0 -582
- package/native/third_party/JoltPhysics/Jolt/Physics/LargeIslandSplitter.h +0 -187
- package/native/third_party/JoltPhysics/Jolt/Physics/PhysicsLock.h +0 -169
- package/native/third_party/JoltPhysics/Jolt/Physics/PhysicsScene.cpp +0 -261
- package/native/third_party/JoltPhysics/Jolt/Physics/PhysicsScene.h +0 -104
- package/native/third_party/JoltPhysics/Jolt/Physics/PhysicsSettings.h +0 -125
- package/native/third_party/JoltPhysics/Jolt/Physics/PhysicsStepListener.h +0 -37
- package/native/third_party/JoltPhysics/Jolt/Physics/PhysicsSystem.cpp +0 -2915
- package/native/third_party/JoltPhysics/Jolt/Physics/PhysicsSystem.h +0 -391
- package/native/third_party/JoltPhysics/Jolt/Physics/PhysicsUpdateContext.cpp +0 -25
- package/native/third_party/JoltPhysics/Jolt/Physics/PhysicsUpdateContext.h +0 -176
- package/native/third_party/JoltPhysics/Jolt/Physics/Ragdoll/Ragdoll.cpp +0 -744
- package/native/third_party/JoltPhysics/Jolt/Physics/Ragdoll/Ragdoll.h +0 -245
- package/native/third_party/JoltPhysics/Jolt/Physics/SoftBody/SoftBodyContactListener.h +0 -55
- package/native/third_party/JoltPhysics/Jolt/Physics/SoftBody/SoftBodyCreationSettings.cpp +0 -128
- package/native/third_party/JoltPhysics/Jolt/Physics/SoftBody/SoftBodyCreationSettings.h +0 -75
- package/native/third_party/JoltPhysics/Jolt/Physics/SoftBody/SoftBodyManifold.h +0 -74
- package/native/third_party/JoltPhysics/Jolt/Physics/SoftBody/SoftBodyMotionProperties.cpp +0 -1501
- package/native/third_party/JoltPhysics/Jolt/Physics/SoftBody/SoftBodyMotionProperties.h +0 -333
- package/native/third_party/JoltPhysics/Jolt/Physics/SoftBody/SoftBodyShape.cpp +0 -354
- package/native/third_party/JoltPhysics/Jolt/Physics/SoftBody/SoftBodyShape.h +0 -73
- package/native/third_party/JoltPhysics/Jolt/Physics/SoftBody/SoftBodySharedSettings.cpp +0 -1487
- package/native/third_party/JoltPhysics/Jolt/Physics/SoftBody/SoftBodySharedSettings.h +0 -390
- package/native/third_party/JoltPhysics/Jolt/Physics/SoftBody/SoftBodyUpdateContext.h +0 -63
- package/native/third_party/JoltPhysics/Jolt/Physics/SoftBody/SoftBodyVertex.h +0 -36
- package/native/third_party/JoltPhysics/Jolt/Physics/StateRecorder.h +0 -136
- package/native/third_party/JoltPhysics/Jolt/Physics/StateRecorderImpl.cpp +0 -90
- package/native/third_party/JoltPhysics/Jolt/Physics/StateRecorderImpl.h +0 -50
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/MotorcycleController.cpp +0 -306
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/MotorcycleController.h +0 -119
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/TrackedVehicleController.cpp +0 -547
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/TrackedVehicleController.h +0 -169
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleAntiRollBar.cpp +0 -33
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleAntiRollBar.h +0 -33
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleCollisionTester.cpp +0 -376
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleCollisionTester.h +0 -146
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleConstraint.cpp +0 -703
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleConstraint.h +0 -252
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleController.cpp +0 -17
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleController.h +0 -87
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleDifferential.cpp +0 -81
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleDifferential.h +0 -39
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleEngine.cpp +0 -122
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleEngine.h +0 -93
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleTrack.cpp +0 -52
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleTrack.h +0 -56
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleTransmission.cpp +0 -159
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/VehicleTransmission.h +0 -87
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/Wheel.cpp +0 -93
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/Wheel.h +0 -148
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/WheeledVehicleController.cpp +0 -866
- package/native/third_party/JoltPhysics/Jolt/Physics/Vehicle/WheeledVehicleController.h +0 -205
- package/native/third_party/JoltPhysics/Jolt/RegisterTypes.cpp +0 -204
- package/native/third_party/JoltPhysics/Jolt/RegisterTypes.h +0 -29
- package/native/third_party/JoltPhysics/Jolt/Renderer/DebugRenderer.cpp +0 -1107
- package/native/third_party/JoltPhysics/Jolt/Renderer/DebugRenderer.h +0 -383
- package/native/third_party/JoltPhysics/Jolt/Renderer/DebugRendererPlayback.cpp +0 -168
- package/native/third_party/JoltPhysics/Jolt/Renderer/DebugRendererPlayback.h +0 -48
- package/native/third_party/JoltPhysics/Jolt/Renderer/DebugRendererRecorder.cpp +0 -158
- package/native/third_party/JoltPhysics/Jolt/Renderer/DebugRendererRecorder.h +0 -130
- package/native/third_party/JoltPhysics/Jolt/Renderer/DebugRendererSimple.cpp +0 -80
- package/native/third_party/JoltPhysics/Jolt/Renderer/DebugRendererSimple.h +0 -88
- package/native/third_party/JoltPhysics/Jolt/Skeleton/SkeletalAnimation.cpp +0 -165
- package/native/third_party/JoltPhysics/Jolt/Skeleton/SkeletalAnimation.h +0 -91
- package/native/third_party/JoltPhysics/Jolt/Skeleton/Skeleton.cpp +0 -82
- package/native/third_party/JoltPhysics/Jolt/Skeleton/Skeleton.h +0 -72
- package/native/third_party/JoltPhysics/Jolt/Skeleton/SkeletonMapper.cpp +0 -237
- package/native/third_party/JoltPhysics/Jolt/Skeleton/SkeletonMapper.h +0 -145
- package/native/third_party/JoltPhysics/Jolt/Skeleton/SkeletonPose.cpp +0 -87
- package/native/third_party/JoltPhysics/Jolt/Skeleton/SkeletonPose.h +0 -82
- package/native/third_party/JoltPhysics/Jolt/TriangleSplitter/TriangleSplitter.cpp +0 -73
- package/native/third_party/JoltPhysics/Jolt/TriangleSplitter/TriangleSplitter.h +0 -84
- package/native/third_party/JoltPhysics/Jolt/TriangleSplitter/TriangleSplitterBinning.cpp +0 -139
- package/native/third_party/JoltPhysics/Jolt/TriangleSplitter/TriangleSplitterBinning.h +0 -52
- package/native/third_party/JoltPhysics/Jolt/TriangleSplitter/TriangleSplitterMean.cpp +0 -43
- package/native/third_party/JoltPhysics/Jolt/TriangleSplitter/TriangleSplitterMean.h +0 -28
- package/native/third_party/JoltPhysics/LICENSE +0 -7
- package/native/third_party/JoltPhysics/README.md +0 -173
- package/native/third_party/bloom_jolt/CMakeLists.txt +0 -87
- package/native/third_party/bloom_jolt/include/bloom_jolt.h +0 -519
- package/native/third_party/bloom_jolt/src/bloom_jolt.cpp +0 -1780
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
// Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
|
|
2
|
-
// SPDX-FileCopyrightText: 2021 Jorrit Rouwe
|
|
3
|
-
// SPDX-License-Identifier: MIT
|
|
4
|
-
|
|
5
|
-
#pragma once
|
|
6
|
-
|
|
7
|
-
JPH_NAMESPACE_BEGIN
|
|
8
|
-
|
|
9
|
-
RMat44 Body::GetWorldTransform() const
|
|
10
|
-
{
|
|
11
|
-
JPH_ASSERT(BodyAccess::sCheckRights(BodyAccess::sPositionAccess(), BodyAccess::EAccess::Read));
|
|
12
|
-
|
|
13
|
-
return RMat44::sRotationTranslation(mRotation, mPosition).PreTranslated(-mShape->GetCenterOfMass());
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
RMat44 Body::GetCenterOfMassTransform() const
|
|
17
|
-
{
|
|
18
|
-
JPH_ASSERT(BodyAccess::sCheckRights(BodyAccess::sPositionAccess(), BodyAccess::EAccess::Read));
|
|
19
|
-
|
|
20
|
-
return RMat44::sRotationTranslation(mRotation, mPosition);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
RMat44 Body::GetInverseCenterOfMassTransform() const
|
|
24
|
-
{
|
|
25
|
-
JPH_ASSERT(BodyAccess::sCheckRights(BodyAccess::sPositionAccess(), BodyAccess::EAccess::Read));
|
|
26
|
-
|
|
27
|
-
return RMat44::sInverseRotationTranslation(mRotation, mPosition);
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
inline bool Body::sFindCollidingPairsCanCollide(const Body &inBody1, const Body &inBody2)
|
|
31
|
-
{
|
|
32
|
-
// First body should never be a soft body
|
|
33
|
-
JPH_ASSERT(!inBody1.IsSoftBody());
|
|
34
|
-
|
|
35
|
-
// One of these conditions must be true
|
|
36
|
-
// - We always allow detecting collisions between kinematic and non-dynamic bodies
|
|
37
|
-
// - One of the bodies must be dynamic to collide
|
|
38
|
-
// - A kinematic object can collide with a sensor
|
|
39
|
-
if (!inBody1.GetCollideKinematicVsNonDynamic()
|
|
40
|
-
&& !inBody2.GetCollideKinematicVsNonDynamic()
|
|
41
|
-
&& (!inBody1.IsDynamic() && !inBody2.IsDynamic())
|
|
42
|
-
&& !(inBody1.IsKinematic() && inBody2.IsSensor())
|
|
43
|
-
&& !(inBody2.IsKinematic() && inBody1.IsSensor()))
|
|
44
|
-
return false;
|
|
45
|
-
|
|
46
|
-
// Check that body 1 is active
|
|
47
|
-
uint32 body1_index_in_active_bodies = inBody1.GetIndexInActiveBodiesInternal();
|
|
48
|
-
JPH_ASSERT(!inBody1.IsStatic() && body1_index_in_active_bodies != Body::cInactiveIndex, "This function assumes that Body 1 is active");
|
|
49
|
-
|
|
50
|
-
// If the pair A, B collides we need to ensure that the pair B, A does not collide or else we will handle the collision twice.
|
|
51
|
-
// If A is the same body as B we don't want to collide (1)
|
|
52
|
-
// If A is dynamic / kinematic and B is static we should collide (2)
|
|
53
|
-
// If A is dynamic / kinematic and B is dynamic / kinematic we should only collide if
|
|
54
|
-
// - A is active and B is not active (3)
|
|
55
|
-
// - A is active and B will become active during this simulation step (4)
|
|
56
|
-
// - A is active and B is active, we require a condition that makes A, B collide and B, A not (5)
|
|
57
|
-
//
|
|
58
|
-
// In order to implement this we use the index in the active body list and make use of the fact that
|
|
59
|
-
// a body not in the active list has Body.Index = 0xffffffff which is the highest possible value for an uint32.
|
|
60
|
-
//
|
|
61
|
-
// Because we know that A is active we know that A.Index != 0xffffffff:
|
|
62
|
-
// (1) Because A.Index != 0xffffffff, if A.Index = B.Index then A = B, so to collide A.Index != B.Index
|
|
63
|
-
// (2) A.Index != 0xffffffff, B.Index = 0xffffffff (because it's static and cannot be in the active list), so to collide A.Index != B.Index
|
|
64
|
-
// (3) A.Index != 0xffffffff, B.Index = 0xffffffff (because it's not yet active), so to collide A.Index != B.Index
|
|
65
|
-
// (4) A.Index != 0xffffffff, B.Index = 0xffffffff currently. But it can activate during the Broad/NarrowPhase step at which point it
|
|
66
|
-
// will be added to the end of the active list which will make B.Index > A.Index (this holds only true when we don't deactivate
|
|
67
|
-
// bodies during the Broad/NarrowPhase step), so to collide A.Index < B.Index.
|
|
68
|
-
// (5) As tie breaker we can use the same condition A.Index < B.Index to collide, this means that if A, B collides then B, A won't
|
|
69
|
-
static_assert(Body::cInactiveIndex == 0xffffffff, "The algorithm below uses this value");
|
|
70
|
-
if (!inBody2.IsSoftBody() && body1_index_in_active_bodies >= inBody2.GetIndexInActiveBodiesInternal())
|
|
71
|
-
return false;
|
|
72
|
-
JPH_ASSERT(inBody1.GetID() != inBody2.GetID(), "Read the comment above, A and B are the same body which should not be possible!");
|
|
73
|
-
|
|
74
|
-
// Check collision group filter
|
|
75
|
-
if (!inBody1.GetCollisionGroup().CanCollide(inBody2.GetCollisionGroup()))
|
|
76
|
-
return false;
|
|
77
|
-
|
|
78
|
-
return true;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
void Body::AddRotationStep(Vec3Arg inAngularVelocityTimesDeltaTime)
|
|
82
|
-
{
|
|
83
|
-
JPH_ASSERT(IsRigidBody());
|
|
84
|
-
JPH_ASSERT(BodyAccess::sCheckRights(BodyAccess::sPositionAccess(), BodyAccess::EAccess::ReadWrite));
|
|
85
|
-
|
|
86
|
-
// This used to use the equation: d/dt R(t) = 1/2 * w(t) * R(t) so that R(t + dt) = R(t) + 1/2 * w(t) * R(t) * dt
|
|
87
|
-
// See: Appendix B of An Introduction to Physically Based Modeling: Rigid Body Simulation II-Nonpenetration Constraints
|
|
88
|
-
// URL: https://www.cs.cmu.edu/~baraff/sigcourse/notesd2.pdf
|
|
89
|
-
// But this is a first order approximation and does not work well for kinematic ragdolls that are driven to a new
|
|
90
|
-
// pose if the poses differ enough. So now we split w(t) * dt into an axis and angle part and create a quaternion with it.
|
|
91
|
-
// Note that the resulting quaternion is normalized since otherwise numerical drift will eventually make the rotation non-normalized.
|
|
92
|
-
float len = inAngularVelocityTimesDeltaTime.Length();
|
|
93
|
-
if (len > 1.0e-6f)
|
|
94
|
-
{
|
|
95
|
-
mRotation = (Quat::sRotation(inAngularVelocityTimesDeltaTime / len, len) * mRotation).Normalized();
|
|
96
|
-
JPH_ASSERT(!mRotation.IsNaN());
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
void Body::SubRotationStep(Vec3Arg inAngularVelocityTimesDeltaTime)
|
|
101
|
-
{
|
|
102
|
-
JPH_ASSERT(IsRigidBody());
|
|
103
|
-
JPH_ASSERT(BodyAccess::sCheckRights(BodyAccess::sPositionAccess(), BodyAccess::EAccess::ReadWrite));
|
|
104
|
-
|
|
105
|
-
// See comment at Body::AddRotationStep
|
|
106
|
-
float len = inAngularVelocityTimesDeltaTime.Length();
|
|
107
|
-
if (len > 1.0e-6f)
|
|
108
|
-
{
|
|
109
|
-
mRotation = (Quat::sRotation(inAngularVelocityTimesDeltaTime / len, -len) * mRotation).Normalized();
|
|
110
|
-
JPH_ASSERT(!mRotation.IsNaN());
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
Vec3 Body::GetWorldSpaceSurfaceNormal(const SubShapeID &inSubShapeID, RVec3Arg inPosition) const
|
|
115
|
-
{
|
|
116
|
-
RMat44 inv_com = GetInverseCenterOfMassTransform();
|
|
117
|
-
return inv_com.Multiply3x3Transposed(mShape->GetSurfaceNormal(inSubShapeID, Vec3(inv_com * inPosition))).Normalized();
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
Mat44 Body::GetInverseInertia() const
|
|
121
|
-
{
|
|
122
|
-
JPH_ASSERT(IsDynamic());
|
|
123
|
-
|
|
124
|
-
return GetMotionProperties()->GetInverseInertiaForRotation(Mat44::sRotation(mRotation));
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
void Body::AddForce(Vec3Arg inForce, RVec3Arg inPosition)
|
|
128
|
-
{
|
|
129
|
-
AddForce(inForce);
|
|
130
|
-
AddTorque(Vec3(inPosition - mPosition).Cross(inForce));
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
void Body::AddImpulse(Vec3Arg inImpulse)
|
|
134
|
-
{
|
|
135
|
-
JPH_ASSERT(IsDynamic());
|
|
136
|
-
|
|
137
|
-
SetLinearVelocityClamped(mMotionProperties->GetLinearVelocity() + inImpulse * mMotionProperties->GetInverseMass());
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
void Body::AddImpulse(Vec3Arg inImpulse, RVec3Arg inPosition)
|
|
141
|
-
{
|
|
142
|
-
JPH_ASSERT(IsDynamic());
|
|
143
|
-
|
|
144
|
-
SetLinearVelocityClamped(mMotionProperties->GetLinearVelocity() + inImpulse * mMotionProperties->GetInverseMass());
|
|
145
|
-
|
|
146
|
-
SetAngularVelocityClamped(mMotionProperties->GetAngularVelocity() + mMotionProperties->MultiplyWorldSpaceInverseInertiaByVector(mRotation, Vec3(inPosition - mPosition).Cross(inImpulse)));
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
void Body::AddAngularImpulse(Vec3Arg inAngularImpulse)
|
|
150
|
-
{
|
|
151
|
-
JPH_ASSERT(IsDynamic());
|
|
152
|
-
|
|
153
|
-
SetAngularVelocityClamped(mMotionProperties->GetAngularVelocity() + mMotionProperties->MultiplyWorldSpaceInverseInertiaByVector(mRotation, inAngularImpulse));
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
void Body::GetSleepTestPoints(RVec3 *outPoints) const
|
|
157
|
-
{
|
|
158
|
-
JPH_ASSERT(BodyAccess::sCheckRights(BodyAccess::sPositionAccess(), BodyAccess::EAccess::Read));
|
|
159
|
-
|
|
160
|
-
// Center of mass is the first position
|
|
161
|
-
outPoints[0] = mPosition;
|
|
162
|
-
|
|
163
|
-
// The second and third position are on the largest axis of the bounding box
|
|
164
|
-
Vec3 extent = mShape->GetLocalBounds().GetExtent();
|
|
165
|
-
int lowest_component = extent.GetLowestComponentIndex();
|
|
166
|
-
Mat44 rotation = Mat44::sRotation(mRotation);
|
|
167
|
-
switch (lowest_component)
|
|
168
|
-
{
|
|
169
|
-
case 0:
|
|
170
|
-
outPoints[1] = mPosition + extent.GetY() * rotation.GetColumn3(1);
|
|
171
|
-
outPoints[2] = mPosition + extent.GetZ() * rotation.GetColumn3(2);
|
|
172
|
-
break;
|
|
173
|
-
|
|
174
|
-
case 1:
|
|
175
|
-
outPoints[1] = mPosition + extent.GetX() * rotation.GetColumn3(0);
|
|
176
|
-
outPoints[2] = mPosition + extent.GetZ() * rotation.GetColumn3(2);
|
|
177
|
-
break;
|
|
178
|
-
|
|
179
|
-
case 2:
|
|
180
|
-
outPoints[1] = mPosition + extent.GetX() * rotation.GetColumn3(0);
|
|
181
|
-
outPoints[2] = mPosition + extent.GetY() * rotation.GetColumn3(1);
|
|
182
|
-
break;
|
|
183
|
-
|
|
184
|
-
default:
|
|
185
|
-
JPH_ASSERT(false);
|
|
186
|
-
break;
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
void Body::ResetSleepTimer()
|
|
191
|
-
{
|
|
192
|
-
RVec3 points[3];
|
|
193
|
-
GetSleepTestPoints(points);
|
|
194
|
-
mMotionProperties->ResetSleepTestSpheres(points);
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
JPH_NAMESPACE_END
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
// Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
|
|
2
|
-
// SPDX-FileCopyrightText: 2021 Jorrit Rouwe
|
|
3
|
-
// SPDX-License-Identifier: MIT
|
|
4
|
-
|
|
5
|
-
#pragma once
|
|
6
|
-
|
|
7
|
-
#ifdef JPH_ENABLE_ASSERTS
|
|
8
|
-
|
|
9
|
-
JPH_NAMESPACE_BEGIN
|
|
10
|
-
|
|
11
|
-
class JPH_EXPORT BodyAccess
|
|
12
|
-
{
|
|
13
|
-
public:
|
|
14
|
-
/// Access rules, used to detect race conditions during simulation
|
|
15
|
-
enum class EAccess : uint8
|
|
16
|
-
{
|
|
17
|
-
None = 0,
|
|
18
|
-
Read = 1,
|
|
19
|
-
ReadWrite = 3,
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
/// Grant a scope specific access rights on the current thread
|
|
23
|
-
class Grant
|
|
24
|
-
{
|
|
25
|
-
public:
|
|
26
|
-
inline Grant(EAccess inVelocity, EAccess inPosition)
|
|
27
|
-
{
|
|
28
|
-
EAccess &velocity = sVelocityAccess();
|
|
29
|
-
EAccess &position = sPositionAccess();
|
|
30
|
-
|
|
31
|
-
JPH_ASSERT(velocity == EAccess::ReadWrite);
|
|
32
|
-
JPH_ASSERT(position == EAccess::ReadWrite);
|
|
33
|
-
|
|
34
|
-
velocity = inVelocity;
|
|
35
|
-
position = inPosition;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
inline ~Grant()
|
|
39
|
-
{
|
|
40
|
-
sVelocityAccess() = EAccess::ReadWrite;
|
|
41
|
-
sPositionAccess() = EAccess::ReadWrite;
|
|
42
|
-
}
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
/// Check if we have permission
|
|
46
|
-
static inline bool sCheckRights(EAccess inRights, EAccess inDesiredRights)
|
|
47
|
-
{
|
|
48
|
-
return (uint8(inRights) & uint8(inDesiredRights)) == uint8(inDesiredRights);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
/// Access to read/write velocities
|
|
52
|
-
static inline EAccess & sVelocityAccess()
|
|
53
|
-
{
|
|
54
|
-
static thread_local EAccess sAccess = BodyAccess::EAccess::ReadWrite;
|
|
55
|
-
return sAccess;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
/// Access to read/write positions
|
|
59
|
-
static inline EAccess & sPositionAccess()
|
|
60
|
-
{
|
|
61
|
-
static thread_local EAccess sAccess = BodyAccess::EAccess::ReadWrite;
|
|
62
|
-
return sAccess;
|
|
63
|
-
}
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
JPH_NAMESPACE_END
|
|
67
|
-
|
|
68
|
-
#endif // JPH_ENABLE_ASSERTS
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
// Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
|
|
2
|
-
// SPDX-FileCopyrightText: 2021 Jorrit Rouwe
|
|
3
|
-
// SPDX-License-Identifier: MIT
|
|
4
|
-
|
|
5
|
-
#pragma once
|
|
6
|
-
|
|
7
|
-
JPH_NAMESPACE_BEGIN
|
|
8
|
-
|
|
9
|
-
class BodyID;
|
|
10
|
-
|
|
11
|
-
/// A listener class that receives events when a body activates or deactivates.
|
|
12
|
-
/// It can be registered with the BodyManager (or PhysicsSystem).
|
|
13
|
-
class BodyActivationListener
|
|
14
|
-
{
|
|
15
|
-
public:
|
|
16
|
-
/// Ensure virtual destructor
|
|
17
|
-
virtual ~BodyActivationListener() = default;
|
|
18
|
-
|
|
19
|
-
/// Called whenever a body activates, note this can be called from any thread so make sure your code is thread safe.
|
|
20
|
-
/// At the time of the callback the body inBodyID will be locked and no bodies can be written/activated/deactivated from the callback.
|
|
21
|
-
virtual void OnBodyActivated(const BodyID &inBodyID, uint64 inBodyUserData) = 0;
|
|
22
|
-
|
|
23
|
-
/// Called whenever a body deactivates, note this can be called from any thread so make sure your code is thread safe.
|
|
24
|
-
/// At the time of the callback the body inBodyID will be locked and no bodies can be written/activated/deactivated from the callback.
|
|
25
|
-
virtual void OnBodyDeactivated(const BodyID &inBodyID, uint64 inBodyUserData) = 0;
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
JPH_NAMESPACE_END
|
|
@@ -1,234 +0,0 @@
|
|
|
1
|
-
// Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
|
|
2
|
-
// SPDX-FileCopyrightText: 2021 Jorrit Rouwe
|
|
3
|
-
// SPDX-License-Identifier: MIT
|
|
4
|
-
|
|
5
|
-
#include <Jolt/Jolt.h>
|
|
6
|
-
|
|
7
|
-
#include <Jolt/Physics/Body/BodyCreationSettings.h>
|
|
8
|
-
#include <Jolt/ObjectStream/TypeDeclarations.h>
|
|
9
|
-
#include <Jolt/Core/StreamIn.h>
|
|
10
|
-
#include <Jolt/Core/StreamOut.h>
|
|
11
|
-
|
|
12
|
-
JPH_NAMESPACE_BEGIN
|
|
13
|
-
|
|
14
|
-
JPH_IMPLEMENT_SERIALIZABLE_NON_VIRTUAL(BodyCreationSettings)
|
|
15
|
-
{
|
|
16
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mPosition)
|
|
17
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mRotation)
|
|
18
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mLinearVelocity)
|
|
19
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mAngularVelocity)
|
|
20
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mUserData)
|
|
21
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mShape)
|
|
22
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mCollisionGroup)
|
|
23
|
-
JPH_ADD_ENUM_ATTRIBUTE(BodyCreationSettings, mObjectLayer)
|
|
24
|
-
JPH_ADD_ENUM_ATTRIBUTE(BodyCreationSettings, mMotionType)
|
|
25
|
-
JPH_ADD_ENUM_ATTRIBUTE(BodyCreationSettings, mAllowedDOFs)
|
|
26
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mAllowDynamicOrKinematic)
|
|
27
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mIsSensor)
|
|
28
|
-
JPH_ADD_ATTRIBUTE_WITH_ALIAS(BodyCreationSettings, mCollideKinematicVsNonDynamic, "mSensorDetectsStatic") // This is the old name to keep backwards compatibility
|
|
29
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mUseManifoldReduction)
|
|
30
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mApplyGyroscopicForce)
|
|
31
|
-
JPH_ADD_ENUM_ATTRIBUTE(BodyCreationSettings, mMotionQuality)
|
|
32
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mEnhancedInternalEdgeRemoval)
|
|
33
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mAllowSleeping)
|
|
34
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mFriction)
|
|
35
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mRestitution)
|
|
36
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mLinearDamping)
|
|
37
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mAngularDamping)
|
|
38
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mMaxLinearVelocity)
|
|
39
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mMaxAngularVelocity)
|
|
40
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mGravityFactor)
|
|
41
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mNumVelocityStepsOverride)
|
|
42
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mNumPositionStepsOverride)
|
|
43
|
-
JPH_ADD_ENUM_ATTRIBUTE(BodyCreationSettings, mOverrideMassProperties)
|
|
44
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mInertiaMultiplier)
|
|
45
|
-
JPH_ADD_ATTRIBUTE(BodyCreationSettings, mMassPropertiesOverride)
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
void BodyCreationSettings::SaveBinaryState(StreamOut &inStream) const
|
|
49
|
-
{
|
|
50
|
-
inStream.Write(mPosition);
|
|
51
|
-
inStream.Write(mRotation);
|
|
52
|
-
inStream.Write(mLinearVelocity);
|
|
53
|
-
inStream.Write(mAngularVelocity);
|
|
54
|
-
mCollisionGroup.SaveBinaryState(inStream);
|
|
55
|
-
inStream.Write(mObjectLayer);
|
|
56
|
-
inStream.Write(mMotionType);
|
|
57
|
-
inStream.Write(mAllowedDOFs);
|
|
58
|
-
inStream.Write(mAllowDynamicOrKinematic);
|
|
59
|
-
inStream.Write(mIsSensor);
|
|
60
|
-
inStream.Write(mCollideKinematicVsNonDynamic);
|
|
61
|
-
inStream.Write(mUseManifoldReduction);
|
|
62
|
-
inStream.Write(mApplyGyroscopicForce);
|
|
63
|
-
inStream.Write(mMotionQuality);
|
|
64
|
-
inStream.Write(mEnhancedInternalEdgeRemoval);
|
|
65
|
-
inStream.Write(mAllowSleeping);
|
|
66
|
-
inStream.Write(mFriction);
|
|
67
|
-
inStream.Write(mRestitution);
|
|
68
|
-
inStream.Write(mLinearDamping);
|
|
69
|
-
inStream.Write(mAngularDamping);
|
|
70
|
-
inStream.Write(mMaxLinearVelocity);
|
|
71
|
-
inStream.Write(mMaxAngularVelocity);
|
|
72
|
-
inStream.Write(mGravityFactor);
|
|
73
|
-
inStream.Write(mNumVelocityStepsOverride);
|
|
74
|
-
inStream.Write(mNumPositionStepsOverride);
|
|
75
|
-
inStream.Write(mOverrideMassProperties);
|
|
76
|
-
inStream.Write(mInertiaMultiplier);
|
|
77
|
-
mMassPropertiesOverride.SaveBinaryState(inStream);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
void BodyCreationSettings::RestoreBinaryState(StreamIn &inStream)
|
|
81
|
-
{
|
|
82
|
-
inStream.Read(mPosition);
|
|
83
|
-
inStream.Read(mRotation);
|
|
84
|
-
inStream.Read(mLinearVelocity);
|
|
85
|
-
inStream.Read(mAngularVelocity);
|
|
86
|
-
mCollisionGroup.RestoreBinaryState(inStream);
|
|
87
|
-
inStream.Read(mObjectLayer);
|
|
88
|
-
inStream.Read(mMotionType);
|
|
89
|
-
inStream.Read(mAllowedDOFs);
|
|
90
|
-
inStream.Read(mAllowDynamicOrKinematic);
|
|
91
|
-
inStream.Read(mIsSensor);
|
|
92
|
-
inStream.Read(mCollideKinematicVsNonDynamic);
|
|
93
|
-
inStream.Read(mUseManifoldReduction);
|
|
94
|
-
inStream.Read(mApplyGyroscopicForce);
|
|
95
|
-
inStream.Read(mMotionQuality);
|
|
96
|
-
inStream.Read(mEnhancedInternalEdgeRemoval);
|
|
97
|
-
inStream.Read(mAllowSleeping);
|
|
98
|
-
inStream.Read(mFriction);
|
|
99
|
-
inStream.Read(mRestitution);
|
|
100
|
-
inStream.Read(mLinearDamping);
|
|
101
|
-
inStream.Read(mAngularDamping);
|
|
102
|
-
inStream.Read(mMaxLinearVelocity);
|
|
103
|
-
inStream.Read(mMaxAngularVelocity);
|
|
104
|
-
inStream.Read(mGravityFactor);
|
|
105
|
-
inStream.Read(mNumVelocityStepsOverride);
|
|
106
|
-
inStream.Read(mNumPositionStepsOverride);
|
|
107
|
-
inStream.Read(mOverrideMassProperties);
|
|
108
|
-
inStream.Read(mInertiaMultiplier);
|
|
109
|
-
mMassPropertiesOverride.RestoreBinaryState(inStream);
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
Shape::ShapeResult BodyCreationSettings::ConvertShapeSettings()
|
|
113
|
-
{
|
|
114
|
-
// If we already have a shape, return it
|
|
115
|
-
if (mShapePtr != nullptr)
|
|
116
|
-
{
|
|
117
|
-
mShape = nullptr;
|
|
118
|
-
|
|
119
|
-
Shape::ShapeResult result;
|
|
120
|
-
result.Set(const_cast<Shape *>(mShapePtr.GetPtr()));
|
|
121
|
-
return result;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
// Check if we have shape settings
|
|
125
|
-
if (mShape == nullptr)
|
|
126
|
-
{
|
|
127
|
-
Shape::ShapeResult result;
|
|
128
|
-
result.SetError("No shape present!");
|
|
129
|
-
return result;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
// Create the shape
|
|
133
|
-
Shape::ShapeResult result = mShape->Create();
|
|
134
|
-
if (result.IsValid())
|
|
135
|
-
mShapePtr = result.Get();
|
|
136
|
-
mShape = nullptr;
|
|
137
|
-
return result;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
const Shape *BodyCreationSettings::GetShape() const
|
|
141
|
-
{
|
|
142
|
-
// If we already have a shape, return it
|
|
143
|
-
if (mShapePtr != nullptr)
|
|
144
|
-
return mShapePtr;
|
|
145
|
-
|
|
146
|
-
// Check if we have shape settings
|
|
147
|
-
if (mShape == nullptr)
|
|
148
|
-
return nullptr;
|
|
149
|
-
|
|
150
|
-
// Create the shape
|
|
151
|
-
Shape::ShapeResult result = mShape->Create();
|
|
152
|
-
if (result.IsValid())
|
|
153
|
-
return result.Get();
|
|
154
|
-
|
|
155
|
-
Trace("Error: %s", result.GetError().c_str());
|
|
156
|
-
JPH_ASSERT(false, "An error occurred during shape creation. Use ConvertShapeSettings() to convert the shape and get the error!");
|
|
157
|
-
return nullptr;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
MassProperties BodyCreationSettings::GetMassProperties() const
|
|
161
|
-
{
|
|
162
|
-
// Calculate mass properties
|
|
163
|
-
MassProperties mass_properties;
|
|
164
|
-
switch (mOverrideMassProperties)
|
|
165
|
-
{
|
|
166
|
-
case EOverrideMassProperties::CalculateMassAndInertia:
|
|
167
|
-
mass_properties = GetShape()->GetMassProperties();
|
|
168
|
-
mass_properties.mInertia *= mInertiaMultiplier;
|
|
169
|
-
mass_properties.mInertia(3, 3) = 1.0f;
|
|
170
|
-
break;
|
|
171
|
-
case EOverrideMassProperties::CalculateInertia:
|
|
172
|
-
mass_properties = GetShape()->GetMassProperties();
|
|
173
|
-
mass_properties.ScaleToMass(mMassPropertiesOverride.mMass);
|
|
174
|
-
mass_properties.mInertia *= mInertiaMultiplier;
|
|
175
|
-
mass_properties.mInertia(3, 3) = 1.0f;
|
|
176
|
-
break;
|
|
177
|
-
case EOverrideMassProperties::MassAndInertiaProvided:
|
|
178
|
-
mass_properties = mMassPropertiesOverride;
|
|
179
|
-
break;
|
|
180
|
-
}
|
|
181
|
-
return mass_properties;
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
void BodyCreationSettings::SaveWithChildren(StreamOut &inStream, ShapeToIDMap *ioShapeMap, MaterialToIDMap *ioMaterialMap, GroupFilterToIDMap *ioGroupFilterMap) const
|
|
185
|
-
{
|
|
186
|
-
// Save creation settings
|
|
187
|
-
SaveBinaryState(inStream);
|
|
188
|
-
|
|
189
|
-
// Save shape
|
|
190
|
-
if (ioShapeMap != nullptr && ioMaterialMap != nullptr)
|
|
191
|
-
GetShape()->SaveWithChildren(inStream, *ioShapeMap, *ioMaterialMap);
|
|
192
|
-
else
|
|
193
|
-
inStream.Write(~uint32(0));
|
|
194
|
-
|
|
195
|
-
// Save group filter
|
|
196
|
-
StreamUtils::SaveObjectReference(inStream, mCollisionGroup.GetGroupFilter(), ioGroupFilterMap);
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
BodyCreationSettings::BCSResult BodyCreationSettings::sRestoreWithChildren(StreamIn &inStream, IDToShapeMap &ioShapeMap, IDToMaterialMap &ioMaterialMap, IDToGroupFilterMap &ioGroupFilterMap)
|
|
200
|
-
{
|
|
201
|
-
BCSResult result;
|
|
202
|
-
|
|
203
|
-
// Read creation settings
|
|
204
|
-
BodyCreationSettings settings;
|
|
205
|
-
settings.RestoreBinaryState(inStream);
|
|
206
|
-
if (inStream.IsEOF() || inStream.IsFailed())
|
|
207
|
-
{
|
|
208
|
-
result.SetError("Error reading body creation settings");
|
|
209
|
-
return result;
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
// Read shape
|
|
213
|
-
Shape::ShapeResult shape_result = Shape::sRestoreWithChildren(inStream, ioShapeMap, ioMaterialMap);
|
|
214
|
-
if (shape_result.HasError())
|
|
215
|
-
{
|
|
216
|
-
result.SetError(shape_result.GetError());
|
|
217
|
-
return result;
|
|
218
|
-
}
|
|
219
|
-
settings.SetShape(shape_result.Get());
|
|
220
|
-
|
|
221
|
-
// Read group filter
|
|
222
|
-
Result gfresult = StreamUtils::RestoreObjectReference(inStream, ioGroupFilterMap);
|
|
223
|
-
if (gfresult.HasError())
|
|
224
|
-
{
|
|
225
|
-
result.SetError(gfresult.GetError());
|
|
226
|
-
return result;
|
|
227
|
-
}
|
|
228
|
-
settings.mCollisionGroup.SetGroupFilter(gfresult.Get());
|
|
229
|
-
|
|
230
|
-
result.Set(settings);
|
|
231
|
-
return result;
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
JPH_NAMESPACE_END
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
// Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
|
|
2
|
-
// SPDX-FileCopyrightText: 2021 Jorrit Rouwe
|
|
3
|
-
// SPDX-License-Identifier: MIT
|
|
4
|
-
|
|
5
|
-
#pragma once
|
|
6
|
-
|
|
7
|
-
#include <Jolt/Physics/Collision/Shape/Shape.h>
|
|
8
|
-
#include <Jolt/Physics/Collision/ObjectLayer.h>
|
|
9
|
-
#include <Jolt/Physics/Collision/CollisionGroup.h>
|
|
10
|
-
#include <Jolt/Physics/Body/MotionType.h>
|
|
11
|
-
#include <Jolt/Physics/Body/MotionQuality.h>
|
|
12
|
-
#include <Jolt/Physics/Body/AllowedDOFs.h>
|
|
13
|
-
#include <Jolt/ObjectStream/SerializableObject.h>
|
|
14
|
-
#include <Jolt/Core/StreamUtils.h>
|
|
15
|
-
|
|
16
|
-
JPH_NAMESPACE_BEGIN
|
|
17
|
-
|
|
18
|
-
class StreamIn;
|
|
19
|
-
class StreamOut;
|
|
20
|
-
|
|
21
|
-
/// Enum used in BodyCreationSettings to indicate how mass and inertia should be calculated
|
|
22
|
-
enum class EOverrideMassProperties : uint8
|
|
23
|
-
{
|
|
24
|
-
CalculateMassAndInertia, ///< Tells the system to calculate the mass and inertia based on density
|
|
25
|
-
CalculateInertia, ///< Tells the system to take the mass from mMassPropertiesOverride and to calculate the inertia based on density of the shapes and to scale it to the provided mass
|
|
26
|
-
MassAndInertiaProvided ///< Tells the system to take the mass and inertia from mMassPropertiesOverride
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
/// Settings for constructing a rigid body
|
|
30
|
-
class JPH_EXPORT BodyCreationSettings
|
|
31
|
-
{
|
|
32
|
-
JPH_DECLARE_SERIALIZABLE_NON_VIRTUAL(JPH_EXPORT, BodyCreationSettings)
|
|
33
|
-
|
|
34
|
-
public:
|
|
35
|
-
/// Constructor
|
|
36
|
-
BodyCreationSettings() = default;
|
|
37
|
-
BodyCreationSettings(const ShapeSettings *inShape, RVec3Arg inPosition, QuatArg inRotation, EMotionType inMotionType, ObjectLayer inObjectLayer) : mPosition(inPosition), mRotation(inRotation), mObjectLayer(inObjectLayer), mMotionType(inMotionType), mShape(inShape) { }
|
|
38
|
-
BodyCreationSettings(const Shape *inShape, RVec3Arg inPosition, QuatArg inRotation, EMotionType inMotionType, ObjectLayer inObjectLayer) : mPosition(inPosition), mRotation(inRotation), mObjectLayer(inObjectLayer), mMotionType(inMotionType), mShapePtr(inShape) { }
|
|
39
|
-
|
|
40
|
-
/// Access to the shape settings object. This contains serializable (non-runtime optimized) information about the Shape.
|
|
41
|
-
const ShapeSettings * GetShapeSettings() const { return mShape; }
|
|
42
|
-
void SetShapeSettings(const ShapeSettings *inShape) { mShape = inShape; mShapePtr = nullptr; }
|
|
43
|
-
|
|
44
|
-
/// Convert ShapeSettings object into a Shape object. This will free the ShapeSettings object and make the object ready for runtime. Serialization is no longer possible after this.
|
|
45
|
-
Shape::ShapeResult ConvertShapeSettings();
|
|
46
|
-
|
|
47
|
-
/// Access to the run-time shape object. Will convert from ShapeSettings object if needed.
|
|
48
|
-
const Shape * GetShape() const;
|
|
49
|
-
void SetShape(const Shape *inShape) { mShapePtr = inShape; mShape = nullptr; }
|
|
50
|
-
|
|
51
|
-
/// Check if the mass properties of this body will be calculated (only relevant for kinematic or dynamic objects that need a MotionProperties object)
|
|
52
|
-
bool HasMassProperties() const { return mAllowDynamicOrKinematic || mMotionType != EMotionType::Static; }
|
|
53
|
-
|
|
54
|
-
/// Calculate (or return when overridden) the mass and inertia for this body
|
|
55
|
-
MassProperties GetMassProperties() const;
|
|
56
|
-
|
|
57
|
-
/// Saves the state of this object in binary form to inStream. Doesn't store the shape nor the group filter.
|
|
58
|
-
void SaveBinaryState(StreamOut &inStream) const;
|
|
59
|
-
|
|
60
|
-
/// Restore the state of this object from inStream. Doesn't restore the shape nor the group filter.
|
|
61
|
-
void RestoreBinaryState(StreamIn &inStream);
|
|
62
|
-
|
|
63
|
-
using GroupFilterToIDMap = StreamUtils::ObjectToIDMap<GroupFilter>;
|
|
64
|
-
using IDToGroupFilterMap = StreamUtils::IDToObjectMap<GroupFilter>;
|
|
65
|
-
using ShapeToIDMap = Shape::ShapeToIDMap;
|
|
66
|
-
using IDToShapeMap = Shape::IDToShapeMap;
|
|
67
|
-
using MaterialToIDMap = StreamUtils::ObjectToIDMap<PhysicsMaterial>;
|
|
68
|
-
using IDToMaterialMap = StreamUtils::IDToObjectMap<PhysicsMaterial>;
|
|
69
|
-
|
|
70
|
-
/// Save body creation settings, its shape, materials and group filter. Pass in an empty map in ioShapeMap / ioMaterialMap / ioGroupFilterMap or reuse the same map while saving multiple shapes to the same stream in order to avoid writing duplicates.
|
|
71
|
-
/// Pass nullptr to ioShapeMap and ioMaterial map to skip saving shapes
|
|
72
|
-
/// Pass nullptr to ioGroupFilterMap to skip saving group filters
|
|
73
|
-
void SaveWithChildren(StreamOut &inStream, ShapeToIDMap *ioShapeMap, MaterialToIDMap *ioMaterialMap, GroupFilterToIDMap *ioGroupFilterMap) const;
|
|
74
|
-
|
|
75
|
-
using BCSResult = Result<BodyCreationSettings>;
|
|
76
|
-
|
|
77
|
-
/// Restore body creation settings, its shape, materials and group filter. Pass in an empty map in ioShapeMap / ioMaterialMap / ioGroupFilterMap or reuse the same map while reading multiple shapes from the same stream in order to restore duplicates.
|
|
78
|
-
static BCSResult sRestoreWithChildren(StreamIn &inStream, IDToShapeMap &ioShapeMap, IDToMaterialMap &ioMaterialMap, IDToGroupFilterMap &ioGroupFilterMap);
|
|
79
|
-
|
|
80
|
-
RVec3 mPosition = RVec3::sZero(); ///< Position of the body (not of the center of mass)
|
|
81
|
-
Quat mRotation = Quat::sIdentity(); ///< Rotation of the body
|
|
82
|
-
Vec3 mLinearVelocity = Vec3::sZero(); ///< World space linear velocity of the center of mass (m/s)
|
|
83
|
-
Vec3 mAngularVelocity = Vec3::sZero(); ///< World space angular velocity (rad/s)
|
|
84
|
-
|
|
85
|
-
/// User data value (can be used by application)
|
|
86
|
-
uint64 mUserData = 0;
|
|
87
|
-
|
|
88
|
-
///@name Collision settings
|
|
89
|
-
ObjectLayer mObjectLayer = 0; ///< The collision layer this body belongs to (determines if two objects can collide)
|
|
90
|
-
CollisionGroup mCollisionGroup; ///< The collision group this body belongs to (determines if two objects can collide)
|
|
91
|
-
|
|
92
|
-
///@name Simulation properties
|
|
93
|
-
EMotionType mMotionType = EMotionType::Dynamic; ///< Motion type, determines if the object is static, dynamic or kinematic
|
|
94
|
-
EAllowedDOFs mAllowedDOFs = EAllowedDOFs::All; ///< Which degrees of freedom this body has (can be used to limit simulation to 2D)
|
|
95
|
-
bool mAllowDynamicOrKinematic = false; ///< When this body is created as static, this setting tells the system to create a MotionProperties object so that the object can be switched to kinematic or dynamic
|
|
96
|
-
bool mIsSensor = false; ///< If this body is a sensor. A sensor will receive collision callbacks, but will not cause any collision responses and can be used as a trigger volume. See description at Body::SetIsSensor.
|
|
97
|
-
bool mCollideKinematicVsNonDynamic = false; ///< If kinematic objects can generate contact points against other kinematic or static objects. See description at Body::SetCollideKinematicVsNonDynamic.
|
|
98
|
-
bool mUseManifoldReduction = true; ///< If this body should use manifold reduction (see description at Body::SetUseManifoldReduction)
|
|
99
|
-
bool mApplyGyroscopicForce = false; ///< Set to indicate that the gyroscopic force should be applied to this body (aka Dzhanibekov effect, see https://en.wikipedia.org/wiki/Tennis_racket_theorem)
|
|
100
|
-
EMotionQuality mMotionQuality = EMotionQuality::Discrete; ///< Motion quality, or how well it detects collisions when it has a high velocity
|
|
101
|
-
bool mEnhancedInternalEdgeRemoval = false; ///< Set to indicate that extra effort should be made to try to remove ghost contacts (collisions with internal edges of a mesh). This is more expensive but makes bodies move smoother over a mesh with convex edges.
|
|
102
|
-
bool mAllowSleeping = true; ///< If this body can go to sleep or not
|
|
103
|
-
float mFriction = 0.2f; ///< Friction of the body (dimensionless number, usually between 0 and 1, 0 = no friction, 1 = friction force equals force that presses the two bodies together). Note that bodies can have negative friction but the combined friction (see PhysicsSystem::SetCombineFriction) should never go below zero.
|
|
104
|
-
float mRestitution = 0.0f; ///< Restitution of body (dimensionless number, usually between 0 and 1, 0 = completely inelastic collision response, 1 = completely elastic collision response). Note that bodies can have negative restitution but the combined restitution (see PhysicsSystem::SetCombineRestitution) should never go below zero.
|
|
105
|
-
float mLinearDamping = 0.05f; ///< Linear damping: dv/dt = -c * v. c. Value should be zero or positive and is usually close to 0.
|
|
106
|
-
float mAngularDamping = 0.05f; ///< Angular damping: dw/dt = -c * w. c. Value should be zero or positive and is usually close to 0.
|
|
107
|
-
float mMaxLinearVelocity = 500.0f; ///< Maximum linear velocity that this body can reach (m/s)
|
|
108
|
-
float mMaxAngularVelocity = 0.25f * JPH_PI * 60.0f; ///< Maximum angular velocity that this body can reach (rad/s)
|
|
109
|
-
float mGravityFactor = 1.0f; ///< Value to multiply gravity with for this body
|
|
110
|
-
uint mNumVelocityStepsOverride = 0; ///< Used only when this body is dynamic and colliding. Override for the number of solver velocity iterations to run, 0 means use the default in PhysicsSettings::mNumVelocitySteps. The number of iterations to use is the max of all contacts and constraints in the island.
|
|
111
|
-
uint mNumPositionStepsOverride = 0; ///< Used only when this body is dynamic and colliding. Override for the number of solver position iterations to run, 0 means use the default in PhysicsSettings::mNumPositionSteps. The number of iterations to use is the max of all contacts and constraints in the island.
|
|
112
|
-
|
|
113
|
-
///@name Mass properties of the body (by default calculated by the shape)
|
|
114
|
-
EOverrideMassProperties mOverrideMassProperties = EOverrideMassProperties::CalculateMassAndInertia; ///< Determines how mMassPropertiesOverride will be used
|
|
115
|
-
float mInertiaMultiplier = 1.0f; ///< When calculating the inertia (not when it is provided) the calculated inertia will be multiplied by this value
|
|
116
|
-
MassProperties mMassPropertiesOverride; ///< Contains replacement mass settings which override the automatically calculated values
|
|
117
|
-
|
|
118
|
-
private:
|
|
119
|
-
/// Collision volume for the body
|
|
120
|
-
RefConst<ShapeSettings> mShape; ///< Shape settings, can be serialized. Mutually exclusive with mShapePtr
|
|
121
|
-
RefConst<Shape> mShapePtr; ///< Actual shape, cannot be serialized. Mutually exclusive with mShape
|
|
122
|
-
};
|
|
123
|
-
|
|
124
|
-
JPH_NAMESPACE_END
|