diff --git a/.gitignore b/.gitignore index 89bc77f..6ebeba9 100644 --- a/.gitignore +++ b/.gitignore @@ -8,4 +8,7 @@ zig-out/ zig-cache/ # JetBrains cache directory -.idea/ \ No newline at end of file +.idea/ + +Jolt~/ +.DS_Store \ No newline at end of file diff --git a/.gitmodules b/.gitmodules index 19f8bfe..e69de29 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +0,0 @@ -[submodule "Jolt.Native~/lib/jolt"] - path = Jolt.Native~/lib/jolt - url = git@github.com:jrouwe/JoltPhysics.git diff --git a/Jolt.Internal.meta b/Jolt.Internal.meta new file mode 100644 index 0000000..a3ea3a4 --- /dev/null +++ b/Jolt.Internal.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 03cb2a546d55412fbf6675bac2ae1be4 +timeCreated: 1755771434 \ No newline at end of file diff --git a/Jolt.Internal/AssemblyInfo.cs b/Jolt.Internal/AssemblyInfo.cs new file mode 100644 index 0000000..cec4fea --- /dev/null +++ b/Jolt.Internal/AssemblyInfo.cs @@ -0,0 +1,3 @@ +using System.Runtime.CompilerServices; + +[assembly:InternalsVisibleTo("Jolt")] diff --git a/Jolt.Internal/AssemblyInfo.cs.meta b/Jolt.Internal/AssemblyInfo.cs.meta new file mode 100644 index 0000000..cbbf417 --- /dev/null +++ b/Jolt.Internal/AssemblyInfo.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 2e640bf356d842ee9385fa2da55960ec +timeCreated: 1755771647 \ No newline at end of file diff --git a/Jolt.Internal/JoltNativeInternalUtility.cs b/Jolt.Internal/JoltNativeInternalUtility.cs new file mode 100644 index 0000000..2ae103e --- /dev/null +++ b/Jolt.Internal/JoltNativeInternalUtility.cs @@ -0,0 +1,36 @@ +using System; +using System.Runtime.CompilerServices; +using Unity.Burst; +using Unity.Collections; +using Unity.Collections.LowLevel.Unsafe; + +namespace Jolt.Internal +{ + internal static class JoltNativeInternalUtility + { + public static void LeakRecord(IntPtr handle, int callstacksToSkip) + { + UnsafeUtility.LeakRecord(handle, LeakCategory.Persistent, callstacksToSkip); + } + + public static void LeakErase(IntPtr handle) + { + UnsafeUtility.LeakErase(handle, LeakCategory.Persistent); + } + + unsafe struct UnsafeHeader where TPtr : unmanaged + { + public TPtr** Ptr; +#if ENABLE_UNITY_COLLECTIONS_CHECKS + internal AtomicSafetyHandle m_Safety; +#endif + } + + public static unsafe void Initialize(ref TStruct t, TPtr* ptr) where TStruct : unmanaged where TPtr : unmanaged + { + ref var header = ref UnsafeUtility.As>(ref t); + header.Ptr = (TPtr**)UnsafeUtility.MallocTracked(sizeof(TPtr*), UnsafeUtility.AlignOf(), Allocator.Persistent, 1); + *header.Ptr = ptr; + } + } +} diff --git a/Jolt.Internal/JoltNativeInternalUtility.cs.meta b/Jolt.Internal/JoltNativeInternalUtility.cs.meta new file mode 100644 index 0000000..777d846 --- /dev/null +++ b/Jolt.Internal/JoltNativeInternalUtility.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: a07d654f3d4f45ae918ca2070bd56f3b +timeCreated: 1755771447 \ No newline at end of file diff --git a/Jolt.Internal/Unity.InternalAPIEngineBridge.013.asmdef b/Jolt.Internal/Unity.InternalAPIEngineBridge.013.asmdef new file mode 100644 index 0000000..56c5f4a --- /dev/null +++ b/Jolt.Internal/Unity.InternalAPIEngineBridge.013.asmdef @@ -0,0 +1,16 @@ +{ + "name": "Unity.InternalAPIEngineBridge.013", + "rootNamespace": "", + "references": [ + "GUID:2665a8d13d1b3f18800f46e256720795" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": true, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [], + "noEngineReferences": false +} \ No newline at end of file diff --git a/Jolt.Internal/Unity.InternalAPIEngineBridge.013.asmdef.meta b/Jolt.Internal/Unity.InternalAPIEngineBridge.013.asmdef.meta new file mode 100644 index 0000000..daee52c --- /dev/null +++ b/Jolt.Internal/Unity.InternalAPIEngineBridge.013.asmdef.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: aaad8d8e3f2841b3b3230cf4e63699fe +timeCreated: 1755771584 \ No newline at end of file diff --git a/Jolt.Native/Release/macos-arm64/libjoltc.dylib b/Jolt.Native/Release/macos-arm64/libjoltc.dylib deleted file mode 100644 index a4a3166..0000000 Binary files a/Jolt.Native/Release/macos-arm64/libjoltc.dylib and /dev/null differ diff --git a/Jolt.Native/Release/macos-arm64/libjoltc.dylib.meta b/Jolt.Native/Release/macos-arm64/libjoltc.dylib.meta deleted file mode 100644 index 491ff6f..0000000 --- a/Jolt.Native/Release/macos-arm64/libjoltc.dylib.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 0d172af96b0f71c42815de979121e081 \ No newline at end of file diff --git a/Jolt.Native/Release/macos-x64.meta b/Jolt.Native/Release/macos-x64.meta deleted file mode 100644 index 47bab0f..0000000 --- a/Jolt.Native/Release/macos-x64.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: f21eb3741ee5486488e62c055724412b -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt.Native/Release/macos-x64/libjoltc.dylib b/Jolt.Native/Release/macos-x64/libjoltc.dylib deleted file mode 100644 index a4a3166..0000000 Binary files a/Jolt.Native/Release/macos-x64/libjoltc.dylib and /dev/null differ diff --git a/Jolt.Native/Release/macos-arm64.meta b/Jolt.Native/Release/macos.meta similarity index 77% rename from Jolt.Native/Release/macos-arm64.meta rename to Jolt.Native/Release/macos.meta index 7ab05c7..f2361e4 100644 --- a/Jolt.Native/Release/macos-arm64.meta +++ b/Jolt.Native/Release/macos.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: b441895565b08ce4a8eed7c1f4baa8e7 +guid: bdd97f98f31d64ccc97f421808e2836e folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Jolt.Native/Release/macos/libjoltc.dylib b/Jolt.Native/Release/macos/libjoltc.dylib new file mode 100755 index 0000000..9384841 Binary files /dev/null and b/Jolt.Native/Release/macos/libjoltc.dylib differ diff --git a/Jolt.Native/Release/macos-x64/libjoltc.dylib.meta b/Jolt.Native/Release/macos/libjoltc.dylib.meta similarity index 57% rename from Jolt.Native/Release/macos-x64/libjoltc.dylib.meta rename to Jolt.Native/Release/macos/libjoltc.dylib.meta index 6de4ee8..2d448d5 100644 --- a/Jolt.Native/Release/macos-x64/libjoltc.dylib.meta +++ b/Jolt.Native/Release/macos/libjoltc.dylib.meta @@ -1,8 +1,8 @@ fileFormatVersion: 2 -guid: 782b4b903a7072741a2f5f387c48816b +guid: e95d75afca35742aea4ea7a99196e2a1 PluginImporter: externalObjects: {} - serializedVersion: 2 + serializedVersion: 3 iconMap: {} executionOrder: {} defineConstraints: [] @@ -11,61 +11,44 @@ PluginImporter: isExplicitlyReferenced: 0 validateReferences: 1 platformData: - - first: - : Any - second: + Any: enabled: 0 settings: - Exclude Android: 1 Exclude Editor: 0 Exclude Linux64: 1 Exclude OSXUniversal: 0 Exclude Win: 1 Exclude Win64: 1 - - first: - Android: Android - second: - enabled: 0 - settings: - AndroidSharedLibraryType: Executable - CPU: ARMv7 - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: + Exclude iOS: 1 + Editor: enabled: 1 settings: - CPU: x86_64 + CPU: AnyCPU DefaultValueInitialized: true OS: OSX - - first: - Standalone: Linux64 - second: + Linux64: enabled: 0 settings: - CPU: AnyCPU - - first: - Standalone: OSXUniversal - second: + CPU: x86_64 + OSXUniversal: enabled: 1 settings: CPU: AnyCPU - - first: - Standalone: Win - second: + Win: enabled: 0 settings: - CPU: AnyCPU - - first: - Standalone: Win64 - second: + CPU: x86 + Win64: + enabled: 0 + settings: + CPU: None + iOS: enabled: 0 settings: + AddToEmbeddedBinaries: false CPU: AnyCPU + CompileFlags: + FrameworkDependencies: userData: assetBundleName: assetBundleVariant: diff --git a/Jolt.Native/Release/windows-x64/joltc.dll b/Jolt.Native/Release/windows-x64/joltc.dll index f5dfba5..2566010 100644 Binary files a/Jolt.Native/Release/windows-x64/joltc.dll and b/Jolt.Native/Release/windows-x64/joltc.dll differ diff --git a/Jolt.Native~/lib/jolt b/Jolt.Native~/lib/jolt deleted file mode 160000 index 0373ec0..0000000 --- a/Jolt.Native~/lib/jolt +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 0373ec0dd762e4bc2f6acdb08371ee84fa23c6db diff --git a/Jolt.SourceGenerator~/Folder.DotSettings.user b/Jolt.SourceGenerator~/Folder.DotSettings.user new file mode 100644 index 0000000..45b21d8 --- /dev/null +++ b/Jolt.SourceGenerator~/Folder.DotSettings.user @@ -0,0 +1,2 @@ + + ForceIncluded \ No newline at end of file diff --git a/Jolt.SourceGenerator~/Jolt.SourceGenerator.Tests/Jolt.SourceGenerator.Tests.csproj b/Jolt.SourceGenerator~/Jolt.SourceGenerator.Tests/Jolt.SourceGenerator.Tests.csproj new file mode 100644 index 0000000..13ba074 --- /dev/null +++ b/Jolt.SourceGenerator~/Jolt.SourceGenerator.Tests/Jolt.SourceGenerator.Tests.csproj @@ -0,0 +1,25 @@ + + + + net9.0 + latest + enable + enable + false + + + + + + + + + + + + + + + + + diff --git a/Jolt.SourceGenerator~/Jolt.SourceGenerator.Tests/UnitTest1.cs b/Jolt.SourceGenerator~/Jolt.SourceGenerator.Tests/UnitTest1.cs new file mode 100644 index 0000000..e6d06d4 --- /dev/null +++ b/Jolt.SourceGenerator~/Jolt.SourceGenerator.Tests/UnitTest1.cs @@ -0,0 +1,33 @@ +using Microsoft.CodeAnalysis; +using Xunit; +using Xunit.Abstractions; + +namespace Jolt.SourceGenerator.Tests; + +public class Tests(ITestOutputHelper outputHelper) +{ + private ITestOutputHelper m_OutputHelper = outputHelper; + [Fact] + public void Test1() + { + (string, IncrementalStepRunReason Unchanged)[] validations = + [ + ("TypeMeta", IncrementalStepRunReason.Unchanged) + ]; + + var (driver, _) = Utility.CreateDriver( + File.ReadAllText("../../../UnsafeBindings.txt"), "Jolt"/*, validations*/); + + // 检查缓存 + var ret = driver.GetRunResult(); + var generateRet = ret.Results.Single(); + + Assert.Null(generateRet.Exception); + + m_OutputHelper.WriteLine("----------------Source----------------"); + foreach (var source in generateRet.GeneratedSources) + { + m_OutputHelper.WriteLine(source.SourceText.ToString()); + } + } +} diff --git a/Jolt/Bindings/UnsafeBindings.g.cs b/Jolt.SourceGenerator~/Jolt.SourceGenerator.Tests/UnsafeBindings.txt similarity index 61% rename from Jolt/Bindings/UnsafeBindings.g.cs rename to Jolt.SourceGenerator~/Jolt.SourceGenerator.Tests/UnsafeBindings.txt index 0011782..e358e66 100644 --- a/Jolt/Bindings/UnsafeBindings.g.cs +++ b/Jolt.SourceGenerator~/Jolt.SourceGenerator.Tests/UnsafeBindings.txt @@ -1,701 +1,995 @@ +using System; using System.Runtime.InteropServices; using Unity.Mathematics; +namespace Unity.Mathematics +{ + public struct float3 {} + public struct float4x4 {} +} + namespace Jolt { - internal enum JPH_BodyManager_ShapeColor - { - JPH_BodyManager_ShapeColor_InstanceColor, - JPH_BodyManager_ShapeColor_ShapeTypeColor, - JPH_BodyManager_ShapeColor_MotionTypeColor, - JPH_BodyManager_ShapeColor_SleepColor, - JPH_BodyManager_ShapeColor_IslandColor, - JPH_BodyManager_ShapeColor_MaterialColor, - _JPH_BodyManager_ShapeColor_Count, - _JPH_BodyManager_ShapeColor_Force32 = 0x7FFFFFFF, - } + public class NativeTypeNameAttribute : Attribute + { + public readonly string Value; - internal enum JPH_DebugRenderer_CastShadow + public NativeTypeNameAttribute(string value) + { + Value = value; + } + } + + public partial struct JPH_BroadPhaseLayerInterface { - JPH_DebugRenderer_CastShadow_On = 0, - JPH_DebugRenderer_CastShadow_Off = 1, - _JPH_DebugRenderer_CastShadow_Count, - _JPH_DebugRenderer_CastShadow_Force32 = 0x7FFFFFFF, } - internal enum JPH_DebugRenderer_DrawMode + public partial struct JPH_ObjectVsBroadPhaseLayerFilter { - JPH_DebugRenderer_DrawMode_Solid = 0, - JPH_DebugRenderer_DrawMode_Wireframe = 1, - _JPH_DebugRenderer_DrawMode_Count, - _JPH_DebugRenderer_DrawMode_Force32 = 0x7FFFFFFF, } - internal enum JPH_Mesh_Shape_BuildQuality + public partial struct JPH_ObjectLayerPairFilter { - JPH_Mesh_Shape_BuildQuality_FavorRuntimePerformance = 0, - JPH_Mesh_Shape_BuildQuality_FavorBuildSpeed = 1, - _JPH_Mesh_Shape_BuildQuality_Count, - _JPH_Mesh_Shape_BuildQuality_Force32 = 0x7FFFFFFF, } - internal partial struct JPH_Plane + public partial struct JPH_BroadPhaseLayerFilter { - [NativeTypeName("JPH_Vec3")] - public float3 normal; - - public float distance; } - internal partial struct JPH_AABox + public partial struct JPH_ObjectLayerFilter { - [NativeTypeName("JPH_Vec3")] - public float3 min; + } - [NativeTypeName("JPH_Vec3")] - public float3 max; + public partial struct JPH_BodyFilter + { } - internal partial struct JPH_Triangle + public partial struct JPH_ShapeFilter { - [NativeTypeName("JPH_Vec3")] - public float3 v1; + } - [NativeTypeName("JPH_Vec3")] - public float3 v2; + public partial struct JPH_SimShapeFilter + { + } - [NativeTypeName("JPH_Vec3")] - public float3 v3; + public partial struct JPH_PhysicsStepListener + { + } - public uint materialIndex; + public partial struct JPH_PhysicsSystem + { } - internal partial struct JPH_IndexedTriangleNoMaterial + public partial struct JPH_PhysicsMaterial { - public uint i1; + } - public uint i2; + public partial struct JPH_ShapeSettings + { + } - public uint i3; + public partial struct JPH_ConvexShapeSettings + { } - internal partial struct JPH_IndexedTriangle + public partial struct JPH_SphereShapeSettings { - public uint i1; + } - public uint i2; + public partial struct JPH_BoxShapeSettings + { + } - public uint i3; + public partial struct JPH_PlaneShapeSettings + { + } - public uint materialIndex; + public partial struct JPH_TriangleShapeSettings + { + } - public uint userData; + public partial struct JPH_CapsuleShapeSettings + { } - internal partial struct JPH_MassProperties + public partial struct JPH_TaperedCapsuleShapeSettings { - public float mass; + } - [NativeTypeName("JPH_Matrix4x4")] - public float4x4 inertia; + public partial struct JPH_CylinderShapeSettings + { } - internal partial struct JPH_CollideSettingsBase + public partial struct JPH_TaperedCylinderShapeSettings { - [NativeTypeName("JPH_ActiveEdgeMode")] - public ActiveEdgeMode activeEdgeMode; + } - [NativeTypeName("JPH_CollectFacesMode")] - public CollectFacesMode collectFacesMode; + public partial struct JPH_ConvexHullShapeSettings + { + } - public float collisionTolerance; + public partial struct JPH_CompoundShapeSettings + { + } - public float penetrationTolerance; + public partial struct JPH_StaticCompoundShapeSettings + { + } - [NativeTypeName("JPH_Vec3")] - public float3 activeEdgeMovementDirection; + public partial struct JPH_MutableCompoundShapeSettings + { } - internal partial struct JPH_CollideShapeSettings + public partial struct JPH_MeshShapeSettings { - public JPH_CollideSettingsBase @base; + } - public float maxSeparationDistance; + public partial struct JPH_HeightFieldShapeSettings + { + } - [NativeTypeName("JPH_BackFaceMode")] - public BackFaceMode backFaceMode; + public partial struct JPH_RotatedTranslatedShapeSettings + { } - internal partial struct JPH_ShapeCastSettings + public partial struct JPH_ScaledShapeSettings { - public JPH_CollideSettingsBase @base; + } - [NativeTypeName("JPH_BackFaceMode")] - public BackFaceMode backFaceModeTriangles; + public partial struct JPH_OffsetCenterOfMassShapeSettings + { + } - [NativeTypeName("JPH_BackFaceMode")] - public BackFaceMode backFaceModeConvex; + public partial struct JPH_EmptyShapeSettings + { + } - [NativeTypeName("bool")] - public NativeBool useShrunkenShapeAndConvexRadius; + public partial struct JPH_Shape + { + } - [NativeTypeName("bool")] - public NativeBool returnDeepestPoint; + public partial struct JPH_ConvexShape + { } - internal partial struct JPH_RayCastSettings + public partial struct JPH_SphereShape { - [NativeTypeName("JPH_BackFaceMode")] - public BackFaceMode backFaceModeTriangles; + } - [NativeTypeName("JPH_BackFaceMode")] - public BackFaceMode backFaceModeConvex; + public partial struct JPH_BoxShape + { + } - [NativeTypeName("bool")] - public NativeBool treatConvexAsSolid; + public partial struct JPH_PlaneShape + { } - internal partial struct JPH_SpringSettings + public partial struct JPH_CapsuleShape { - [NativeTypeName("JPH_SpringMode")] - public SpringMode mode; + } - public float frequencyOrStiffness; + public partial struct JPH_CylinderShape + { + } - public float damping; + public partial struct JPH_TaperedCylinderShape + { } - internal partial struct JPH_MotorSettings + public partial struct JPH_TriangleShape { - public JPH_SpringSettings springSettings; + } - public float minForceLimit; + public partial struct JPH_TaperedCapsuleShape + { + } - public float maxForceLimit; + public partial struct JPH_ConvexHullShape + { + } - public float minTorqueLimit; + public partial struct JPH_CompoundShape + { + } - public float maxTorqueLimit; + public partial struct JPH_StaticCompoundShape + { } - internal partial struct JPH_SubShapeIDPair + public partial struct JPH_MutableCompoundShape { - [NativeTypeName("JPH_BodyID")] - public BodyID Body1ID; + } - [NativeTypeName("JPH_SubShapeID")] - public uint subShapeID1; + public partial struct JPH_MeshShape + { + } - [NativeTypeName("JPH_BodyID")] - public BodyID Body2ID; + public partial struct JPH_HeightFieldShape + { + } - [NativeTypeName("JPH_SubShapeID")] - public uint subShapeID2; + public partial struct JPH_DecoratedShape + { } - internal partial struct JPH_BroadPhaseCastResult + public partial struct JPH_RotatedTranslatedShape { - [NativeTypeName("JPH_BodyID")] - public BodyID bodyID; + } - public float fraction; + public partial struct JPH_ScaledShape + { } - internal partial struct JPH_RayCastResult + public partial struct JPH_OffsetCenterOfMassShape { - [NativeTypeName("JPH_BodyID")] - public BodyID bodyID; + } - public float fraction; + public partial struct JPH_EmptyShape + { + } - [NativeTypeName("JPH_SubShapeID")] - public uint subShapeID2; + public partial struct JPH_BodyCreationSettings + { } - internal partial struct JPH_CollidePointResult + public partial struct JPH_SoftBodyCreationSettings { - [NativeTypeName("JPH_BodyID")] - public BodyID bodyID; + } - [NativeTypeName("JPH_SubShapeID")] - public uint subShapeID2; + public partial struct JPH_BodyInterface + { } - internal unsafe partial struct JPH_CollideShapeResult + public partial struct JPH_BodyLockInterface { - [NativeTypeName("JPH_Vec3")] - public float3 contactPointOn1; + } - [NativeTypeName("JPH_Vec3")] - public float3 contactPointOn2; + public partial struct JPH_BroadPhaseQuery + { + } - [NativeTypeName("JPH_Vec3")] - public float3 penetrationAxis; + public partial struct JPH_NarrowPhaseQuery + { + } - public float penetrationDepth; + public partial struct JPH_MotionProperties + { + } - [NativeTypeName("JPH_SubShapeID")] - public uint subShapeID1; + public partial struct JPH_Body + { + } - [NativeTypeName("JPH_SubShapeID")] - public uint subShapeID2; + public partial struct JPH_ContactListener + { + } - [NativeTypeName("JPH_BodyID")] - public BodyID bodyID2; + public partial struct JPH_ContactManifold + { + } - public uint shape1FaceCount; + public partial struct JPH_ContactSettings + { + } - [NativeTypeName("JPH_Vec3 *")] - public float3* shape1Faces; + public partial struct JPH_GroupFilter + { + } - public uint shape2FaceCount; + public partial struct JPH_GroupFilterTable + { + } - [NativeTypeName("JPH_Vec3 *")] - public float3* shape2Faces; + [NativeTypeName("unsigned int")] + public enum JPH_PhysicsUpdateError : uint + { + None = 0, + ManifoldCacheFull = 1 << 0, + BodyPairCacheFull = 1 << 1, + ContactConstraintsFull = 1 << 2, + _JPH_PhysicsUpdateError_Count, + _JPH_PhysicsUpdateError_Force32 = 0x7fffffff, } - internal partial struct JPH_ShapeCastResult + [NativeTypeName("unsigned int")] + public enum JPH_BodyType : uint { - [NativeTypeName("JPH_Vec3")] - public float3 contactPointOn1; + Rigid = 0, + Soft = 1, + _JPH_BodyType_Count, + _JPH_BodyType_Force32 = 0x7fffffff, + } - [NativeTypeName("JPH_Vec3")] - public float3 contactPointOn2; + [NativeTypeName("unsigned int")] + public enum JPH_MotionType : uint + { + Static = 0, + Kinematic = 1, + Dynamic = 2, + _JPH_MotionType_Count, + _JPH_MotionType_Force32 = 0x7fffffff, + } - [NativeTypeName("JPH_Vec3")] - public float3 penetrationAxis; + [NativeTypeName("unsigned int")] + public enum JPH_Activation : uint + { + Activate = 0, + DontActivate = 1, + _JPH_Activation_Count, + _JPH_Activation_Force32 = 0x7fffffff, + } - public float penetrationDepth; + [NativeTypeName("unsigned int")] + public enum JPH_ValidateResult : uint + { + AcceptAllContactsForThisBodyPair = 0, + AcceptContact = 1, + RejectContact = 2, + RejectAllContactsForThisBodyPair = 3, + _JPH_ValidateResult_Count, + _JPH_ValidateResult_Force32 = 0x7fffffff, + } - [NativeTypeName("JPH_SubShapeID")] - public uint subShapeID1; + [NativeTypeName("unsigned int")] + public enum JPH_ShapeType : uint + { + Convex = 0, + Compound = 1, + Decorated = 2, + Mesh = 3, + HeightField = 4, + SoftBody = 5, + User1 = 6, + User2 = 7, + User3 = 8, + User4 = 9, + _JPH_ShapeType_Count, + _JPH_ShapeType_Force32 = 0x7fffffff, + } - [NativeTypeName("JPH_SubShapeID")] - public uint subShapeID2; + [NativeTypeName("unsigned int")] + public enum JPH_ShapeSubType : uint + { + Sphere = 0, + Box = 1, + Triangle = 2, + Capsule = 3, + TaperedCapsule = 4, + Cylinder = 5, + ConvexHull = 6, + StaticCompound = 7, + MutableCompound = 8, + RotatedTranslated = 9, + Scaled = 10, + OffsetCenterOfMass = 11, + Mesh = 12, + HeightField = 13, + SoftBody = 14, + _JPH_ShapeSubType_Count, + _JPH_ShapeSubType_Force32 = 0x7fffffff, + } - [NativeTypeName("JPH_BodyID")] - public BodyID bodyID2; + [NativeTypeName("unsigned int")] + public enum JPH_ConstraintType : uint + { + Constraint = 0, + TwoBodyConstraint = 1, + _JPH_ConstraintType_Count, + _JPH_ConstraintType_Force32 = 0x7fffffff, + } - public float fraction; + [NativeTypeName("unsigned int")] + public enum JPH_ConstraintSubType : uint + { + Fixed = 0, + Point = 1, + Hinge = 2, + Slider = 3, + Distance = 4, + Cone = 5, + SwingTwist = 6, + SixDOF = 7, + Path = 8, + Vehicle = 9, + RackAndPinion = 10, + Gear = 11, + Pulley = 12, + User1 = 13, + User2 = 14, + User3 = 15, + User4 = 16, + _JPH_ConstraintSubType_Count, + _JPH_ConstraintSubType_Force32 = 0x7fffffff, + } - [NativeTypeName("bool")] - public NativeBool isBackFaceHit; + [NativeTypeName("unsigned int")] + public enum JPH_ConstraintSpace : uint + { + LocalToBodyCOM = 0, + WorldSpace = 1, + _JPH_ConstraintSpace_Count, + _JPH_ConstraintSpace_Force32 = 0x7fffffff, } - internal partial struct JPH_DrawSettings + [NativeTypeName("unsigned int")] + public enum JPH_MotionQuality : uint { - [NativeTypeName("bool")] - public NativeBool drawGetSupportFunction; + Discrete = 0, + LinearCast = 1, + _JPH_MotionQuality_Count, + _JPH_MotionQuality_Force32 = 0x7fffffff, + } - [NativeTypeName("bool")] - public NativeBool drawSupportDirection; + [NativeTypeName("unsigned int")] + public enum JPH_OverrideMassProperties : uint + { + CalculateMassAndInertia, + CalculateInertia, + MassAndInertiaProvided, + _JPH_JPH_OverrideMassProperties_Count, + _JPH_JPH_OverrideMassProperties_Force32 = 0x7FFFFFFF, + } - [NativeTypeName("bool")] - public NativeBool drawGetSupportingFace; + [NativeTypeName("unsigned int")] + public enum JPH_GroundState : uint + { + OnGround = 0, + OnSteepGround = 1, + NotSupported = 2, + InAir = 3, + _JPH_GroundState_Count, + _JPH_GroundState_Force32 = 0x7FFFFFFF, + } - [NativeTypeName("bool")] - public NativeBool drawShape; + [NativeTypeName("unsigned int")] + public enum JPH_BackFaceMode : uint + { + IgnoreBackFaces, + CollideWithBackFaces, + _JPH_BackFaceMode_Count, + _JPH_BackFaceMode_Force32 = 0x7FFFFFFF, + } - [NativeTypeName("bool")] - public NativeBool drawShapeWireframe; + [NativeTypeName("unsigned int")] + public enum JPH_ActiveEdgeMode : uint + { + CollideOnlyWithActive, + CollideWithAll, + _JPH_ActiveEdgeMode_Count, + _JPH_ActiveEdgeMode_Force32 = 0x7FFFFFFF, + } - public JPH_BodyManager_ShapeColor drawShapeColor; + [NativeTypeName("unsigned int")] + public enum JPH_CollectFacesMode : uint + { + CollectFaces, + NoFaces, + _JPH_CollectFacesMode_Count, + _JPH_CollectFacesMode_Force32 = 0x7FFFFFFF, + } - [NativeTypeName("bool")] - public NativeBool drawBoundingBox; + [NativeTypeName("unsigned int")] + public enum JPH_MotorState : uint + { + Off = 0, + Velocity = 1, + Position = 2, + _JPH_MotorState_Count, + _JPH_MotorState_Force32 = 0x7FFFFFFF, + } - [NativeTypeName("bool")] - public NativeBool drawCenterOfMassTransform; + [NativeTypeName("unsigned int")] + public enum JPH_CollisionCollectorType : uint + { + AllHit = 0, + AllHitSorted = 1, + ClosestHit = 2, + AnyHit = 3, + _JPH_CollisionCollectorType_Count, + _JPH_CollisionCollectorType_Force32 = 0x7FFFFFFF, + } - [NativeTypeName("bool")] - public NativeBool drawWorldTransform; + [NativeTypeName("unsigned int")] + public enum JPH_SwingType : uint + { + Cone, + Pyramid, + _JPH_SwingType_Count, + _JPH_SwingType_Force32 = 0x7FFFFFFF, + } - [NativeTypeName("bool")] - public NativeBool drawVelocity; + [NativeTypeName("unsigned int")] + public enum JPH_SpringMode : uint + { + FrequencyAndDamping = 0, + StiffnessAndDamping = 1, + _JPH_SpringMode_Count, + _JPH_SpringMode_Force32 = 0x7FFFFFFF, + } - [NativeTypeName("bool")] - public NativeBool drawMassAndInertia; + [NativeTypeName("unsigned int")] + public enum JPH_SoftBodyConstraintColor : uint + { + ConstraintType, + ConstraintGroup, + ConstraintOrder, + _JPH_SoftBodyConstraintColor_Count, + _JPH_SoftBodyConstraintColor_Force32 = 0x7FFFFFFF, + } - [NativeTypeName("bool")] - public NativeBool drawSleepStats; + [NativeTypeName("unsigned int")] + public enum JPH_BodyManager_ShapeColor : uint + { + InstanceColor, + ShapeTypeColor, + MotionTypeColor, + SleepColor, + IslandColor, + MaterialColor, + _JPH_BodyManager_ShapeColor_Count, + _JPH_BodyManager_ShapeColor_Force32 = 0x7FFFFFFF, + } - [NativeTypeName("bool")] - public NativeBool drawSoftBodyVertices; + [NativeTypeName("unsigned int")] + public enum JPH_DebugRenderer_CastShadow : uint + { + On = 0, + Off = 1, + _JPH_DebugRenderer_CastShadow_Count, + _JPH_DebugRenderer_CastShadow_Force32 = 0x7FFFFFFF, + } - [NativeTypeName("bool")] - public NativeBool drawSoftBodyVertexVelocities; - - [NativeTypeName("bool")] - public NativeBool drawSoftBodyEdgeConstraints; - - [NativeTypeName("bool")] - public NativeBool drawSoftBodyBendConstraints; - - [NativeTypeName("bool")] - public NativeBool drawSoftBodyVolumeConstraints; - - [NativeTypeName("bool")] - public NativeBool drawSoftBodySkinConstraints; - - [NativeTypeName("bool")] - public NativeBool drawSoftBodyLRAConstraints; - - [NativeTypeName("bool")] - public NativeBool drawSoftBodyPredictedBounds; - - [NativeTypeName("JPH_SoftBodyConstraintColor")] - public SoftBodyConstraintColor drawSoftBodyConstraintColor; - } - - internal partial struct JPH_SupportingFace - { - public uint count; - - [NativeTypeName("JPH_Vec3[32]")] - public _vertices_e__FixedBuffer vertices; - - public partial struct _vertices_e__FixedBuffer - { - public float3 e0; - public float3 e1; - public float3 e2; - public float3 e3; - public float3 e4; - public float3 e5; - public float3 e6; - public float3 e7; - public float3 e8; - public float3 e9; - public float3 e10; - public float3 e11; - public float3 e12; - public float3 e13; - public float3 e14; - public float3 e15; - public float3 e16; - public float3 e17; - public float3 e18; - public float3 e19; - public float3 e20; - public float3 e21; - public float3 e22; - public float3 e23; - public float3 e24; - public float3 e25; - public float3 e26; - public float3 e27; - public float3 e28; - public float3 e29; - public float3 e30; - public float3 e31; - - public unsafe ref float3 this[int index] - { - get - { - fixed (float3* pThis = &e0) - { - return ref pThis[index]; - } - } - } - } - } - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal unsafe delegate void JPH_CastRayResultCallback([NativeTypeName("void*")] nint context, [NativeTypeName("const JPH_RayCastResult *")] JPH_RayCastResult* result); - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal unsafe delegate void JPH_RayCastBodyResultCallback([NativeTypeName("void*")] nint context, [NativeTypeName("const JPH_BroadPhaseCastResult *")] JPH_BroadPhaseCastResult* result); - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal delegate void JPH_CollideShapeBodyResultCallback([NativeTypeName("void*")] nint context, [NativeTypeName("const JPH_BodyID")] BodyID result); - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal unsafe delegate void JPH_CollidePointResultCallback([NativeTypeName("void*")] nint context, [NativeTypeName("const JPH_CollidePointResult *")] JPH_CollidePointResult* result); - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal unsafe delegate void JPH_CollideShapeResultCallback([NativeTypeName("void*")] nint context, [NativeTypeName("const JPH_CollideShapeResult *")] JPH_CollideShapeResult* result); - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal unsafe delegate void JPH_CastShapeResultCallback([NativeTypeName("void*")] nint context, [NativeTypeName("const JPH_ShapeCastResult *")] JPH_ShapeCastResult* result); - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal unsafe delegate float JPH_CastRayCollectorCallback([NativeTypeName("void*")] nint context, [NativeTypeName("const JPH_RayCastResult *")] JPH_RayCastResult* result); - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal unsafe delegate float JPH_RayCastBodyCollectorCallback([NativeTypeName("void*")] nint context, [NativeTypeName("const JPH_BroadPhaseCastResult *")] JPH_BroadPhaseCastResult* result); - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal delegate float JPH_CollideShapeBodyCollectorCallback([NativeTypeName("void*")] nint context, [NativeTypeName("const JPH_BodyID")] BodyID result); - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal unsafe delegate float JPH_CollidePointCollectorCallback([NativeTypeName("void*")] nint context, [NativeTypeName("const JPH_CollidePointResult *")] JPH_CollidePointResult* result); - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal unsafe delegate float JPH_CollideShapeCollectorCallback([NativeTypeName("void*")] nint context, [NativeTypeName("const JPH_CollideShapeResult *")] JPH_CollideShapeResult* result); - - [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal unsafe delegate float JPH_CastShapeCollectorCallback([NativeTypeName("void*")] nint context, [NativeTypeName("const JPH_ShapeCastResult *")] JPH_ShapeCastResult* result); - - internal partial struct JPH_BroadPhaseLayerInterface + [NativeTypeName("unsigned int")] + public enum JPH_DebugRenderer_DrawMode : uint { + Solid = 0, + Wireframe = 1, + _JPH_DebugRenderer_DrawMode_Count, + _JPH_DebugRenderer_DrawMode_Force32 = 0x7FFFFFFF, } - internal partial struct JPH_ObjectVsBroadPhaseLayerFilter + [NativeTypeName("unsigned int")] + public enum JPH_Mesh_Shape_BuildQuality : uint { + FavorRuntimePerformance = 0, + FavorBuildSpeed = 1, + _JPH_Mesh_Shape_BuildQuality_Count, + _JPH_Mesh_Shape_BuildQuality_Force32 = 0x7FFFFFFF, } - internal partial struct JPH_ObjectLayerPairFilter + [NativeTypeName("unsigned int")] + public enum JPH_TransmissionMode : uint { + Auto = 0, + Manual = 1, + _JPH_TransmissionMode_Count, + _JPH_TransmissionMode_Force32 = 0x7FFFFFFF, } - internal partial struct JPH_BroadPhaseLayerFilter + public partial struct JPH_Plane { - } + [NativeTypeName("JPH_Vec3")] + public float3 normal; - internal partial struct JPH_ObjectLayerFilter - { + public float distance; } - internal partial struct JPH_BodyFilter + public partial struct JPH_AABox { - } + [NativeTypeName("JPH_Vec3")] + public float3 min; - internal partial struct JPH_ShapeFilter - { + [NativeTypeName("JPH_Vec3")] + public float3 max; } - internal partial struct JPH_SimShapeFilter + public partial struct JPH_Triangle { - } + [NativeTypeName("JPH_Vec3")] + public float3 v1; - internal partial struct JPH_PhysicsSystem - { - } + [NativeTypeName("JPH_Vec3")] + public float3 v2; - internal partial struct JPH_PhysicsMaterial - { - } + [NativeTypeName("JPH_Vec3")] + public float3 v3; - internal partial struct JPH_ShapeSettings - { + [NativeTypeName("uint32_t")] + public uint materialIndex; } - internal partial struct JPH_ConvexShapeSettings + public partial struct JPH_IndexedTriangleNoMaterial { - } + [NativeTypeName("uint32_t")] + public uint i1; - internal partial struct JPH_SphereShapeSettings - { - } + [NativeTypeName("uint32_t")] + public uint i2; - internal partial struct JPH_BoxShapeSettings - { + [NativeTypeName("uint32_t")] + public uint i3; } - internal partial struct JPH_PlaneShapeSettings + public partial struct JPH_IndexedTriangle { - } + [NativeTypeName("uint32_t")] + public uint i1; - internal partial struct JPH_TriangleShapeSettings - { - } + [NativeTypeName("uint32_t")] + public uint i2; - internal partial struct JPH_CapsuleShapeSettings - { - } + [NativeTypeName("uint32_t")] + public uint i3; - internal partial struct JPH_TaperedCapsuleShapeSettings - { - } + [NativeTypeName("uint32_t")] + public uint materialIndex; - internal partial struct JPH_CylinderShapeSettings - { + [NativeTypeName("uint32_t")] + public uint userData; } - internal partial struct JPH_TaperedCylinderShapeSettings + public partial struct JPH_MassProperties { - } + public float mass; - internal partial struct JPH_ConvexHullShapeSettings - { + [NativeTypeName("JPH_Matrix4x4")] + public float4x4 inertia; } - internal partial struct JPH_CompoundShapeSettings + public partial struct JPH_CollideSettingsBase { - } + public JPH_ActiveEdgeMode activeEdgeMode; - internal partial struct JPH_StaticCompoundShapeSettings - { - } + public JPH_CollectFacesMode collectFacesMode; - internal partial struct JPH_MutableCompoundShapeSettings - { - } + public float collisionTolerance; - internal partial struct JPH_MeshShapeSettings - { - } + public float penetrationTolerance; - internal partial struct JPH_HeightFieldShapeSettings - { + [NativeTypeName("JPH_Vec3")] + public float3 activeEdgeMovementDirection; } - internal partial struct JPH_RotatedTranslatedShapeSettings + public partial struct JPH_CollideShapeSettings { - } + public JPH_CollideSettingsBase @base; - internal partial struct JPH_ScaledShapeSettings - { - } + public float maxSeparationDistance; - internal partial struct JPH_OffsetCenterOfMassShapeSettings - { + public JPH_BackFaceMode backFaceMode; } - internal partial struct JPH_EmptyShapeSettings + public partial struct JPH_ShapeCastSettings { - } + public JPH_CollideSettingsBase @base; - internal partial struct JPH_Shape - { - } + public JPH_BackFaceMode backFaceModeTriangles; - internal partial struct JPH_ConvexShape - { - } + public JPH_BackFaceMode backFaceModeConvex; - internal partial struct JPH_SphereShape - { - } + [NativeTypeName("bool")] + public byte useShrunkenShapeAndConvexRadius; - internal partial struct JPH_BoxShape - { + [NativeTypeName("bool")] + public byte returnDeepestPoint; } - internal partial struct JPH_PlaneShape + public partial struct JPH_RayCastSettings { - } + public JPH_BackFaceMode backFaceModeTriangles; - internal partial struct JPH_CapsuleShape - { - } + public JPH_BackFaceMode backFaceModeConvex; - internal partial struct JPH_CylinderShape - { + [NativeTypeName("bool")] + public byte treatConvexAsSolid; } - internal partial struct JPH_TaperedCylinderShape + public partial struct JPH_SpringSettings { - } + public JPH_SpringMode mode; - internal partial struct JPH_TriangleShape - { - } + public float frequencyOrStiffness; - internal partial struct JPH_TaperedCapsuleShape - { + public float damping; } - internal partial struct JPH_ConvexHullShape + public partial struct JPH_MotorSettings { - } + public JPH_SpringSettings springSettings; - internal partial struct JPH_CompoundShape - { - } + public float minForceLimit; - internal partial struct JPH_StaticCompoundShape - { - } + public float maxForceLimit; - internal partial struct JPH_MutableCompoundShape - { - } + public float minTorqueLimit; - internal partial struct JPH_MeshShape - { + public float maxTorqueLimit; } - internal partial struct JPH_HeightFieldShape + public partial struct JPH_SubShapeIDPair { - } + [NativeTypeName("JPH_BodyID")] + public uint Body1ID; - internal partial struct JPH_DecoratedShape - { - } + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID1; - internal partial struct JPH_RotatedTranslatedShape - { - } + [NativeTypeName("JPH_BodyID")] + public uint Body2ID; - internal partial struct JPH_ScaledShape - { + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID2; } - internal partial struct JPH_OffsetCenterOfMassShape + public partial struct JPH_BroadPhaseCastResult { - } + [NativeTypeName("JPH_BodyID")] + public uint bodyID; - internal partial struct JPH_EmptyShape - { + public float fraction; } - internal partial struct JPH_BodyCreationSettings + public partial struct JPH_RayCastResult { - } + [NativeTypeName("JPH_BodyID")] + public uint bodyID; - internal partial struct JPH_SoftBodyCreationSettings - { - } + public float fraction; - internal partial struct JPH_BodyInterface - { + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID2; } - internal partial struct JPH_BodyLockInterface + public partial struct JPH_CollidePointResult { - } + [NativeTypeName("JPH_BodyID")] + public uint bodyID; - internal partial struct JPH_BroadPhaseQuery - { + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID2; } - internal partial struct JPH_NarrowPhaseQuery + public unsafe partial struct JPH_CollideShapeResult { - } + [NativeTypeName("JPH_Vec3")] + public float3 contactPointOn1; - internal partial struct JPH_MotionProperties - { - } + [NativeTypeName("JPH_Vec3")] + public float3 contactPointOn2; - internal partial struct JPH_Body - { - } + [NativeTypeName("JPH_Vec3")] + public float3 penetrationAxis; - internal partial struct JPH_ContactListener - { - } + public float penetrationDepth; - internal partial struct JPH_ContactManifold - { - } + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID1; - internal partial struct JPH_ContactSettings - { - } + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID2; - internal partial struct JPH_CollisionEstimationResultImpulse - { - public float contactImpulse; + [NativeTypeName("JPH_BodyID")] + public uint bodyID2; - public float frictionImpulse1; + [NativeTypeName("uint32_t")] + public uint shape1FaceCount; + + [NativeTypeName("JPH_Vec3 *")] + public float3* shape1Faces; + + [NativeTypeName("uint32_t")] + public uint shape2FaceCount; + + [NativeTypeName("JPH_Vec3 *")] + public float3* shape2Faces; + } + + public partial struct JPH_ShapeCastResult + { + [NativeTypeName("JPH_Vec3")] + public float3 contactPointOn1; + + [NativeTypeName("JPH_Vec3")] + public float3 contactPointOn2; + + [NativeTypeName("JPH_Vec3")] + public float3 penetrationAxis; + + public float penetrationDepth; + + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID1; + + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID2; + + [NativeTypeName("JPH_BodyID")] + public uint bodyID2; + + public float fraction; + + [NativeTypeName("bool")] + public byte isBackFaceHit; + } + + public partial struct JPH_DrawSettings + { + [NativeTypeName("bool")] + public byte drawGetSupportFunction; + + [NativeTypeName("bool")] + public byte drawSupportDirection; + + [NativeTypeName("bool")] + public byte drawGetSupportingFace; + + [NativeTypeName("bool")] + public byte drawShape; + + [NativeTypeName("bool")] + public byte drawShapeWireframe; + + public JPH_BodyManager_ShapeColor drawShapeColor; + + [NativeTypeName("bool")] + public byte drawBoundingBox; + + [NativeTypeName("bool")] + public byte drawCenterOfMassTransform; + + [NativeTypeName("bool")] + public byte drawWorldTransform; + + [NativeTypeName("bool")] + public byte drawVelocity; + + [NativeTypeName("bool")] + public byte drawMassAndInertia; + + [NativeTypeName("bool")] + public byte drawSleepStats; + + [NativeTypeName("bool")] + public byte drawSoftBodyVertices; + + [NativeTypeName("bool")] + public byte drawSoftBodyVertexVelocities; + + [NativeTypeName("bool")] + public byte drawSoftBodyEdgeConstraints; + + [NativeTypeName("bool")] + public byte drawSoftBodyBendConstraints; + + [NativeTypeName("bool")] + public byte drawSoftBodyVolumeConstraints; + + [NativeTypeName("bool")] + public byte drawSoftBodySkinConstraints; + + [NativeTypeName("bool")] + public byte drawSoftBodyLRAConstraints; + + [NativeTypeName("bool")] + public byte drawSoftBodyPredictedBounds; + + public JPH_SoftBodyConstraintColor drawSoftBodyConstraintColor; + } + + public partial struct JPH_SupportingFace + { + [NativeTypeName("uint32_t")] + public uint count; + + [NativeTypeName("JPH_Vec3[32]")] + public _vertices_e__FixedBuffer vertices; + + public partial struct _vertices_e__FixedBuffer + { + public float3 e0; + public float3 e1; + public float3 e2; + public float3 e3; + public float3 e4; + public float3 e5; + public float3 e6; + public float3 e7; + public float3 e8; + public float3 e9; + public float3 e10; + public float3 e11; + public float3 e12; + public float3 e13; + public float3 e14; + public float3 e15; + public float3 e16; + public float3 e17; + public float3 e18; + public float3 e19; + public float3 e20; + public float3 e21; + public float3 e22; + public float3 e23; + public float3 e24; + public float3 e25; + public float3 e26; + public float3 e27; + public float3 e28; + public float3 e29; + public float3 e30; + public float3 e31; + + public unsafe ref float3 this[int index] + { + get + { + fixed (float3* pThis = &e0) + { + return ref pThis[index]; + } + } + } + } + } + + public unsafe partial struct JPH_CollisionGroup + { + [NativeTypeName("const JPH_GroupFilter *")] + public JPH_GroupFilter* groupFilter; + + [NativeTypeName("JPH_CollisionGroupID")] + public uint groupID; + + [NativeTypeName("JPH_CollisionSubGroupID")] + public uint subGroupID; + } + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_CastRayResultCallback(void* context, [NativeTypeName("const JPH_RayCastResult *")] JPH_RayCastResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_RayCastBodyResultCallback(void* context, [NativeTypeName("const JPH_BroadPhaseCastResult *")] JPH_BroadPhaseCastResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_CollideShapeBodyResultCallback(void* context, [NativeTypeName("const JPH_BodyID")] uint result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_CollidePointResultCallback(void* context, [NativeTypeName("const JPH_CollidePointResult *")] JPH_CollidePointResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_CollideShapeResultCallback(void* context, [NativeTypeName("const JPH_CollideShapeResult *")] JPH_CollideShapeResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_CastShapeResultCallback(void* context, [NativeTypeName("const JPH_ShapeCastResult *")] JPH_ShapeCastResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate float JPH_CastRayCollectorCallback(void* context, [NativeTypeName("const JPH_RayCastResult *")] JPH_RayCastResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate float JPH_RayCastBodyCollectorCallback(void* context, [NativeTypeName("const JPH_BroadPhaseCastResult *")] JPH_BroadPhaseCastResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate float JPH_CollideShapeBodyCollectorCallback(void* context, [NativeTypeName("const JPH_BodyID")] uint result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate float JPH_CollidePointCollectorCallback(void* context, [NativeTypeName("const JPH_CollidePointResult *")] JPH_CollidePointResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate float JPH_CollideShapeCollectorCallback(void* context, [NativeTypeName("const JPH_CollideShapeResult *")] JPH_CollideShapeResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate float JPH_CastShapeCollectorCallback(void* context, [NativeTypeName("const JPH_ShapeCastResult *")] JPH_ShapeCastResult* result); + + public partial struct JPH_CollisionEstimationResultImpulse + { + public float contactImpulse; + + public float frictionImpulse1; public float frictionImpulse2; } - internal unsafe partial struct JPH_CollisionEstimationResult + public unsafe partial struct JPH_CollisionEstimationResult { [NativeTypeName("JPH_Vec3")] public float3 linearVelocity1; @@ -715,112 +1009,116 @@ internal unsafe partial struct JPH_CollisionEstimationResult [NativeTypeName("JPH_Vec3")] public float3 tangent2; + [NativeTypeName("uint32_t")] public uint impulseCount; public JPH_CollisionEstimationResultImpulse* impulses; } - internal partial struct JPH_BodyActivationListener + public partial struct JPH_BodyActivationListener { } - internal partial struct JPH_BodyDrawFilter + public partial struct JPH_BodyDrawFilter { } - internal partial struct JPH_SharedMutex + public partial struct JPH_SharedMutex { } - internal partial struct JPH_DebugRenderer + public partial struct JPH_DebugRenderer { } - internal partial struct JPH_Constraint + public partial struct JPH_Constraint { } - internal partial struct JPH_TwoBodyConstraint + public partial struct JPH_TwoBodyConstraint { } - internal partial struct JPH_FixedConstraint + public partial struct JPH_FixedConstraint { } - internal partial struct JPH_DistanceConstraint + public partial struct JPH_DistanceConstraint { } - internal partial struct JPH_PointConstraint + public partial struct JPH_PointConstraint { } - internal partial struct JPH_HingeConstraint + public partial struct JPH_HingeConstraint { } - internal partial struct JPH_SliderConstraint + public partial struct JPH_SliderConstraint { } - internal partial struct JPH_ConeConstraint + public partial struct JPH_ConeConstraint { } - internal partial struct JPH_SwingTwistConstraint + public partial struct JPH_SwingTwistConstraint { } - internal partial struct JPH_SixDOFConstraint + public partial struct JPH_SixDOFConstraint { } - internal partial struct JPH_GearConstraint + public partial struct JPH_GearConstraint { } - internal partial struct JPH_CharacterBase + public partial struct JPH_CharacterBase { } - internal partial struct JPH_Character + public partial struct JPH_Character { } - internal partial struct JPH_CharacterVirtual + public partial struct JPH_CharacterVirtual { } - internal partial struct JPH_CharacterContactListener + public partial struct JPH_CharacterContactListener { } - internal partial struct JPH_CharacterVsCharacterCollision + public partial struct JPH_CharacterVsCharacterCollision { } - internal partial struct JPH_Skeleton + public partial struct JPH_Skeleton { } - internal partial struct JPH_RagdollSettings + public partial struct JPH_RagdollSettings { } - internal partial struct JPH_Ragdoll + public partial struct JPH_Ragdoll { } - internal partial struct JPH_ConstraintSettings + public partial struct JPH_ConstraintSettings { [NativeTypeName("bool")] - public NativeBool enabled; + public byte enabled; + [NativeTypeName("uint32_t")] public uint constraintPriority; + [NativeTypeName("uint32_t")] public uint numVelocityStepsOverride; + [NativeTypeName("uint32_t")] public uint numPositionStepsOverride; public float drawConstraintSize; @@ -829,15 +1127,14 @@ internal partial struct JPH_ConstraintSettings public ulong userData; } - internal partial struct JPH_FixedConstraintSettings + public partial struct JPH_FixedConstraintSettings { public JPH_ConstraintSettings @base; - [NativeTypeName("JPH_ConstraintSpace")] - public ConstraintSpace space; + public JPH_ConstraintSpace space; [NativeTypeName("bool")] - public NativeBool autoDetectPoint; + public byte autoDetectPoint; [NativeTypeName("JPH_RVec3")] public rvec3 point1; @@ -858,12 +1155,11 @@ internal partial struct JPH_FixedConstraintSettings public float3 axisY2; } - internal partial struct JPH_DistanceConstraintSettings + public partial struct JPH_DistanceConstraintSettings { public JPH_ConstraintSettings @base; - [NativeTypeName("JPH_ConstraintSpace")] - public ConstraintSpace space; + public JPH_ConstraintSpace space; [NativeTypeName("JPH_RVec3")] public rvec3 point1; @@ -878,12 +1174,11 @@ internal partial struct JPH_DistanceConstraintSettings public JPH_SpringSettings limitsSpringSettings; } - internal partial struct JPH_PointConstraintSettings + public partial struct JPH_PointConstraintSettings { public JPH_ConstraintSettings @base; - [NativeTypeName("JPH_ConstraintSpace")] - public ConstraintSpace space; + public JPH_ConstraintSpace space; [NativeTypeName("JPH_RVec3")] public rvec3 point1; @@ -892,12 +1187,11 @@ internal partial struct JPH_PointConstraintSettings public rvec3 point2; } - internal partial struct JPH_HingeConstraintSettings + public partial struct JPH_HingeConstraintSettings { public JPH_ConstraintSettings @base; - [NativeTypeName("JPH_ConstraintSpace")] - public ConstraintSpace space; + public JPH_ConstraintSpace space; [NativeTypeName("JPH_RVec3")] public rvec3 point1; @@ -928,15 +1222,14 @@ internal partial struct JPH_HingeConstraintSettings public JPH_MotorSettings motorSettings; } - internal partial struct JPH_SliderConstraintSettings + public partial struct JPH_SliderConstraintSettings { public JPH_ConstraintSettings @base; - [NativeTypeName("JPH_ConstraintSpace")] - public ConstraintSpace space; + public JPH_ConstraintSpace space; [NativeTypeName("bool")] - public NativeBool autoDetectPoint; + public byte autoDetectPoint; [NativeTypeName("JPH_RVec3")] public rvec3 point1; @@ -967,12 +1260,11 @@ internal partial struct JPH_SliderConstraintSettings public JPH_MotorSettings motorSettings; } - internal partial struct JPH_ConeConstraintSettings + public partial struct JPH_ConeConstraintSettings { public JPH_ConstraintSettings @base; - [NativeTypeName("JPH_ConstraintSpace")] - public ConstraintSpace space; + public JPH_ConstraintSpace space; [NativeTypeName("JPH_RVec3")] public rvec3 point1; @@ -989,12 +1281,11 @@ internal partial struct JPH_ConeConstraintSettings public float halfConeAngle; } - internal partial struct JPH_SwingTwistConstraintSettings + public partial struct JPH_SwingTwistConstraintSettings { public JPH_ConstraintSettings @base; - [NativeTypeName("JPH_ConstraintSpace")] - public ConstraintSpace space; + public JPH_ConstraintSpace space; [NativeTypeName("JPH_RVec3")] public rvec3 position1; @@ -1014,8 +1305,7 @@ internal partial struct JPH_SwingTwistConstraintSettings [NativeTypeName("JPH_Vec3")] public float3 planeAxis2; - [NativeTypeName("JPH_SwingType")] - public SwingType swingType; + public JPH_SwingType swingType; public float normalHalfConeAngle; @@ -1032,12 +1322,11 @@ internal partial struct JPH_SwingTwistConstraintSettings public JPH_MotorSettings twistMotorSettings; } - internal unsafe partial struct JPH_SixDOFConstraintSettings + public unsafe partial struct JPH_SixDOFConstraintSettings { public JPH_ConstraintSettings @base; - [NativeTypeName("JPH_ConstraintSpace")] - public ConstraintSpace space; + public JPH_ConstraintSpace space; [NativeTypeName("JPH_RVec3")] public rvec3 position1; @@ -1060,8 +1349,7 @@ internal unsafe partial struct JPH_SixDOFConstraintSettings [NativeTypeName("float[6]")] public fixed float maxFriction[6]; - [NativeTypeName("JPH_SwingType")] - public SwingType swingType; + public JPH_SwingType swingType; [NativeTypeName("float[6]")] public fixed float limitMin[6]; @@ -1115,12 +1403,11 @@ public unsafe ref JPH_MotorSettings this[int index] } } - internal partial struct JPH_GearConstraintSettings + public partial struct JPH_GearConstraintSettings { public JPH_ConstraintSettings @base; - [NativeTypeName("JPH_ConstraintSpace")] - public ConstraintSpace space; + public JPH_ConstraintSpace space; [NativeTypeName("JPH_Vec3")] public float3 hingeAxis1; @@ -1131,7 +1418,7 @@ internal partial struct JPH_GearConstraintSettings public float ratio; } - internal unsafe partial struct JPH_BodyLockRead + public unsafe partial struct JPH_BodyLockRead { [NativeTypeName("const JPH_BodyLockInterface *")] public JPH_BodyLockInterface* lockInterface; @@ -1142,7 +1429,7 @@ internal unsafe partial struct JPH_BodyLockRead public JPH_Body* body; } - internal unsafe partial struct JPH_BodyLockWrite + public unsafe partial struct JPH_BodyLockWrite { [NativeTypeName("const JPH_BodyLockInterface *")] public JPH_BodyLockInterface* lockInterface; @@ -1152,15 +1439,15 @@ internal unsafe partial struct JPH_BodyLockWrite public JPH_Body* body; } - internal partial struct JPH_BodyLockMultiRead + public partial struct JPH_BodyLockMultiRead { } - internal partial struct JPH_BodyLockMultiWrite + public partial struct JPH_BodyLockMultiWrite { } - internal partial struct JPH_ExtendedUpdateSettings + public partial struct JPH_ExtendedUpdateSettings { [NativeTypeName("JPH_Vec3")] public float3 stickToFloorStepDown; @@ -1178,7 +1465,7 @@ internal partial struct JPH_ExtendedUpdateSettings public float3 walkStairsStepDownExtra; } - internal unsafe partial struct JPH_CharacterBaseSettings + public unsafe partial struct JPH_CharacterBaseSettings { [NativeTypeName("JPH_Vec3")] public float3 up; @@ -1188,18 +1475,18 @@ internal unsafe partial struct JPH_CharacterBaseSettings public float maxSlopeAngle; [NativeTypeName("bool")] - public NativeBool enhancedInternalEdgeRemoval; + public byte enhancedInternalEdgeRemoval; [NativeTypeName("const JPH_Shape *")] public JPH_Shape* shape; } - internal partial struct JPH_CharacterSettings + public partial struct JPH_CharacterSettings { public JPH_CharacterBaseSettings @base; [NativeTypeName("JPH_ObjectLayer")] - public ObjectLayer layer; + public uint layer; public float mass; @@ -1207,11 +1494,10 @@ internal partial struct JPH_CharacterSettings public float gravityFactor; - [NativeTypeName("JPH_AllowedDOFs")] - public AllowedDOFs allowedDOFs; + public JPH_AllowedDOFs allowedDOFs; } - internal unsafe partial struct JPH_CharacterVirtualSettings + public unsafe partial struct JPH_CharacterVirtualSettings { public JPH_CharacterBaseSettings @base; @@ -1225,13 +1511,14 @@ internal unsafe partial struct JPH_CharacterVirtualSettings [NativeTypeName("JPH_Vec3")] public float3 shapeOffset; - [NativeTypeName("JPH_BackFaceMode")] - public BackFaceMode backFaceMode; + public JPH_BackFaceMode backFaceMode; public float predictiveContactDistance; + [NativeTypeName("uint32_t")] public uint maxCollisionIterations; + [NativeTypeName("uint32_t")] public uint maxConstraintIterations; public float minTimeRemaining; @@ -1240,6 +1527,7 @@ internal unsafe partial struct JPH_CharacterVirtualSettings public float characterPadding; + [NativeTypeName("uint32_t")] public uint maxNumHits; public float hitReductionCosMaxAngle; @@ -1250,28 +1538,28 @@ internal unsafe partial struct JPH_CharacterVirtualSettings public JPH_Shape* innerBodyShape; [NativeTypeName("JPH_BodyID")] - public BodyID innerBodyIDOverride; + public uint innerBodyIDOverride; [NativeTypeName("JPH_ObjectLayer")] - public ObjectLayer innerBodyLayer; + public uint innerBodyLayer; } - internal partial struct JPH_CharacterContactSettings + public partial struct JPH_CharacterContactSettings { [NativeTypeName("bool")] - public NativeBool canPushCharacter; + public byte canPushCharacter; [NativeTypeName("bool")] - public NativeBool canReceiveImpulses; + public byte canReceiveImpulses; } - internal unsafe partial struct JPH_CharacterVirtualContact + public unsafe partial struct JPH_CharacterVirtualContact { [NativeTypeName("uint64_t")] public ulong hash; [NativeTypeName("JPH_BodyID")] - public BodyID bodyB; + public uint bodyB; [NativeTypeName("JPH_CharacterID")] public uint characterIDB; @@ -1295,11 +1583,10 @@ internal unsafe partial struct JPH_CharacterVirtualContact public float fraction; - [NativeTypeName("JPH_MotionType")] - public MotionType motionTypeB; + public JPH_MotionType motionTypeB; [NativeTypeName("bool")] - public NativeBool isSensorB; + public byte isSensorB; [NativeTypeName("const JPH_CharacterVirtual *")] public JPH_CharacterVirtual* characterB; @@ -1311,71 +1598,78 @@ internal unsafe partial struct JPH_CharacterVirtualContact public JPH_PhysicsMaterial* material; [NativeTypeName("bool")] - public NativeBool hadCollision; + public byte hadCollision; [NativeTypeName("bool")] - public NativeBool wasDiscarded; + public byte wasDiscarded; [NativeTypeName("bool")] - public NativeBool canPushCharacter; + public byte canPushCharacter; } [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal unsafe delegate void JPH_TraceFunc([NativeTypeName("const char *")] sbyte* mssage); + public unsafe delegate void JPH_TraceFunc([NativeTypeName("const char *")] sbyte* message); [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - [return: NativeTypeName("bool")] - internal unsafe delegate NativeBool JPH_AssertFailureFunc([NativeTypeName("const char *")] sbyte* expression, [NativeTypeName("const char *")] sbyte* mssage, [NativeTypeName("const char *")] sbyte* file, uint line); + public unsafe delegate bool JPH_AssertFailureFunc([NativeTypeName("const char *")] sbyte* expression, [NativeTypeName("const char *")] sbyte* message, [NativeTypeName("const char *")] sbyte* file, [NativeTypeName("uint32_t")] uint line); [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal delegate void JPH_JobFunction([NativeTypeName("void*")] nint arg); + public unsafe delegate void JPH_JobFunction(void* arg); [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal delegate void JPH_QueueJobCallback([NativeTypeName("void*")] nint context, [NativeTypeName("JPH_JobFunction *")] nint job, [NativeTypeName("void*")] nint arg); + public unsafe delegate void JPH_QueueJobCallback(void* context, [NativeTypeName("JPH_JobFunction *")] IntPtr job, void* arg); [UnmanagedFunctionPointer(CallingConvention.Cdecl)] - internal unsafe delegate void JPH_QueueJobsCallback([NativeTypeName("void*")] nint context, [NativeTypeName("JPH_JobFunction *")] nint job, [NativeTypeName("void **")] nint* args, uint count); + public unsafe delegate void JPH_QueueJobsCallback(void* context, [NativeTypeName("JPH_JobFunction *")] IntPtr job, void** args, [NativeTypeName("uint32_t")] uint count); - internal partial struct JPH_JobSystemThreadPoolConfig + public partial struct JobSystemThreadPoolConfig { + [NativeTypeName("uint32_t")] public uint maxJobs; + [NativeTypeName("uint32_t")] public uint maxBarriers; [NativeTypeName("int32_t")] public int numThreads; } - internal partial struct JPH_JobSystemConfig + public unsafe partial struct JPH_JobSystemConfig { - [NativeTypeName("void*")] - public nint context; + public void* context; [NativeTypeName("JPH_QueueJobCallback *")] - public nint queueJob; + public IntPtr queueJob; [NativeTypeName("JPH_QueueJobsCallback *")] - public nint queueJobs; + public IntPtr queueJobs; + [NativeTypeName("uint32_t")] public uint maxConcurrency; + [NativeTypeName("uint32_t")] public uint maxBarriers; } - internal partial struct JPH_JobSystem + public partial struct JPH_JobSystem { } - internal unsafe partial struct JPH_PhysicsSystemSettings + public unsafe partial struct JPH_PhysicsSystemSettings { + [NativeTypeName("uint32_t")] public uint maxBodies; + [NativeTypeName("uint32_t")] public uint numBodyMutexes; + [NativeTypeName("uint32_t")] public uint maxBodyPairs; + [NativeTypeName("uint32_t")] public uint maxContactConstraints; + [NativeTypeName("uint32_t")] public uint _padding; public JPH_BroadPhaseLayerInterface* broadPhaseLayerInterface; @@ -1385,7 +1679,7 @@ internal unsafe partial struct JPH_PhysicsSystemSettings public JPH_ObjectVsBroadPhaseLayerFilter* objectVsBroadPhaseLayerFilter; } - internal partial struct JPH_PhysicsSettings + public partial struct JPH_PhysicsSettings { public int maxInFlightBodyPairs; @@ -1409,2893 +1703,3789 @@ internal partial struct JPH_PhysicsSettings public float bodyPairCacheMaxDeltaPositionSq; - public float bodyPairCacheCosMaxDeltaRotationDiv2; + public float bodyPairCacheCosMaxDeltaRotationDiv2; + + public float contactNormalCosMaxDeltaRotation; + + public float contactPointPreserveLambdaMaxDistSq; + + [NativeTypeName("uint32_t")] + public uint numVelocitySteps; + + [NativeTypeName("uint32_t")] + public uint numPositionSteps; + + public float minVelocityForRestitution; + + public float timeBeforeSleep; + + public float pointVelocitySleepThreshold; + + [NativeTypeName("bool")] + public byte deterministicSimulation; + + [NativeTypeName("bool")] + public byte constraintWarmStart; + + [NativeTypeName("bool")] + public byte useBodyPairContactCache; + + [NativeTypeName("bool")] + public byte useManifoldReduction; + + [NativeTypeName("bool")] + public byte useLargeIslandSplitter; + + [NativeTypeName("bool")] + public byte allowSleeping; + + [NativeTypeName("bool")] + public byte checkActiveEdges; + } + + public unsafe partial struct JPH_PhysicsStepListenerContext + { + public float deltaTime; + + [NativeTypeName("JPH_Bool")] + public uint isFirstStep; + + [NativeTypeName("JPH_Bool")] + public uint isLastStep; + + public JPH_PhysicsSystem* physicsSystem; + } + + public partial struct JPH_PhysicsStepListener_Procs + { + [NativeTypeName("void (*)(void *, const JPH_PhysicsStepListenerContext *)")] + public IntPtr OnStep; + } + + public partial struct JPH_BroadPhaseLayerFilter_Procs + { + [NativeTypeName("bool (*)(void *, JPH_BroadPhaseLayer)")] + public IntPtr ShouldCollide; + } + + public partial struct JPH_ObjectLayerFilter_Procs + { + [NativeTypeName("bool (*)(void *, JPH_ObjectLayer)")] + public IntPtr ShouldCollide; + } + + public partial struct JPH_BodyFilter_Procs + { + [NativeTypeName("bool (*)(void *, JPH_BodyID)")] + public IntPtr ShouldCollide; + + [NativeTypeName("bool (*)(void *, const JPH_Body *)")] + public IntPtr ShouldCollideLocked; + } + + public partial struct JPH_ShapeFilter_Procs + { + [NativeTypeName("bool (*)(void *, const JPH_Shape *, const JPH_SubShapeID *)")] + public IntPtr ShouldCollide; + + [NativeTypeName("bool (*)(void *, const JPH_Shape *, const JPH_SubShapeID *, const JPH_Shape *, const JPH_SubShapeID *)")] + public IntPtr ShouldCollide2; + } + + public partial struct JPH_SimShapeFilter_Procs + { + [NativeTypeName("bool (*)(void *, const JPH_Body *, const JPH_Shape *, const JPH_SubShapeID *, const JPH_Body *, const JPH_Shape *, const JPH_SubShapeID *)")] + public IntPtr ShouldCollide; + } + + public partial struct JPH_ContactListener_Procs + { + [NativeTypeName("JPH_ValidateResult (*)(void *, const JPH_Body *, const JPH_Body *, const JPH_RVec3 *, const JPH_CollideShapeResult *)")] + public IntPtr OnContactValidate; + + [NativeTypeName("void (*)(void *, const JPH_Body *, const JPH_Body *, const JPH_ContactManifold *, JPH_ContactSettings *)")] + public IntPtr OnContactAdded; + + [NativeTypeName("void (*)(void *, const JPH_Body *, const JPH_Body *, const JPH_ContactManifold *, JPH_ContactSettings *)")] + public IntPtr OnContactPersisted; + + [NativeTypeName("void (*)(void *, const JPH_SubShapeIDPair *)")] + public IntPtr OnContactRemoved; + } + + public partial struct JPH_BodyActivationListener_Procs + { + [NativeTypeName("void (*)(void *, JPH_BodyID, uint64_t)")] + public IntPtr OnBodyActivated; + + [NativeTypeName("void (*)(void *, JPH_BodyID, uint64_t)")] + public IntPtr OnBodyDeactivated; + } + + public partial struct JPH_BodyDrawFilter_Procs + { + [NativeTypeName("bool (*)(void *, const JPH_Body *)")] + public IntPtr ShouldDraw; + } + + public partial struct JPH_CharacterContactListener_Procs + { + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_Body *, JPH_Vec3 *, JPH_Vec3 *)")] + public IntPtr OnAdjustBodyVelocity; + + [NativeTypeName("bool (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID)")] + public IntPtr OnContactValidate; + + [NativeTypeName("bool (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterVirtual *, const JPH_SubShapeID)")] + public IntPtr OnCharacterContactValidate; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, JPH_CharacterContactSettings *)")] + public IntPtr OnContactAdded; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, JPH_CharacterContactSettings *)")] + public IntPtr OnContactPersisted; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID)")] + public IntPtr OnContactRemoved; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterVirtual *, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, JPH_CharacterContactSettings *)")] + public IntPtr OnCharacterContactAdded; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterVirtual *, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, JPH_CharacterContactSettings *)")] + public IntPtr OnCharacterContactPersisted; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterID, const JPH_SubShapeID)")] + public IntPtr OnCharacterContactRemoved; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, const JPH_Vec3 *, const JPH_PhysicsMaterial *, const JPH_Vec3 *, JPH_Vec3 *)")] + public IntPtr OnContactSolve; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterVirtual *, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, const JPH_Vec3 *, const JPH_PhysicsMaterial *, const JPH_Vec3 *, JPH_Vec3 *)")] + public IntPtr OnCharacterContactSolve; + } + + public partial struct JPH_CharacterVsCharacterCollision_Procs + { + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_RMatrix4x4 *, const JPH_CollideShapeSettings *, const JPH_RVec3 *)")] + public IntPtr CollideCharacter; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_RMatrix4x4 *, const JPH_Vec3 *, const JPH_ShapeCastSettings *, const JPH_RVec3 *)")] + public IntPtr CastCharacter; + } + + public partial struct JPH_DebugRenderer_Procs + { + [NativeTypeName("void (*)(void *, const JPH_RVec3 *, const JPH_RVec3 *, JPH_Color)")] + public IntPtr DrawLine; + + [NativeTypeName("void (*)(void *, const JPH_RVec3 *, const JPH_RVec3 *, const JPH_RVec3 *, JPH_Color, JPH_DebugRenderer_CastShadow)")] + public IntPtr DrawTriangle; + + [NativeTypeName("void (*)(void *, const JPH_RVec3 *, const char *, JPH_Color, float)")] + public IntPtr DrawText3D; + } + + public unsafe partial struct JPH_SkeletonJoint + { + [NativeTypeName("const char *")] + public sbyte* name; + + [NativeTypeName("const char *")] + public sbyte* parentName; + + public int parentJointIndex; + } + + public partial struct JPH_WheelSettings + { + } + + public partial struct JPH_WheelSettingsWV + { + } + + public partial struct JPH_WheelSettingsTV + { + } + + public partial struct JPH_Wheel + { + } + + public partial struct JPH_WheelWV + { + } + + public partial struct JPH_WheelTV + { + } + + public partial struct JPH_VehicleTransmissionSettings + { + } + + public partial struct JPH_VehicleCollisionTester + { + } + + public partial struct JPH_VehicleCollisionTesterRay + { + } + + public partial struct JPH_VehicleCollisionTesterCastSphere + { + } + + public partial struct JPH_VehicleCollisionTesterCastCylinder + { + } + + public partial struct JPH_VehicleConstraint + { + } + + public partial struct JPH_VehicleControllerSettings + { + } + + public partial struct JPH_WheeledVehicleControllerSettings + { + } + + public partial struct JPH_MotorcycleControllerSettings + { + } + + public partial struct JPH_TrackedVehicleControllerSettings + { + } + + public partial struct JPH_WheeledVehicleController + { + } + + public partial struct JPH_MotorcycleController + { + } + + public partial struct JPH_TrackedVehicleController + { + } + + public partial struct JPH_VehicleController + { + } + + public partial struct JPH_VehicleAntiRollBar + { + public int leftWheel; + + public int rightWheel; + + public float stiffness; + } + + public unsafe partial struct JPH_VehicleConstraintSettings + { + public JPH_ConstraintSettings @base; + + [NativeTypeName("JPH_Vec3")] + public float3 up; + + [NativeTypeName("JPH_Vec3")] + public float3 forward; + + public float maxPitchRollAngle; + + [NativeTypeName("uint32_t")] + public uint wheelsCount; + + public JPH_WheelSettings** wheels; + + [NativeTypeName("uint32_t")] + public uint antiRollBarsCount; + + [NativeTypeName("const JPH_VehicleAntiRollBar *")] + public JPH_VehicleAntiRollBar* antiRollBars; + + public JPH_VehicleControllerSettings* controller; + } + + public partial struct JPH_VehicleEngineSettings + { + public float maxTorque; + + public float minRPM; + + public float maxRPM; + + public float inertia; + + public float angularDamping; + } + + public partial struct JPH_VehicleDifferentialSettings + { + public int leftWheel; + + public int rightWheel; + + public float differentialRatio; + + public float leftRightSplit; + + public float limitedSlipRatio; + + public float engineTorqueRatio; + } + + public static unsafe partial class UnsafeBindings + { + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_JobSystem* JPH_JobSystemThreadPool_Create([NativeTypeName("const JobSystemThreadPoolConfig *")] JobSystemThreadPoolConfig* config); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_JobSystem* JPH_JobSystemCallback_Create([NativeTypeName("const JPH_JobSystemConfig *")] JPH_JobSystemConfig* config); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_JobSystem_Destroy(JPH_JobSystem* jobSystem); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Init(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shutdown(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SetTraceHandler([NativeTypeName("JPH_TraceFunc")] IntPtr handler); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SetAssertFailureHandler([NativeTypeName("JPH_AssertFailureFunc")] IntPtr handler); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CollideShapeResult_FreeMembers(JPH_CollideShapeResult* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CollisionEstimationResult_FreeMembers(JPH_CollisionEstimationResult* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BroadPhaseLayerInterface* JPH_BroadPhaseLayerInterfaceMask_Create([NativeTypeName("uint32_t")] uint numBroadPhaseLayers); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BroadPhaseLayerInterfaceMask_ConfigureLayer(JPH_BroadPhaseLayerInterface* bpInterface, [NativeTypeName("JPH_BroadPhaseLayer")] byte broadPhaseLayer, [NativeTypeName("uint32_t")] uint groupsToInclude, [NativeTypeName("uint32_t")] uint groupsToExclude); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BroadPhaseLayerInterface* JPH_BroadPhaseLayerInterfaceTable_Create([NativeTypeName("uint32_t")] uint numObjectLayers, [NativeTypeName("uint32_t")] uint numBroadPhaseLayers); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BroadPhaseLayerInterfaceTable_MapObjectToBroadPhaseLayer(JPH_BroadPhaseLayerInterface* bpInterface, [NativeTypeName("JPH_ObjectLayer")] uint objectLayer, [NativeTypeName("JPH_BroadPhaseLayer")] byte broadPhaseLayer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ObjectLayerPairFilter* JPH_ObjectLayerPairFilterMask_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_ObjectLayer")] + public static extern uint JPH_ObjectLayerPairFilterMask_GetObjectLayer([NativeTypeName("uint32_t")] uint group, [NativeTypeName("uint32_t")] uint mask); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ObjectLayerPairFilterMask_GetGroup([NativeTypeName("JPH_ObjectLayer")] uint layer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ObjectLayerPairFilterMask_GetMask([NativeTypeName("JPH_ObjectLayer")] uint layer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ObjectLayerPairFilter* JPH_ObjectLayerPairFilterTable_Create([NativeTypeName("uint32_t")] uint numObjectLayers); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ObjectLayerPairFilterTable_DisableCollision(JPH_ObjectLayerPairFilter* objectFilter, [NativeTypeName("JPH_ObjectLayer")] uint layer1, [NativeTypeName("JPH_ObjectLayer")] uint layer2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ObjectLayerPairFilterTable_EnableCollision(JPH_ObjectLayerPairFilter* objectFilter, [NativeTypeName("JPH_ObjectLayer")] uint layer1, [NativeTypeName("JPH_ObjectLayer")] uint layer2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_ObjectLayerPairFilterTable_ShouldCollide(JPH_ObjectLayerPairFilter* objectFilter, [NativeTypeName("JPH_ObjectLayer")] uint layer1, [NativeTypeName("JPH_ObjectLayer")] uint layer2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ObjectVsBroadPhaseLayerFilter* JPH_ObjectVsBroadPhaseLayerFilterMask_Create([NativeTypeName("const JPH_BroadPhaseLayerInterface *")] JPH_BroadPhaseLayerInterface* broadPhaseLayerInterface); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ObjectVsBroadPhaseLayerFilter* JPH_ObjectVsBroadPhaseLayerFilterTable_Create(JPH_BroadPhaseLayerInterface* broadPhaseLayerInterface, [NativeTypeName("uint32_t")] uint numBroadPhaseLayers, JPH_ObjectLayerPairFilter* objectLayerPairFilter, [NativeTypeName("uint32_t")] uint numObjectLayers); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DrawSettings_InitDefault(JPH_DrawSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PhysicsSystem* JPH_PhysicsSystem_Create([NativeTypeName("const JPH_PhysicsSystemSettings *")] JPH_PhysicsSystemSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_Destroy(JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_SetPhysicsSettings(JPH_PhysicsSystem* system, JPH_PhysicsSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_GetPhysicsSettings(JPH_PhysicsSystem* system, JPH_PhysicsSettings* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_OptimizeBroadPhase(JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PhysicsUpdateError JPH_PhysicsSystem_Update(JPH_PhysicsSystem* system, float deltaTime, int collisionSteps, JPH_JobSystem* jobSystem); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyInterface* JPH_PhysicsSystem_GetBodyInterface(JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyInterface* JPH_PhysicsSystem_GetBodyInterfaceNoLock(JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_BodyLockInterface *")] + public static extern JPH_BodyLockInterface* JPH_PhysicsSystem_GetBodyLockInterface([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_BodyLockInterface *")] + public static extern JPH_BodyLockInterface* JPH_PhysicsSystem_GetBodyLockInterfaceNoLock([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_BroadPhaseQuery *")] + public static extern JPH_BroadPhaseQuery* JPH_PhysicsSystem_GetBroadPhaseQuery([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_NarrowPhaseQuery *")] + public static extern JPH_NarrowPhaseQuery* JPH_PhysicsSystem_GetNarrowPhaseQuery([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_NarrowPhaseQuery *")] + public static extern JPH_NarrowPhaseQuery* JPH_PhysicsSystem_GetNarrowPhaseQueryNoLock([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_SetContactListener(JPH_PhysicsSystem* system, JPH_ContactListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_SetBodyActivationListener(JPH_PhysicsSystem* system, JPH_BodyActivationListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_SetSimShapeFilter(JPH_PhysicsSystem* system, JPH_SimShapeFilter* filter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_PhysicsSystem_WereBodiesInContact([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, [NativeTypeName("JPH_BodyID")] uint body1, [NativeTypeName("JPH_BodyID")] uint body2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_PhysicsSystem_GetNumBodies([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_PhysicsSystem_GetNumActiveBodies([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, JPH_BodyType type); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_PhysicsSystem_GetMaxBodies([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_PhysicsSystem_GetNumConstraints([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_SetGravity(JPH_PhysicsSystem* system, [NativeTypeName("const JPH_Vec3 *")] float3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_GetGravity(JPH_PhysicsSystem* system, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_AddConstraint(JPH_PhysicsSystem* system, JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_RemoveConstraint(JPH_PhysicsSystem* system, JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_AddConstraints(JPH_PhysicsSystem* system, JPH_Constraint** constraints, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_RemoveConstraints(JPH_PhysicsSystem* system, JPH_Constraint** constraints, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_AddStepListener(JPH_PhysicsSystem* system, JPH_PhysicsStepListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_RemoveStepListener(JPH_PhysicsSystem* system, JPH_PhysicsStepListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_GetBodies([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, [NativeTypeName("JPH_BodyID *")] uint* ids, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_GetConstraints([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, [NativeTypeName("const JPH_Constraint **")] JPH_Constraint** constraints, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_DrawBodies(JPH_PhysicsSystem* system, [NativeTypeName("const JPH_DrawSettings *")] JPH_DrawSettings* settings, JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_BodyDrawFilter *")] JPH_BodyDrawFilter* bodyFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_DrawConstraints(JPH_PhysicsSystem* system, JPH_DebugRenderer* renderer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_DrawConstraintLimits(JPH_PhysicsSystem* system, JPH_DebugRenderer* renderer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_DrawConstraintReferenceFrame(JPH_PhysicsSystem* system, JPH_DebugRenderer* renderer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsStepListener_SetProcs([NativeTypeName("const JPH_PhysicsStepListener_Procs *")] JPH_PhysicsStepListener_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PhysicsStepListener* JPH_PhysicsStepListener_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsStepListener_Destroy(JPH_PhysicsStepListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quaternion_FromTo([NativeTypeName("const JPH_Vec3 *")] float3* from, [NativeTypeName("const JPH_Vec3 *")] float3* to, [NativeTypeName("JPH_Quat *")] quaternion* quat); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_GetAxisAngle([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* outAxis, float* outAngle); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_GetEulerAngles([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_RotateAxisX([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_RotateAxisY([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_RotateAxisZ([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Inversed([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_GetPerpendicular([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Quat_GetRotationAngle([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("const JPH_Vec3 *")] float3* axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_FromEulerAngles([NativeTypeName("const JPH_Vec3 *")] float3* angles, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Add([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Subtract([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Multiply([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_MultiplyScalar([NativeTypeName("const JPH_Quat *")] quaternion* q, float scalar, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_DivideScalar([NativeTypeName("const JPH_Quat *")] quaternion* q, float scalar, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Dot([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, float* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Conjugated([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_GetTwist([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("const JPH_Vec3 *")] float3* axis, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_GetSwingTwist([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Quat *")] quaternion* outSwing, [NativeTypeName("JPH_Quat *")] quaternion* outTwist); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Lerp([NativeTypeName("const JPH_Quat *")] quaternion* from, [NativeTypeName("const JPH_Quat *")] quaternion* to, float fraction, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Slerp([NativeTypeName("const JPH_Quat *")] quaternion* from, [NativeTypeName("const JPH_Quat *")] quaternion* to, float fraction, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Rotate([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("const JPH_Vec3 *")] float3* vec, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_InverseRotate([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("const JPH_Vec3 *")] float3* vec, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Vec3_IsClose([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, float maxDistSq); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Vec3_IsNearZero([NativeTypeName("const JPH_Vec3 *")] float3* v, float maxDistSq); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Vec3_IsNormalized([NativeTypeName("const JPH_Vec3 *")] float3* v, float tolerance); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Vec3_IsNaN([NativeTypeName("const JPH_Vec3 *")] float3* v); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Negate([NativeTypeName("const JPH_Vec3 *")] float3* v, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Normalized([NativeTypeName("const JPH_Vec3 *")] float3* v, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Cross([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Abs([NativeTypeName("const JPH_Vec3 *")] float3* v, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Vec3_Length([NativeTypeName("const JPH_Vec3 *")] float3* v); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Vec3_LengthSquared([NativeTypeName("const JPH_Vec3 *")] float3* v); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_DotProduct([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, float* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Normalize([NativeTypeName("const JPH_Vec3 *")] float3* v, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Add([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Subtract([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Multiply([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_MultiplyScalar([NativeTypeName("const JPH_Vec3 *")] float3* v, float scalar, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Divide([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_DivideScalar([NativeTypeName("const JPH_Vec3 *")] float3* v, float scalar, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Add([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m2, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Subtract([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m2, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Multiply([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m2, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_MultiplyScalar([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m, float scalar, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Zero([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Identity([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Rotation([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Translation([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Vec3 *")] float3* translation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_RotationTranslation([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Vec3 *")] float3* translation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_InverseRotationTranslation([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Vec3 *")] float3* translation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Scale([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Inversed([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Transposed([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_Zero([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_Identity([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_Rotation([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_Translation([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_RVec3 *")] rvec3* translation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_RotationTranslation([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_RVec3 *")] rvec3* translation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_InverseRotationTranslation([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_RVec3 *")] rvec3* translation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_Scale([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_Inversed([NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* m, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_GetAxisX([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_GetAxisY([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_GetAxisZ([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_GetTranslation([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_GetQuaternion([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PhysicsMaterial* JPH_PhysicsMaterial_Create([NativeTypeName("const char *")] sbyte* name, [NativeTypeName("uint32_t")] uint color); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsMaterial_Destroy(JPH_PhysicsMaterial* material); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const char *")] + public static extern sbyte* JPH_PhysicsMaterial_GetDebugName([NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_PhysicsMaterial_GetDebugColor([NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_GroupFilter_Destroy(JPH_GroupFilter* groupFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_GroupFilter_CanCollide(JPH_GroupFilter* groupFilter, [NativeTypeName("const JPH_CollisionGroup *")] JPH_CollisionGroup* group1, [NativeTypeName("const JPH_CollisionGroup *")] JPH_CollisionGroup* group2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_GroupFilterTable* JPH_GroupFilterTable_Create([NativeTypeName("uint32_t")] uint numSubGroups); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_GroupFilterTable_DisableCollision(JPH_GroupFilterTable* table, [NativeTypeName("JPH_CollisionSubGroupID")] uint subGroup1, [NativeTypeName("JPH_CollisionSubGroupID")] uint subGroup2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_GroupFilterTable_EnableCollision(JPH_GroupFilterTable* table, [NativeTypeName("JPH_CollisionSubGroupID")] uint subGroup1, [NativeTypeName("JPH_CollisionSubGroupID")] uint subGroup2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_GroupFilterTable_IsCollisionEnabled(JPH_GroupFilterTable* table, [NativeTypeName("JPH_CollisionSubGroupID")] uint subGroup1, [NativeTypeName("JPH_CollisionSubGroupID")] uint subGroup2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ShapeSettings_Destroy(JPH_ShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_ShapeSettings_GetUserData([NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ShapeSettings_SetUserData(JPH_ShapeSettings* settings, [NativeTypeName("uint64_t")] ulong userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_Destroy(JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ShapeType JPH_Shape_GetType([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ShapeSubType JPH_Shape_GetSubType([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_Shape_GetUserData([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_SetUserData(JPH_Shape* shape, [NativeTypeName("uint64_t")] ulong userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Shape_MustBeStatic([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_GetCenterOfMass([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_GetLocalBounds([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, JPH_AABox* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Shape_GetSubShapeIDBitsRecursive([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_GetWorldSpaceBounds([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* centerOfMassTransform, [NativeTypeName("JPH_Vec3 *")] float3* scale, JPH_AABox* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Shape_GetInnerRadius([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_GetMassProperties([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, JPH_MassProperties* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_Shape *")] + public static extern JPH_Shape* JPH_Shape_GetLeafShape([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_SubShapeID")] uint subShapeID, [NativeTypeName("JPH_SubShapeID *")] uint* remainder); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_PhysicsMaterial *")] + public static extern JPH_PhysicsMaterial* JPH_Shape_GetMaterial([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_SubShapeID")] uint subShapeID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_GetSurfaceNormal([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_SubShapeID")] uint subShapeID, [NativeTypeName("JPH_Vec3 *")] float3* localPosition, [NativeTypeName("JPH_Vec3 *")] float3* normal); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_GetSupportingFace([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_SubShapeID")] uint subShapeID, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassTransform, JPH_SupportingFace* outVertices); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Shape_GetVolume([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Shape_IsValidScale([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_MakeScaleValid([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Shape* JPH_Shape_ScaleShape([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Shape_CastRay([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, JPH_RayCastResult* hit); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Shape_CastRay2([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_RayCastSettings *")] JPH_RayCastSettings* rayCastSettings, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_CastRayResultCallback *")] IntPtr callback, void* userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Shape_CollidePoint([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* point, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Shape_CollidePoint2([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* point, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_CollidePointResultCallback *")] IntPtr callback, void* userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_ConvexShapeSettings_GetDensity([NativeTypeName("const JPH_ConvexShapeSettings *")] JPH_ConvexShapeSettings* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ConvexShapeSettings_SetDensity(JPH_ConvexShapeSettings* shape, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_ConvexShape_GetDensity([NativeTypeName("const JPH_ConvexShape *")] JPH_ConvexShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ConvexShape_SetDensity(JPH_ConvexShape* shape, float inDensity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BoxShapeSettings* JPH_BoxShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* halfExtent, float convexRadius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BoxShape* JPH_BoxShapeSettings_CreateShape([NativeTypeName("const JPH_BoxShapeSettings *")] JPH_BoxShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BoxShape* JPH_BoxShape_Create([NativeTypeName("const JPH_Vec3 *")] float3* halfExtent, float convexRadius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BoxShape_GetHalfExtent([NativeTypeName("const JPH_BoxShape *")] JPH_BoxShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* halfExtent); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BoxShape_GetConvexRadius([NativeTypeName("const JPH_BoxShape *")] JPH_BoxShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_SphereShapeSettings* JPH_SphereShapeSettings_Create(float radius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_SphereShape* JPH_SphereShapeSettings_CreateShape([NativeTypeName("const JPH_SphereShapeSettings *")] JPH_SphereShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SphereShapeSettings_GetRadius([NativeTypeName("const JPH_SphereShapeSettings *")] JPH_SphereShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SphereShapeSettings_SetRadius(JPH_SphereShapeSettings* settings, float radius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_SphereShape* JPH_SphereShape_Create(float radius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SphereShape_GetRadius([NativeTypeName("const JPH_SphereShape *")] JPH_SphereShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PlaneShapeSettings* JPH_PlaneShapeSettings_Create([NativeTypeName("const JPH_Plane *")] JPH_Plane* plane, [NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material, float halfExtent); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PlaneShape* JPH_PlaneShapeSettings_CreateShape([NativeTypeName("const JPH_PlaneShapeSettings *")] JPH_PlaneShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PlaneShape* JPH_PlaneShape_Create([NativeTypeName("const JPH_Plane *")] JPH_Plane* plane, [NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material, float halfExtent); - public float contactNormalCosMaxDeltaRotation; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PlaneShape_GetPlane([NativeTypeName("const JPH_PlaneShape *")] JPH_PlaneShape* shape, JPH_Plane* result); - public float contactPointPreserveLambdaMaxDistSq; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_PlaneShape_GetHalfExtent([NativeTypeName("const JPH_PlaneShape *")] JPH_PlaneShape* shape); - public uint numVelocitySteps; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TriangleShapeSettings* JPH_TriangleShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("const JPH_Vec3 *")] float3* v3, float convexRadius); - public uint numPositionSteps; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TriangleShape* JPH_TriangleShapeSettings_CreateShape([NativeTypeName("const JPH_TriangleShapeSettings *")] JPH_TriangleShapeSettings* settings); - public float minVelocityForRestitution; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TriangleShape* JPH_TriangleShape_Create([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("const JPH_Vec3 *")] float3* v3, float convexRadius); - public float timeBeforeSleep; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TriangleShape_GetConvexRadius([NativeTypeName("const JPH_TriangleShape *")] JPH_TriangleShape* shape); - public float pointVelocitySleepThreshold; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TriangleShape_GetVertex1([NativeTypeName("const JPH_TriangleShape *")] JPH_TriangleShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); - [NativeTypeName("bool")] - public NativeBool deterministicSimulation; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TriangleShape_GetVertex2([NativeTypeName("const JPH_TriangleShape *")] JPH_TriangleShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); - [NativeTypeName("bool")] - public NativeBool constraintWarmStart; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TriangleShape_GetVertex3([NativeTypeName("const JPH_TriangleShape *")] JPH_TriangleShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); - [NativeTypeName("bool")] - public NativeBool useBodyPairContactCache; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CapsuleShapeSettings* JPH_CapsuleShapeSettings_Create(float halfHeightOfCylinder, float radius); - [NativeTypeName("bool")] - public NativeBool useManifoldReduction; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CapsuleShape* JPH_CapsuleShapeSettings_CreateShape([NativeTypeName("const JPH_CapsuleShapeSettings *")] JPH_CapsuleShapeSettings* settings); - [NativeTypeName("bool")] - public NativeBool useLargeIslandSplitter; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CapsuleShape* JPH_CapsuleShape_Create(float halfHeightOfCylinder, float radius); - [NativeTypeName("bool")] - public NativeBool allowSleeping; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CapsuleShape_GetRadius([NativeTypeName("const JPH_CapsuleShape *")] JPH_CapsuleShape* shape); - [NativeTypeName("bool")] - public NativeBool checkActiveEdges; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CapsuleShape_GetHalfHeightOfCylinder([NativeTypeName("const JPH_CapsuleShape *")] JPH_CapsuleShape* shape); - internal partial struct JPH_BroadPhaseLayerFilter_Procs - { - [NativeTypeName("bool (*)(void *, JPH_BroadPhaseLayer) __attribute__((cdecl))")] - public nint ShouldCollide; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CylinderShapeSettings* JPH_CylinderShapeSettings_Create(float halfHeight, float radius, float convexRadius); - internal partial struct JPH_ObjectLayerFilter_Procs - { - [NativeTypeName("bool (*)(void *, JPH_ObjectLayer) __attribute__((cdecl))")] - public nint ShouldCollide; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CylinderShape* JPH_CylinderShapeSettings_CreateShape([NativeTypeName("const JPH_CylinderShapeSettings *")] JPH_CylinderShapeSettings* settings); - internal partial struct JPH_BodyFilter_Procs - { - [NativeTypeName("bool (*)(void *, JPH_BodyID) __attribute__((cdecl))")] - public nint ShouldCollide; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CylinderShape* JPH_CylinderShape_Create(float halfHeight, float radius); - [NativeTypeName("bool (*)(void *, const JPH_Body *) __attribute__((cdecl))")] - public nint ShouldCollideLocked; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CylinderShape_GetRadius([NativeTypeName("const JPH_CylinderShape *")] JPH_CylinderShape* shape); - internal partial struct JPH_ShapeFilter_Procs - { - [NativeTypeName("bool (*)(void *, const JPH_Shape *, const JPH_SubShapeID *) __attribute__((cdecl))")] - public nint ShouldCollide; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CylinderShape_GetHalfHeight([NativeTypeName("const JPH_CylinderShape *")] JPH_CylinderShape* shape); - [NativeTypeName("bool (*)(void *, const JPH_Shape *, const JPH_SubShapeID *, const JPH_Shape *, const JPH_SubShapeID *) __attribute__((cdecl))")] - public nint ShouldCollide2; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TaperedCylinderShapeSettings* JPH_TaperedCylinderShapeSettings_Create(float halfHeightOfTaperedCylinder, float topRadius, float bottomRadius, float convexRadius, [NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material); - internal partial struct JPH_SimShapeFilter_Procs - { - [NativeTypeName("bool (*)(void *, const JPH_Body *, const JPH_Shape *, const JPH_SubShapeID *, const JPH_Body *, const JPH_Shape *, const JPH_SubShapeID *) __attribute__((cdecl))")] - public nint ShouldCollide; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TaperedCylinderShape* JPH_TaperedCylinderShapeSettings_CreateShape([NativeTypeName("const JPH_TaperedCylinderShapeSettings *")] JPH_TaperedCylinderShapeSettings* settings); - internal partial struct JPH_ContactListener_Procs - { - [NativeTypeName("JPH_ValidateResult (*)(void *, const JPH_Body *, const JPH_Body *, const JPH_RVec3 *, const JPH_CollideShapeResult *) __attribute__((cdecl))")] - public nint OnContactValidate; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TaperedCylinderShape_GetTopRadius([NativeTypeName("const JPH_TaperedCylinderShape *")] JPH_TaperedCylinderShape* shape); - [NativeTypeName("void (*)(void *, const JPH_Body *, const JPH_Body *, const JPH_ContactManifold *, JPH_ContactSettings *) __attribute__((cdecl))")] - public nint OnContactAdded; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TaperedCylinderShape_GetBottomRadius([NativeTypeName("const JPH_TaperedCylinderShape *")] JPH_TaperedCylinderShape* shape); - [NativeTypeName("void (*)(void *, const JPH_Body *, const JPH_Body *, const JPH_ContactManifold *, JPH_ContactSettings *) __attribute__((cdecl))")] - public nint OnContactPersisted; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TaperedCylinderShape_GetConvexRadius([NativeTypeName("const JPH_TaperedCylinderShape *")] JPH_TaperedCylinderShape* shape); - [NativeTypeName("void (*)(void *, const JPH_SubShapeIDPair *) __attribute__((cdecl))")] - public nint OnContactRemoved; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TaperedCylinderShape_GetHalfHeight([NativeTypeName("const JPH_TaperedCylinderShape *")] JPH_TaperedCylinderShape* shape); - internal partial struct JPH_BodyActivationListener_Procs - { - [NativeTypeName("void (*)(void *, JPH_BodyID, uint64_t) __attribute__((cdecl))")] - public nint OnBodyActivated; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ConvexHullShapeSettings* JPH_ConvexHullShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* points, [NativeTypeName("uint32_t")] uint pointsCount, float maxConvexRadius); - [NativeTypeName("void (*)(void *, JPH_BodyID, uint64_t) __attribute__((cdecl))")] - public nint OnBodyDeactivated; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ConvexHullShape* JPH_ConvexHullShapeSettings_CreateShape([NativeTypeName("const JPH_ConvexHullShapeSettings *")] JPH_ConvexHullShapeSettings* settings); - internal partial struct JPH_BodyDrawFilter_Procs - { - [NativeTypeName("bool (*)(void *, const JPH_Body *) __attribute__((cdecl))")] - public nint ShouldDraw; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ConvexHullShape_GetNumPoints([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape); - internal partial struct JPH_CharacterContactListener_Procs - { - [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_Body *, JPH_Vec3 *, JPH_Vec3 *) __attribute__((cdecl))")] - public nint OnAdjustBodyVelocity; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ConvexHullShape_GetPoint([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("JPH_Vec3 *")] float3* result); - [NativeTypeName("bool (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID) __attribute__((cdecl))")] - public nint OnContactValidate; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ConvexHullShape_GetNumFaces([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape); - [NativeTypeName("bool (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterVirtual *, const JPH_SubShapeID) __attribute__((cdecl))")] - public nint OnCharacterContactValidate; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ConvexHullShape_GetNumVerticesInFace([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape, [NativeTypeName("uint32_t")] uint faceIndex); - [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, JPH_CharacterContactSettings *) __attribute__((cdecl))")] - public nint OnContactAdded; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ConvexHullShape_GetFaceVertices([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape, [NativeTypeName("uint32_t")] uint faceIndex, [NativeTypeName("uint32_t")] uint maxVertices, [NativeTypeName("uint32_t *")] uint* vertices); - [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, JPH_CharacterContactSettings *) __attribute__((cdecl))")] - public nint OnContactPersisted; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MeshShapeSettings* JPH_MeshShapeSettings_Create([NativeTypeName("const JPH_Triangle *")] JPH_Triangle* triangles, [NativeTypeName("uint32_t")] uint triangleCount); - [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID) __attribute__((cdecl))")] - public nint OnContactRemoved; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MeshShapeSettings* JPH_MeshShapeSettings_Create2([NativeTypeName("const JPH_Vec3 *")] float3* vertices, [NativeTypeName("uint32_t")] uint verticesCount, [NativeTypeName("const JPH_IndexedTriangle *")] JPH_IndexedTriangle* triangles, [NativeTypeName("uint32_t")] uint triangleCount); - [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterVirtual *, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, JPH_CharacterContactSettings *) __attribute__((cdecl))")] - public nint OnCharacterContactAdded; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_MeshShapeSettings_GetMaxTrianglesPerLeaf([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); - [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterVirtual *, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, JPH_CharacterContactSettings *) __attribute__((cdecl))")] - public nint OnCharacterContactPersisted; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MeshShapeSettings_SetMaxTrianglesPerLeaf(JPH_MeshShapeSettings* settings, [NativeTypeName("uint32_t")] uint value); - [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterID, const JPH_SubShapeID) __attribute__((cdecl))")] - public nint OnCharacterContactRemoved; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MeshShapeSettings_GetActiveEdgeCosThresholdAngle([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); - [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, const JPH_Vec3 *, const JPH_PhysicsMaterial *, const JPH_Vec3 *, JPH_Vec3 *) __attribute__((cdecl))")] - public nint OnContactSolve; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MeshShapeSettings_SetActiveEdgeCosThresholdAngle(JPH_MeshShapeSettings* settings, float value); - [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterVirtual *, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, const JPH_Vec3 *, const JPH_PhysicsMaterial *, const JPH_Vec3 *, JPH_Vec3 *) __attribute__((cdecl))")] - public nint OnCharacterContactSolve; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_MeshShapeSettings_GetPerTriangleUserData([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); - internal partial struct JPH_CharacterVsCharacterCollision_Procs - { - [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_RMatrix4x4 *, const JPH_CollideShapeSettings *, const JPH_RVec3 *) __attribute__((cdecl))")] - public nint CollideCharacter; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MeshShapeSettings_SetPerTriangleUserData(JPH_MeshShapeSettings* settings, [NativeTypeName("bool")] byte value); - [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_RMatrix4x4 *, const JPH_Vec3 *, const JPH_ShapeCastSettings *, const JPH_RVec3 *) __attribute__((cdecl))")] - public nint CastCharacter; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Mesh_Shape_BuildQuality JPH_MeshShapeSettings_GetBuildQuality([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); - internal partial struct JPH_DebugRenderer_Procs - { - [NativeTypeName("void (*)(void *, const JPH_RVec3 *, const JPH_RVec3 *, JPH_Color) __attribute__((cdecl))")] - public nint DrawLine; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MeshShapeSettings_SetBuildQuality(JPH_MeshShapeSettings* settings, JPH_Mesh_Shape_BuildQuality value); - [NativeTypeName("void (*)(void *, const JPH_RVec3 *, const JPH_RVec3 *, const JPH_RVec3 *, JPH_Color, JPH_DebugRenderer_CastShadow) __attribute__((cdecl))")] - public nint DrawTriangle; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MeshShapeSettings_Sanitize(JPH_MeshShapeSettings* settings); - [NativeTypeName("void (*)(void *, const JPH_RVec3 *, const char *, JPH_Color, float) __attribute__((cdecl))")] - public nint DrawText3D; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MeshShape* JPH_MeshShapeSettings_CreateShape([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); - internal unsafe partial struct JPH_SkeletonJoint - { - [NativeTypeName("const char *")] - public sbyte* name; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_MeshShape_GetTriangleUserData([NativeTypeName("const JPH_MeshShape *")] JPH_MeshShape* shape, [NativeTypeName("JPH_SubShapeID")] uint id); - [NativeTypeName("const char *")] - public sbyte* parentName; + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_HeightFieldShapeSettings* JPH_HeightFieldShapeSettings_Create([NativeTypeName("const float *")] float* samples, [NativeTypeName("const JPH_Vec3 *")] float3* offset, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("uint32_t")] uint sampleCount); - public int parentJointIndex; - } + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_HeightFieldShape* JPH_HeightFieldShapeSettings_CreateShape(JPH_HeightFieldShapeSettings* settings); - internal static unsafe partial class UnsafeBindings - { [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_JobSystem* JPH_JobSystemThreadPool_Create([NativeTypeName("const JobSystemThreadPoolConfig *")] JPH_JobSystemThreadPoolConfig* config); + public static extern void JPH_HeightFieldShapeSettings_DetermineMinAndMaxSample([NativeTypeName("const JPH_HeightFieldShapeSettings *")] JPH_HeightFieldShapeSettings* settings, float* pOutMinValue, float* pOutMaxValue, float* pOutQuantizationScale); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_JobSystem* JPH_JobSystemCallback_Create([NativeTypeName("const JPH_JobSystemConfig *")] JPH_JobSystemConfig* config); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_HeightFieldShapeSettings_CalculateBitsPerSampleForError([NativeTypeName("const JPH_HeightFieldShapeSettings *")] JPH_HeightFieldShapeSettings* settings, float maxError); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_JobSystem_Destroy(JPH_JobSystem* jobSystem); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_HeightFieldShape_GetSampleCount([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Init(); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_HeightFieldShape_GetBlockSize([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Shutdown(); + [return: NativeTypeName("const JPH_PhysicsMaterial *")] + public static extern JPH_PhysicsMaterial* JPH_HeightFieldShape_GetMaterial([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape, [NativeTypeName("uint32_t")] uint x, [NativeTypeName("uint32_t")] uint y); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SetTraceHandler([NativeTypeName("JPH_TraceFunc")] nint handler); + public static extern void JPH_HeightFieldShape_GetPosition([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape, [NativeTypeName("uint32_t")] uint x, [NativeTypeName("uint32_t")] uint y, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SetAssertFailureHandler([NativeTypeName("JPH_AssertFailureFunc")] nint handler); + [return: NativeTypeName("bool")] + public static extern byte JPH_HeightFieldShape_IsNoCollision([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape, [NativeTypeName("uint32_t")] uint x, [NativeTypeName("uint32_t")] uint y); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CollideShapeResult_FreeMembers(JPH_CollideShapeResult* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_HeightFieldShape_ProjectOntoSurface([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* localPosition, [NativeTypeName("JPH_Vec3 *")] float3* outSurfacePosition, [NativeTypeName("JPH_SubShapeID *")] uint* outSubShapeID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CollisionEstimationResult_FreeMembers(JPH_CollisionEstimationResult* result); + public static extern float JPH_HeightFieldShape_GetMinHeightValue([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BroadPhaseLayerInterface* JPH_BroadPhaseLayerInterfaceMask_Create(uint numBroadPhaseLayers); + public static extern float JPH_HeightFieldShape_GetMaxHeightValue([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BroadPhaseLayerInterfaceMask_ConfigureLayer(JPH_BroadPhaseLayerInterface* bpInterface, [NativeTypeName("JPH_BroadPhaseLayer")] BroadPhaseLayer broadPhaseLayer, uint groupsToInclude, uint groupsToExclude); + public static extern JPH_TaperedCapsuleShapeSettings* JPH_TaperedCapsuleShapeSettings_Create(float halfHeightOfTaperedCylinder, float topRadius, float bottomRadius); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BroadPhaseLayerInterface* JPH_BroadPhaseLayerInterfaceTable_Create(uint numObjectLayers, uint numBroadPhaseLayers); + public static extern JPH_TaperedCapsuleShape* JPH_TaperedCapsuleShapeSettings_CreateShape(JPH_TaperedCapsuleShapeSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BroadPhaseLayerInterfaceTable_MapObjectToBroadPhaseLayer(JPH_BroadPhaseLayerInterface* bpInterface, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer objectLayer, [NativeTypeName("JPH_BroadPhaseLayer")] BroadPhaseLayer broadPhaseLayer); + public static extern float JPH_TaperedCapsuleShape_GetTopRadius([NativeTypeName("const JPH_TaperedCapsuleShape *")] JPH_TaperedCapsuleShape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ObjectLayerPairFilter* JPH_ObjectLayerPairFilterMask_Create(); + public static extern float JPH_TaperedCapsuleShape_GetBottomRadius([NativeTypeName("const JPH_TaperedCapsuleShape *")] JPH_TaperedCapsuleShape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_ObjectLayer")] - public static extern ObjectLayer JPH_ObjectLayerPairFilterMask_GetObjectLayer(uint group, uint mask); + public static extern float JPH_TaperedCapsuleShape_GetHalfHeight([NativeTypeName("const JPH_TaperedCapsuleShape *")] JPH_TaperedCapsuleShape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_ObjectLayerPairFilterMask_GetGroup([NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer); + public static extern void JPH_CompoundShapeSettings_AddShape(JPH_CompoundShapeSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* shapeSettings, [NativeTypeName("uint32_t")] uint userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_ObjectLayerPairFilterMask_GetMask([NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer); + public static extern void JPH_CompoundShapeSettings_AddShape2(JPH_CompoundShapeSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("uint32_t")] uint userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ObjectLayerPairFilter* JPH_ObjectLayerPairFilterTable_Create(uint numObjectLayers); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_CompoundShape_GetNumSubShapes([NativeTypeName("const JPH_CompoundShape *")] JPH_CompoundShape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ObjectLayerPairFilterTable_DisableCollision(JPH_ObjectLayerPairFilter* objectFilter, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer1, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer2); + public static extern void JPH_CompoundShape_GetSubShape([NativeTypeName("const JPH_CompoundShape *")] JPH_CompoundShape* shape, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("const JPH_Shape **")] JPH_Shape** subShape, [NativeTypeName("JPH_Vec3 *")] float3* positionCOM, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName("uint32_t *")] uint* userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ObjectLayerPairFilterTable_EnableCollision(JPH_ObjectLayerPairFilter* objectFilter, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer1, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer2); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_CompoundShape_GetSubShapeIndexFromID([NativeTypeName("const JPH_CompoundShape *")] JPH_CompoundShape* shape, [NativeTypeName("JPH_SubShapeID")] uint id, [NativeTypeName("JPH_SubShapeID *")] uint* remainder); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_ObjectLayerPairFilterTable_ShouldCollide(JPH_ObjectLayerPairFilter* objectFilter, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer1, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer2); + public static extern JPH_StaticCompoundShapeSettings* JPH_StaticCompoundShapeSettings_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ObjectVsBroadPhaseLayerFilter* JPH_ObjectVsBroadPhaseLayerFilterMask_Create([NativeTypeName("const JPH_BroadPhaseLayerInterface *")] JPH_BroadPhaseLayerInterface* broadPhaseLayerInterface); + public static extern JPH_StaticCompoundShape* JPH_StaticCompoundShape_Create([NativeTypeName("const JPH_StaticCompoundShapeSettings *")] JPH_StaticCompoundShapeSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ObjectVsBroadPhaseLayerFilter* JPH_ObjectVsBroadPhaseLayerFilterTable_Create(JPH_BroadPhaseLayerInterface* broadPhaseLayerInterface, uint numBroadPhaseLayers, JPH_ObjectLayerPairFilter* objectLayerPairFilter, uint numObjectLayers); + public static extern JPH_MutableCompoundShapeSettings* JPH_MutableCompoundShapeSettings_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DrawSettings_InitDefault(JPH_DrawSettings* settings); + public static extern JPH_MutableCompoundShape* JPH_MutableCompoundShape_Create([NativeTypeName("const JPH_MutableCompoundShapeSettings *")] JPH_MutableCompoundShapeSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_PhysicsSystem* JPH_PhysicsSystem_Create([NativeTypeName("const JPH_PhysicsSystemSettings *")] JPH_PhysicsSystemSettings* settings); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_MutableCompoundShape_AddShape(JPH_MutableCompoundShape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* child, [NativeTypeName("uint32_t")] uint userData, [NativeTypeName("uint32_t")] uint index); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_Destroy(JPH_PhysicsSystem* system); + public static extern void JPH_MutableCompoundShape_RemoveShape(JPH_MutableCompoundShape* shape, [NativeTypeName("uint32_t")] uint index); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_SetPhysicsSettings(JPH_PhysicsSystem* system, JPH_PhysicsSettings* settings); + public static extern void JPH_MutableCompoundShape_ModifyShape(JPH_MutableCompoundShape* shape, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_GetPhysicsSettings(JPH_PhysicsSystem* system, JPH_PhysicsSettings* result); + public static extern void JPH_MutableCompoundShape_ModifyShape2(JPH_MutableCompoundShape* shape, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* newShape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_OptimizeBroadPhase(JPH_PhysicsSystem* system); + public static extern void JPH_MutableCompoundShape_AdjustCenterOfMass(JPH_MutableCompoundShape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_PhysicsUpdateError")] - public static extern PhysicsUpdateError JPH_PhysicsSystem_Update(JPH_PhysicsSystem* system, float deltaTime, int collisionSteps, JPH_JobSystem* jobSystem); + [return: NativeTypeName("const JPH_Shape *")] + public static extern JPH_Shape* JPH_DecoratedShape_GetInnerShape([NativeTypeName("const JPH_DecoratedShape *")] JPH_DecoratedShape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BodyInterface* JPH_PhysicsSystem_GetBodyInterface(JPH_PhysicsSystem* system); + public static extern JPH_RotatedTranslatedShapeSettings* JPH_RotatedTranslatedShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* shapeSettings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BodyInterface* JPH_PhysicsSystem_GetBodyInterfaceNoLock(JPH_PhysicsSystem* system); + public static extern JPH_RotatedTranslatedShapeSettings* JPH_RotatedTranslatedShapeSettings_Create2([NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_BodyLockInterface *")] - public static extern JPH_BodyLockInterface* JPH_PhysicsSystem_GetBodyLockInterface([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + public static extern JPH_RotatedTranslatedShape* JPH_RotatedTranslatedShapeSettings_CreateShape([NativeTypeName("const JPH_RotatedTranslatedShapeSettings *")] JPH_RotatedTranslatedShapeSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_BodyLockInterface *")] - public static extern JPH_BodyLockInterface* JPH_PhysicsSystem_GetBodyLockInterfaceNoLock([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + public static extern JPH_RotatedTranslatedShape* JPH_RotatedTranslatedShape_Create([NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_BroadPhaseQuery *")] - public static extern JPH_BroadPhaseQuery* JPH_PhysicsSystem_GetBroadPhaseQuery([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + public static extern void JPH_RotatedTranslatedShape_GetPosition([NativeTypeName("const JPH_RotatedTranslatedShape *")] JPH_RotatedTranslatedShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* position); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_NarrowPhaseQuery *")] - public static extern JPH_NarrowPhaseQuery* JPH_PhysicsSystem_GetNarrowPhaseQuery([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + public static extern void JPH_RotatedTranslatedShape_GetRotation([NativeTypeName("const JPH_RotatedTranslatedShape *")] JPH_RotatedTranslatedShape* shape, [NativeTypeName("JPH_Quat *")] quaternion* rotation); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_NarrowPhaseQuery *")] - public static extern JPH_NarrowPhaseQuery* JPH_PhysicsSystem_GetNarrowPhaseQueryNoLock([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + public static extern JPH_ScaledShapeSettings* JPH_ScaledShapeSettings_Create([NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* shapeSettings, [NativeTypeName("const JPH_Vec3 *")] float3* scale); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_SetContactListener(JPH_PhysicsSystem* system, JPH_ContactListener* listener); + public static extern JPH_ScaledShapeSettings* JPH_ScaledShapeSettings_Create2([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_SetBodyActivationListener(JPH_PhysicsSystem* system, JPH_BodyActivationListener* listener); + public static extern JPH_ScaledShape* JPH_ScaledShapeSettings_CreateShape([NativeTypeName("const JPH_ScaledShapeSettings *")] JPH_ScaledShapeSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_SetSimShapeFilter(JPH_PhysicsSystem* system, JPH_SimShapeFilter* filter); + public static extern JPH_ScaledShape* JPH_ScaledShape_Create([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_PhysicsSystem_WereBodiesInContact([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, [NativeTypeName("JPH_BodyID")] BodyID body1, [NativeTypeName("JPH_BodyID")] BodyID body2); + public static extern void JPH_ScaledShape_GetScale([NativeTypeName("const JPH_ScaledShape *")] JPH_ScaledShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_PhysicsSystem_GetNumBodies([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + public static extern JPH_OffsetCenterOfMassShapeSettings* JPH_OffsetCenterOfMassShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* offset, [NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* shapeSettings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_PhysicsSystem_GetNumActiveBodies([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, [NativeTypeName("JPH_BodyType")] BodyType type); + public static extern JPH_OffsetCenterOfMassShapeSettings* JPH_OffsetCenterOfMassShapeSettings_Create2([NativeTypeName("const JPH_Vec3 *")] float3* offset, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_PhysicsSystem_GetMaxBodies([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + public static extern JPH_OffsetCenterOfMassShape* JPH_OffsetCenterOfMassShapeSettings_CreateShape([NativeTypeName("const JPH_OffsetCenterOfMassShapeSettings *")] JPH_OffsetCenterOfMassShapeSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_PhysicsSystem_GetNumConstraints([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + public static extern JPH_OffsetCenterOfMassShape* JPH_OffsetCenterOfMassShape_Create([NativeTypeName("const JPH_Vec3 *")] float3* offset, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_SetGravity(JPH_PhysicsSystem* system, [NativeTypeName("const JPH_Vec3 *")] float3* value); + public static extern void JPH_OffsetCenterOfMassShape_GetOffset([NativeTypeName("const JPH_OffsetCenterOfMassShape *")] JPH_OffsetCenterOfMassShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_GetGravity(JPH_PhysicsSystem* system, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern JPH_EmptyShapeSettings* JPH_EmptyShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* centerOfMass); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_AddConstraint(JPH_PhysicsSystem* system, JPH_Constraint* constraint); + public static extern JPH_EmptyShape* JPH_EmptyShapeSettings_CreateShape([NativeTypeName("const JPH_EmptyShapeSettings *")] JPH_EmptyShapeSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_RemoveConstraint(JPH_PhysicsSystem* system, JPH_Constraint* constraint); + public static extern JPH_BodyCreationSettings* JPH_BodyCreationSettings_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_AddConstraints(JPH_PhysicsSystem* system, JPH_Constraint** constraints, uint count); + public static extern JPH_BodyCreationSettings* JPH_BodyCreationSettings_Create2([NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* settings, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, JPH_MotionType motionType, [NativeTypeName("JPH_ObjectLayer")] uint objectLayer); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_RemoveConstraints(JPH_PhysicsSystem* system, JPH_Constraint** constraints, uint count); + public static extern JPH_BodyCreationSettings* JPH_BodyCreationSettings_Create3([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, JPH_MotionType motionType, [NativeTypeName("JPH_ObjectLayer")] uint objectLayer); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_GetBodies([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, [NativeTypeName("JPH_BodyID *")] BodyID* ids, uint count); + public static extern void JPH_BodyCreationSettings_Destroy(JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_GetConstraints([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, [NativeTypeName("const JPH_Constraint **")] JPH_Constraint** constraints, uint count); + public static extern void JPH_BodyCreationSettings_GetPosition(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_DrawBodies(JPH_PhysicsSystem* system, [NativeTypeName("const JPH_DrawSettings *")] JPH_DrawSettings* settings, JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_BodyDrawFilter *")] JPH_BodyDrawFilter* bodyFilter); + public static extern void JPH_BodyCreationSettings_SetPosition(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_RVec3 *")] rvec3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_DrawConstraints(JPH_PhysicsSystem* system, JPH_DebugRenderer* renderer); + public static extern void JPH_BodyCreationSettings_GetRotation(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_Quat *")] quaternion* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_DrawConstraintLimits(JPH_PhysicsSystem* system, JPH_DebugRenderer* renderer); + public static extern void JPH_BodyCreationSettings_SetRotation(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_Quat *")] quaternion* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsSystem_DrawConstraintReferenceFrame(JPH_PhysicsSystem* system, JPH_DebugRenderer* renderer); + public static extern void JPH_BodyCreationSettings_GetLinearVelocity(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quaternion_FromTo([NativeTypeName("const JPH_Vec3 *")] float3* from, [NativeTypeName("const JPH_Vec3 *")] float3* to, [NativeTypeName("JPH_Quat *")] quaternion* quat); + public static extern void JPH_BodyCreationSettings_SetLinearVelocity(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_GetAxisAngle([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* outAxis, float* outAngle); + public static extern void JPH_BodyCreationSettings_GetAngularVelocity(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_GetEulerAngles([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_BodyCreationSettings_SetAngularVelocity(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_RotateAxisX([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_BodyCreationSettings_GetUserData([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_RotateAxisY([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_BodyCreationSettings_SetUserData(JPH_BodyCreationSettings* settings, [NativeTypeName("uint64_t")] ulong value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_RotateAxisZ([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("JPH_ObjectLayer")] + public static extern uint JPH_BodyCreationSettings_GetObjectLayer([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_Inversed([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern void JPH_BodyCreationSettings_SetObjectLayer(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_ObjectLayer")] uint value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_GetPerpendicular([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern void JPH_BodyCreationSettings_GetCollisionGroup([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings, JPH_CollisionGroup* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_Quat_GetRotationAngle([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("const JPH_Vec3 *")] float3* axis); + public static extern void JPH_BodyCreationSettings_SetCollisionGroup(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_CollisionGroup *")] JPH_CollisionGroup* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_FromEulerAngles([NativeTypeName("const JPH_Vec3 *")] float3* angles, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern JPH_MotionType JPH_BodyCreationSettings_GetMotionType([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_Add([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern void JPH_BodyCreationSettings_SetMotionType(JPH_BodyCreationSettings* settings, JPH_MotionType value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_Subtract([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern JPH_AllowedDOFs JPH_BodyCreationSettings_GetAllowedDOFs([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_Multiply([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern void JPH_BodyCreationSettings_SetAllowedDOFs(JPH_BodyCreationSettings* settings, JPH_AllowedDOFs value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_MultiplyScalar([NativeTypeName("const JPH_Quat *")] quaternion* q, float scalar, [NativeTypeName("JPH_Quat *")] quaternion* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetAllowDynamicOrKinematic([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_Divide([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern void JPH_BodyCreationSettings_SetAllowDynamicOrKinematic(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_Dot([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, float* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetIsSensor([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_Conjugated([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern void JPH_BodyCreationSettings_SetIsSensor(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_GetTwist([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("const JPH_Vec3 *")] float3* axis, [NativeTypeName("JPH_Quat *")] quaternion* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetCollideKinematicVsNonDynamic([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_GetSwingTwist([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Quat *")] quaternion* outSwing, [NativeTypeName("JPH_Quat *")] quaternion* outTwist); + public static extern void JPH_BodyCreationSettings_SetCollideKinematicVsNonDynamic(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_LERP([NativeTypeName("const JPH_Quat *")] quaternion* from, [NativeTypeName("const JPH_Quat *")] quaternion* to, float fraction, [NativeTypeName("JPH_Quat *")] quaternion* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetUseManifoldReduction([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_SLERP([NativeTypeName("const JPH_Quat *")] quaternion* from, [NativeTypeName("const JPH_Quat *")] quaternion* to, float fraction, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern void JPH_BodyCreationSettings_SetUseManifoldReduction(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_Rotate([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("const JPH_Vec3 *")] float3* vec, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetApplyGyroscopicForce([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Quat_InverseRotate([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("const JPH_Vec3 *")] float3* vec, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_BodyCreationSettings_SetApplyGyroscopicForce(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Vec3_IsClose([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, float maxDistSq); + public static extern JPH_MotionQuality JPH_BodyCreationSettings_GetMotionQuality([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Vec3_IsNearZero([NativeTypeName("const JPH_Vec3 *")] float3* v, float maxDistSq); + public static extern void JPH_BodyCreationSettings_SetMotionQuality(JPH_BodyCreationSettings* settings, JPH_MotionQuality value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Vec3_IsNormalized([NativeTypeName("const JPH_Vec3 *")] float3* v, float tolerance); + public static extern byte JPH_BodyCreationSettings_GetEnhancedInternalEdgeRemoval([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Vec3_IsNaN([NativeTypeName("const JPH_Vec3 *")] float3* v); + public static extern void JPH_BodyCreationSettings_SetEnhancedInternalEdgeRemoval(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Vec3_Negate([NativeTypeName("const JPH_Vec3 *")] float3* v, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetAllowSleeping([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Vec3_Normalized([NativeTypeName("const JPH_Vec3 *")] float3* v, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_BodyCreationSettings_SetAllowSleeping(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Vec3_Cross([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern float JPH_BodyCreationSettings_GetFriction([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Vec3_Abs([NativeTypeName("const JPH_Vec3 *")] float3* v, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_BodyCreationSettings_SetFriction(JPH_BodyCreationSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_Vec3_Length([NativeTypeName("const JPH_Vec3 *")] float3* v); + public static extern float JPH_BodyCreationSettings_GetRestitution([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_Vec3_LengthSquared([NativeTypeName("const JPH_Vec3 *")] float3* v); + public static extern void JPH_BodyCreationSettings_SetRestitution(JPH_BodyCreationSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Vec3_DotProduct([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, float* result); + public static extern float JPH_BodyCreationSettings_GetLinearDamping([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Vec3_Normalize([NativeTypeName("const JPH_Vec3 *")] float3* v, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_BodyCreationSettings_SetLinearDamping(JPH_BodyCreationSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Vec3_Add([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern float JPH_BodyCreationSettings_GetAngularDamping([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Vec3_Subtract([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_BodyCreationSettings_SetAngularDamping(JPH_BodyCreationSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Vec3_Multiply([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern float JPH_BodyCreationSettings_GetMaxLinearVelocity([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Vec3_MultiplyScalar([NativeTypeName("const JPH_Vec3 *")] float3* v, float scalar, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_BodyCreationSettings_SetMaxLinearVelocity(JPH_BodyCreationSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Vec3_Divide([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern float JPH_BodyCreationSettings_GetMaxAngularVelocity([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Vec3_DivideScalar([NativeTypeName("const JPH_Vec3 *")] float3* v, float scalar, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_BodyCreationSettings_SetMaxAngularVelocity(JPH_BodyCreationSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_Add([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m2, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + public static extern float JPH_BodyCreationSettings_GetGravityFactor([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_Subtract([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m2, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + public static extern void JPH_BodyCreationSettings_SetGravityFactor(JPH_BodyCreationSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_Multiply([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m2, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_BodyCreationSettings_GetNumVelocityStepsOverride([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_MultiplyScalar([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m, float scalar, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + public static extern void JPH_BodyCreationSettings_SetNumVelocityStepsOverride(JPH_BodyCreationSettings* settings, [NativeTypeName("uint32_t")] uint value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_Zero([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_BodyCreationSettings_GetNumPositionStepsOverride([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_Identity([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + public static extern void JPH_BodyCreationSettings_SetNumPositionStepsOverride(JPH_BodyCreationSettings* settings, [NativeTypeName("uint32_t")] uint value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_Rotation([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation); + public static extern JPH_OverrideMassProperties JPH_BodyCreationSettings_GetOverrideMassProperties([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_Translation([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Vec3 *")] float3* translation); + public static extern void JPH_BodyCreationSettings_SetOverrideMassProperties(JPH_BodyCreationSettings* settings, JPH_OverrideMassProperties value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_RotationTranslation([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Vec3 *")] float3* translation); + public static extern float JPH_BodyCreationSettings_GetInertiaMultiplier([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_InverseRotationTranslation([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Vec3 *")] float3* translation); + public static extern void JPH_BodyCreationSettings_SetInertiaMultiplier(JPH_BodyCreationSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_Scale([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + public static extern void JPH_BodyCreationSettings_GetMassPropertiesOverride([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings, JPH_MassProperties* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_Inversed([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + public static extern void JPH_BodyCreationSettings_SetMassPropertiesOverride(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_MassProperties *")] JPH_MassProperties* massProperties); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_Transposed([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + public static extern JPH_SoftBodyCreationSettings* JPH_SoftBodyCreationSettings_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RMatrix4x4_Zero([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + public static extern void JPH_SoftBodyCreationSettings_Destroy(JPH_SoftBodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RMatrix4x4_Identity([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + public static extern void JPH_Constraint_Destroy(JPH_Constraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RMatrix4x4_Rotation([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation); + public static extern JPH_ConstraintType JPH_Constraint_GetType([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RMatrix4x4_Translation([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_RVec3 *")] rvec3* translation); + public static extern JPH_ConstraintSubType JPH_Constraint_GetSubType([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RMatrix4x4_RotationTranslation([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_RVec3 *")] rvec3* translation); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Constraint_GetConstraintPriority([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RMatrix4x4_InverseRotationTranslation([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_RVec3 *")] rvec3* translation); + public static extern void JPH_Constraint_SetConstraintPriority(JPH_Constraint* constraint, [NativeTypeName("uint32_t")] uint priority); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RMatrix4x4_Scale([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Constraint_GetNumVelocityStepsOverride([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RMatrix4x4_Inversed([NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* m, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + public static extern void JPH_Constraint_SetNumVelocityStepsOverride(JPH_Constraint* constraint, [NativeTypeName("uint32_t")] uint value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_GetAxisX([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Constraint_GetNumPositionStepsOverride([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_GetAxisY([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_Constraint_SetNumPositionStepsOverride(JPH_Constraint* constraint, [NativeTypeName("uint32_t")] uint value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_GetAxisZ([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_Constraint_GetEnabled([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_GetTranslation([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_Constraint_SetEnabled(JPH_Constraint* constraint, [NativeTypeName("bool")] byte enabled); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Matrix4x4_GetQuaternion([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Quat *")] quaternion* result); + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_Constraint_GetUserData([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_PhysicsMaterial* JPH_PhysicsMaterial_Create([NativeTypeName("const char *")] sbyte* name, uint color); + public static extern void JPH_Constraint_SetUserData(JPH_Constraint* constraint, [NativeTypeName("uint64_t")] ulong userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PhysicsMaterial_Destroy(JPH_PhysicsMaterial* material); + public static extern void JPH_Constraint_NotifyShapeChanged(JPH_Constraint* constraint, [NativeTypeName("JPH_BodyID")] uint bodyID, [NativeTypeName("JPH_Vec3 *")] float3* deltaCOM); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const char *")] - public static extern sbyte* JPH_PhysicsMaterial_GetDebugName([NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material); + public static extern void JPH_Constraint_ResetWarmStart(JPH_Constraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_PhysicsMaterial_GetDebugColor([NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material); + [return: NativeTypeName("bool")] + public static extern byte JPH_Constraint_IsActive([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ShapeSettings_Destroy(JPH_ShapeSettings* settings); + public static extern void JPH_Constraint_SetupVelocityConstraint(JPH_Constraint* constraint, float deltaTime); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("uint64_t")] - public static extern ulong JPH_ShapeSettings_GetUserData([NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* settings); + public static extern void JPH_Constraint_WarmStartVelocityConstraint(JPH_Constraint* constraint, float warmStartImpulseRatio); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ShapeSettings_SetUserData(JPH_ShapeSettings* settings, [NativeTypeName("uint64_t")] ulong userData); + [return: NativeTypeName("bool")] + public static extern byte JPH_Constraint_SolveVelocityConstraint(JPH_Constraint* constraint, float deltaTime); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Shape_Destroy(JPH_Shape* shape); + [return: NativeTypeName("bool")] + public static extern byte JPH_Constraint_SolvePositionConstraint(JPH_Constraint* constraint, float deltaTime, float baumgarte); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_ShapeType")] - public static extern ShapeType JPH_Shape_GetType([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + public static extern JPH_Body* JPH_TwoBodyConstraint_GetBody1([NativeTypeName("const JPH_TwoBodyConstraint *")] JPH_TwoBodyConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_ShapeSubType")] - public static extern ShapeSubType JPH_Shape_GetSubType([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + public static extern JPH_Body* JPH_TwoBodyConstraint_GetBody2([NativeTypeName("const JPH_TwoBodyConstraint *")] JPH_TwoBodyConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("uint64_t")] - public static extern ulong JPH_Shape_GetUserData([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + public static extern void JPH_TwoBodyConstraint_GetConstraintToBody1Matrix([NativeTypeName("const JPH_TwoBodyConstraint *")] JPH_TwoBodyConstraint* constraint, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Shape_SetUserData(JPH_Shape* shape, [NativeTypeName("uint64_t")] ulong userData); + public static extern void JPH_TwoBodyConstraint_GetConstraintToBody2Matrix([NativeTypeName("const JPH_TwoBodyConstraint *")] JPH_TwoBodyConstraint* constraint, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Shape_MustBeStatic([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + public static extern void JPH_FixedConstraintSettings_Init(JPH_FixedConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Shape_GetCenterOfMass([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern JPH_FixedConstraint* JPH_FixedConstraint_Create([NativeTypeName("const JPH_FixedConstraintSettings *")] JPH_FixedConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Shape_GetLocalBounds([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, JPH_AABox* result); + public static extern void JPH_FixedConstraint_GetSettings([NativeTypeName("const JPH_FixedConstraint *")] JPH_FixedConstraint* constraint, JPH_FixedConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_Shape_GetSubShapeIDBitsRecursive([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + public static extern void JPH_FixedConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_FixedConstraint *")] JPH_FixedConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Shape_GetWorldSpaceBounds([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* centerOfMassTransform, [NativeTypeName("JPH_Vec3 *")] float3* scale, JPH_AABox* result); + public static extern void JPH_FixedConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_FixedConstraint *")] JPH_FixedConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_Shape_GetInnerRadius([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + public static extern void JPH_DistanceConstraintSettings_Init(JPH_DistanceConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Shape_GetMassProperties([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, JPH_MassProperties* result); + public static extern JPH_DistanceConstraint* JPH_DistanceConstraint_Create([NativeTypeName("const JPH_DistanceConstraintSettings *")] JPH_DistanceConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_Shape *")] - public static extern JPH_Shape* JPH_Shape_GetLeafShape([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_SubShapeID")] uint subShapeID, [NativeTypeName("JPH_SubShapeID *")] uint* remainder); + public static extern void JPH_DistanceConstraint_GetSettings([NativeTypeName("const JPH_DistanceConstraint *")] JPH_DistanceConstraint* constraint, JPH_DistanceConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_PhysicsMaterial *")] - public static extern JPH_PhysicsMaterial* JPH_Shape_GetMaterial([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_SubShapeID")] uint subShapeID); + public static extern void JPH_DistanceConstraint_SetDistance(JPH_DistanceConstraint* constraint, float minDistance, float maxDistance); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Shape_GetSurfaceNormal([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_SubShapeID")] uint subShapeID, [NativeTypeName("JPH_Vec3 *")] float3* localPosition, [NativeTypeName("JPH_Vec3 *")] float3* normal); + public static extern float JPH_DistanceConstraint_GetMinDistance(JPH_DistanceConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Shape_GetSupportingFace([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_SubShapeID")] uint subShapeID, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassTransform, JPH_SupportingFace* outVertices); + public static extern float JPH_DistanceConstraint_GetMaxDistance(JPH_DistanceConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_Shape_GetVolume([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + public static extern void JPH_DistanceConstraint_GetLimitsSpringSettings(JPH_DistanceConstraint* constraint, JPH_SpringSettings* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Shape_IsValidScale([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + public static extern void JPH_DistanceConstraint_SetLimitsSpringSettings(JPH_DistanceConstraint* constraint, JPH_SpringSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Shape_MakeScaleValid([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern float JPH_DistanceConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_DistanceConstraint *")] JPH_DistanceConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Shape* JPH_Shape_ScaleShape([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + public static extern void JPH_PointConstraintSettings_Init(JPH_PointConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Shape_CastRay([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, JPH_RayCastResult* hit); + public static extern JPH_PointConstraint* JPH_PointConstraint_Create([NativeTypeName("const JPH_PointConstraintSettings *")] JPH_PointConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Shape_CastRay2([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_RayCastSettings *")] JPH_RayCastSettings* rayCastSettings, [NativeTypeName("JPH_CollisionCollectorType")] CollisionCollectorType collectorType, [NativeTypeName("JPH_CastRayResultCallback *")] nint callback, [NativeTypeName("void*")] nint userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern void JPH_PointConstraint_GetSettings([NativeTypeName("const JPH_PointConstraint *")] JPH_PointConstraint* constraint, JPH_PointConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Shape_CollidePoint([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* point, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern void JPH_PointConstraint_SetPoint1(JPH_PointConstraint* constraint, JPH_ConstraintSpace space, [NativeTypeName("JPH_RVec3 *")] rvec3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Shape_CollidePoint2([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* point, [NativeTypeName("JPH_CollisionCollectorType")] CollisionCollectorType collectorType, [NativeTypeName("JPH_CollidePointResultCallback *")] nint callback, [NativeTypeName("void*")] nint userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern void JPH_PointConstraint_SetPoint2(JPH_PointConstraint* constraint, JPH_ConstraintSpace space, [NativeTypeName("JPH_RVec3 *")] rvec3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_ConvexShapeSettings_GetDensity([NativeTypeName("const JPH_ConvexShapeSettings *")] JPH_ConvexShapeSettings* shape); + public static extern void JPH_PointConstraint_GetLocalSpacePoint1([NativeTypeName("const JPH_PointConstraint *")] JPH_PointConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ConvexShapeSettings_SetDensity(JPH_ConvexShapeSettings* shape, float value); + public static extern void JPH_PointConstraint_GetLocalSpacePoint2([NativeTypeName("const JPH_PointConstraint *")] JPH_PointConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_ConvexShape_GetDensity([NativeTypeName("const JPH_ConvexShape *")] JPH_ConvexShape* shape); + public static extern void JPH_PointConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_PointConstraint *")] JPH_PointConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ConvexShape_SetDensity(JPH_ConvexShape* shape, float inDensity); + public static extern void JPH_HingeConstraintSettings_Init(JPH_HingeConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BoxShapeSettings* JPH_BoxShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* halfExtent, float convexRadius); + public static extern JPH_HingeConstraint* JPH_HingeConstraint_Create([NativeTypeName("const JPH_HingeConstraintSettings *")] JPH_HingeConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BoxShape* JPH_BoxShapeSettings_CreateShape([NativeTypeName("const JPH_BoxShapeSettings *")] JPH_BoxShapeSettings* settings); + public static extern void JPH_HingeConstraint_GetSettings(JPH_HingeConstraint* constraint, JPH_HingeConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BoxShape* JPH_BoxShape_Create([NativeTypeName("const JPH_Vec3 *")] float3* halfExtent, float convexRadius); + public static extern void JPH_HingeConstraint_GetLocalSpacePoint1([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BoxShape_GetHalfExtent([NativeTypeName("const JPH_BoxShape *")] JPH_BoxShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* halfExtent); + public static extern void JPH_HingeConstraint_GetLocalSpacePoint2([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_BoxShape_GetConvexRadius([NativeTypeName("const JPH_BoxShape *")] JPH_BoxShape* shape); + public static extern void JPH_HingeConstraint_GetLocalSpaceHingeAxis1([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_SphereShapeSettings* JPH_SphereShapeSettings_Create(float radius); + public static extern void JPH_HingeConstraint_GetLocalSpaceHingeAxis2([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_SphereShape* JPH_SphereShapeSettings_CreateShape([NativeTypeName("const JPH_SphereShapeSettings *")] JPH_SphereShapeSettings* settings); + public static extern void JPH_HingeConstraint_GetLocalSpaceNormalAxis1([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SphereShapeSettings_GetRadius([NativeTypeName("const JPH_SphereShapeSettings *")] JPH_SphereShapeSettings* settings); + public static extern void JPH_HingeConstraint_GetLocalSpaceNormalAxis2([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SphereShapeSettings_SetRadius(JPH_SphereShapeSettings* settings, float radius); + public static extern float JPH_HingeConstraint_GetCurrentAngle(JPH_HingeConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_SphereShape* JPH_SphereShape_Create(float radius); + public static extern void JPH_HingeConstraint_SetMaxFrictionTorque(JPH_HingeConstraint* constraint, float frictionTorque); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SphereShape_GetRadius([NativeTypeName("const JPH_SphereShape *")] JPH_SphereShape* shape); + public static extern float JPH_HingeConstraint_GetMaxFrictionTorque(JPH_HingeConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_PlaneShapeSettings* JPH_PlaneShapeSettings_Create([NativeTypeName("const JPH_Plane *")] JPH_Plane* plane, [NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material, float halfExtent); + public static extern void JPH_HingeConstraint_SetMotorSettings(JPH_HingeConstraint* constraint, JPH_MotorSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_PlaneShape* JPH_PlaneShapeSettings_CreateShape([NativeTypeName("const JPH_PlaneShapeSettings *")] JPH_PlaneShapeSettings* settings); + public static extern void JPH_HingeConstraint_GetMotorSettings(JPH_HingeConstraint* constraint, JPH_MotorSettings* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_PlaneShape* JPH_PlaneShape_Create([NativeTypeName("const JPH_Plane *")] JPH_Plane* plane, [NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material, float halfExtent); + public static extern void JPH_HingeConstraint_SetMotorState(JPH_HingeConstraint* constraint, JPH_MotorState state); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PlaneShape_GetPlane([NativeTypeName("const JPH_PlaneShape *")] JPH_PlaneShape* shape, JPH_Plane* result); + public static extern JPH_MotorState JPH_HingeConstraint_GetMotorState(JPH_HingeConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_PlaneShape_GetHalfExtent([NativeTypeName("const JPH_PlaneShape *")] JPH_PlaneShape* shape); + public static extern void JPH_HingeConstraint_SetTargetAngularVelocity(JPH_HingeConstraint* constraint, float angularVelocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_TriangleShapeSettings* JPH_TriangleShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("const JPH_Vec3 *")] float3* v3, float convexRadius); + public static extern float JPH_HingeConstraint_GetTargetAngularVelocity(JPH_HingeConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_TriangleShape* JPH_TriangleShapeSettings_CreateShape([NativeTypeName("const JPH_TriangleShapeSettings *")] JPH_TriangleShapeSettings* settings); + public static extern void JPH_HingeConstraint_SetTargetAngle(JPH_HingeConstraint* constraint, float angle); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_TriangleShape* JPH_TriangleShape_Create([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("const JPH_Vec3 *")] float3* v3, float convexRadius); + public static extern float JPH_HingeConstraint_GetTargetAngle(JPH_HingeConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_TriangleShape_GetConvexRadius([NativeTypeName("const JPH_TriangleShape *")] JPH_TriangleShape* shape); + public static extern void JPH_HingeConstraint_SetLimits(JPH_HingeConstraint* constraint, float inLimitsMin, float inLimitsMax); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_TriangleShape_GetVertex1([NativeTypeName("const JPH_TriangleShape *")] JPH_TriangleShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern float JPH_HingeConstraint_GetLimitsMin(JPH_HingeConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_TriangleShape_GetVertex2([NativeTypeName("const JPH_TriangleShape *")] JPH_TriangleShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern float JPH_HingeConstraint_GetLimitsMax(JPH_HingeConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_TriangleShape_GetVertex3([NativeTypeName("const JPH_TriangleShape *")] JPH_TriangleShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_HingeConstraint_HasLimits(JPH_HingeConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_CapsuleShapeSettings* JPH_CapsuleShapeSettings_Create(float halfHeightOfCylinder, float radius); + public static extern void JPH_HingeConstraint_GetLimitsSpringSettings(JPH_HingeConstraint* constraint, JPH_SpringSettings* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_CapsuleShape* JPH_CapsuleShapeSettings_CreateShape([NativeTypeName("const JPH_CapsuleShapeSettings *")] JPH_CapsuleShapeSettings* settings); + public static extern void JPH_HingeConstraint_SetLimitsSpringSettings(JPH_HingeConstraint* constraint, JPH_SpringSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_CapsuleShape* JPH_CapsuleShape_Create(float halfHeightOfCylinder, float radius); + public static extern void JPH_HingeConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_CapsuleShape_GetRadius([NativeTypeName("const JPH_CapsuleShape *")] JPH_CapsuleShape* shape); + public static extern void JPH_HingeConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("float[2]")] float* rotation); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_CapsuleShape_GetHalfHeightOfCylinder([NativeTypeName("const JPH_CapsuleShape *")] JPH_CapsuleShape* shape); + public static extern float JPH_HingeConstraint_GetTotalLambdaRotationLimits([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_CylinderShapeSettings* JPH_CylinderShapeSettings_Create(float halfHeight, float radius, float convexRadius); + public static extern float JPH_HingeConstraint_GetTotalLambdaMotor([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_CylinderShape* JPH_CylinderShapeSettings_CreateShape([NativeTypeName("const JPH_CylinderShapeSettings *")] JPH_CylinderShapeSettings* settings); + public static extern void JPH_SliderConstraintSettings_Init(JPH_SliderConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_CylinderShape* JPH_CylinderShape_Create(float halfHeight, float radius); + public static extern void JPH_SliderConstraintSettings_SetSliderAxis(JPH_SliderConstraintSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_CylinderShape_GetRadius([NativeTypeName("const JPH_CylinderShape *")] JPH_CylinderShape* shape); + public static extern JPH_SliderConstraint* JPH_SliderConstraint_Create([NativeTypeName("const JPH_SliderConstraintSettings *")] JPH_SliderConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_CylinderShape_GetHalfHeight([NativeTypeName("const JPH_CylinderShape *")] JPH_CylinderShape* shape); + public static extern void JPH_SliderConstraint_GetSettings(JPH_SliderConstraint* constraint, JPH_SliderConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_TaperedCylinderShapeSettings* JPH_TaperedCylinderShapeSettings_Create(float halfHeightOfTaperedCylinder, float topRadius, float bottomRadius, float convexRadius, [NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material); + public static extern float JPH_SliderConstraint_GetCurrentPosition(JPH_SliderConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_TaperedCylinderShape* JPH_TaperedCylinderShapeSettings_CreateShape([NativeTypeName("const JPH_TaperedCylinderShapeSettings *")] JPH_TaperedCylinderShapeSettings* settings); + public static extern void JPH_SliderConstraint_SetMaxFrictionForce(JPH_SliderConstraint* constraint, float frictionForce); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_TaperedCylinderShape_GetTopRadius([NativeTypeName("const JPH_TaperedCylinderShape *")] JPH_TaperedCylinderShape* shape); + public static extern float JPH_SliderConstraint_GetMaxFrictionForce(JPH_SliderConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_TaperedCylinderShape_GetBottomRadius([NativeTypeName("const JPH_TaperedCylinderShape *")] JPH_TaperedCylinderShape* shape); + public static extern void JPH_SliderConstraint_SetMotorSettings(JPH_SliderConstraint* constraint, JPH_MotorSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_TaperedCylinderShape_GetConvexRadius([NativeTypeName("const JPH_TaperedCylinderShape *")] JPH_TaperedCylinderShape* shape); + public static extern void JPH_SliderConstraint_GetMotorSettings([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint, JPH_MotorSettings* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_TaperedCylinderShape_GetHalfHeight([NativeTypeName("const JPH_TaperedCylinderShape *")] JPH_TaperedCylinderShape* shape); + public static extern void JPH_SliderConstraint_SetMotorState(JPH_SliderConstraint* constraint, JPH_MotorState state); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ConvexHullShapeSettings* JPH_ConvexHullShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* points, uint pointsCount, float maxConvexRadius); + public static extern JPH_MotorState JPH_SliderConstraint_GetMotorState(JPH_SliderConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ConvexHullShape* JPH_ConvexHullShapeSettings_CreateShape([NativeTypeName("const JPH_ConvexHullShapeSettings *")] JPH_ConvexHullShapeSettings* settings); + public static extern void JPH_SliderConstraint_SetTargetVelocity(JPH_SliderConstraint* constraint, float velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_ConvexHullShape_GetNumPoints([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape); + public static extern float JPH_SliderConstraint_GetTargetVelocity(JPH_SliderConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ConvexHullShape_GetPoint([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape, uint index, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_SliderConstraint_SetTargetPosition(JPH_SliderConstraint* constraint, float position); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_ConvexHullShape_GetNumFaces([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape); + public static extern float JPH_SliderConstraint_GetTargetPosition(JPH_SliderConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_ConvexHullShape_GetNumVerticesInFace([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape, uint faceIndex); + public static extern void JPH_SliderConstraint_SetLimits(JPH_SliderConstraint* constraint, float inLimitsMin, float inLimitsMax); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_ConvexHullShape_GetFaceVertices([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape, uint faceIndex, uint maxVertices, [NativeTypeName(" *")] uint* vertices); + public static extern float JPH_SliderConstraint_GetLimitsMin(JPH_SliderConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_MeshShapeSettings* JPH_MeshShapeSettings_Create([NativeTypeName("const JPH_Triangle *")] JPH_Triangle* triangles, uint triangleCount); + public static extern float JPH_SliderConstraint_GetLimitsMax(JPH_SliderConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_MeshShapeSettings* JPH_MeshShapeSettings_Create2([NativeTypeName("const JPH_Vec3 *")] float3* vertices, uint verticesCount, [NativeTypeName("const JPH_IndexedTriangle *")] JPH_IndexedTriangle* triangles, uint triangleCount); + [return: NativeTypeName("bool")] + public static extern byte JPH_SliderConstraint_HasLimits(JPH_SliderConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_MeshShapeSettings_GetMaxTrianglesPerLeaf([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); + public static extern void JPH_SliderConstraint_GetLimitsSpringSettings(JPH_SliderConstraint* constraint, JPH_SpringSettings* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MeshShapeSettings_SetMaxTrianglesPerLeaf(JPH_MeshShapeSettings* settings, uint value); + public static extern void JPH_SliderConstraint_SetLimitsSpringSettings(JPH_SliderConstraint* constraint, JPH_SpringSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_MeshShapeSettings_GetActiveEdgeCosThresholdAngle([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); + public static extern void JPH_SliderConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint, [NativeTypeName("float[2]")] float* position); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MeshShapeSettings_SetActiveEdgeCosThresholdAngle(JPH_MeshShapeSettings* settings, float value); + public static extern float JPH_SliderConstraint_GetTotalLambdaPositionLimits([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_MeshShapeSettings_GetPerTriangleUserData([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); + public static extern void JPH_SliderConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MeshShapeSettings_SetPerTriangleUserData(JPH_MeshShapeSettings* settings, [NativeTypeName("bool")] NativeBool value); + public static extern float JPH_SliderConstraint_GetTotalLambdaMotor([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Mesh_Shape_BuildQuality JPH_MeshShapeSettings_GetBuildQuality([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); + public static extern void JPH_ConeConstraintSettings_Init(JPH_ConeConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MeshShapeSettings_SetBuildQuality(JPH_MeshShapeSettings* settings, JPH_Mesh_Shape_BuildQuality value); + public static extern JPH_ConeConstraint* JPH_ConeConstraint_Create([NativeTypeName("const JPH_ConeConstraintSettings *")] JPH_ConeConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MeshShapeSettings_Sanitize(JPH_MeshShapeSettings* settings); + public static extern void JPH_ConeConstraint_GetSettings(JPH_ConeConstraint* constraint, JPH_ConeConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_MeshShape* JPH_MeshShapeSettings_CreateShape([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); + public static extern void JPH_ConeConstraint_SetHalfConeAngle(JPH_ConeConstraint* constraint, float halfConeAngle); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_MeshShape_GetTriangleUserData([NativeTypeName("const JPH_MeshShape *")] JPH_MeshShape* shape, [NativeTypeName("JPH_SubShapeID")] uint id); + public static extern float JPH_ConeConstraint_GetCosHalfConeAngle([NativeTypeName("const JPH_ConeConstraint *")] JPH_ConeConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_HeightFieldShapeSettings* JPH_HeightFieldShapeSettings_Create([NativeTypeName("const float *")] float* samples, [NativeTypeName("const JPH_Vec3 *")] float3* offset, [NativeTypeName("const JPH_Vec3 *")] float3* scale, uint sampleCount); + public static extern void JPH_ConeConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_ConeConstraint *")] JPH_ConeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_HeightFieldShape* JPH_HeightFieldShapeSettings_CreateShape(JPH_HeightFieldShapeSettings* settings); + public static extern float JPH_ConeConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_ConeConstraint *")] JPH_ConeConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HeightFieldShapeSettings_DetermineMinAndMaxSample([NativeTypeName("const JPH_HeightFieldShapeSettings *")] JPH_HeightFieldShapeSettings* settings, float* pOutMinValue, float* pOutMaxValue, float* pOutQuantizationScale); + public static extern void JPH_SwingTwistConstraintSettings_Init(JPH_SwingTwistConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_HeightFieldShapeSettings_CalculateBitsPerSampleForError([NativeTypeName("const JPH_HeightFieldShapeSettings *")] JPH_HeightFieldShapeSettings* settings, float maxError); + public static extern JPH_SwingTwistConstraint* JPH_SwingTwistConstraint_Create([NativeTypeName("const JPH_SwingTwistConstraintSettings *")] JPH_SwingTwistConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_HeightFieldShape_GetSampleCount([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape); + public static extern void JPH_SwingTwistConstraint_GetSettings(JPH_SwingTwistConstraint* constraint, JPH_SwingTwistConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_HeightFieldShape_GetBlockSize([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape); + public static extern float JPH_SwingTwistConstraint_GetNormalHalfConeAngle(JPH_SwingTwistConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_PhysicsMaterial *")] - public static extern JPH_PhysicsMaterial* JPH_HeightFieldShape_GetMaterial([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape, uint x, uint y); + public static extern void JPH_SwingTwistConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HeightFieldShape_GetPosition([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape, uint x, uint y, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern float JPH_SwingTwistConstraint_GetTotalLambdaTwist([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_HeightFieldShape_IsNoCollision([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape, uint x, uint y); + public static extern float JPH_SwingTwistConstraint_GetTotalLambdaSwingY([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_HeightFieldShape_ProjectOntoSurface([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* localPosition, [NativeTypeName("JPH_Vec3 *")] float3* outSurfacePosition, [NativeTypeName("JPH_SubShapeID *")] uint* outSubShapeID); + public static extern float JPH_SwingTwistConstraint_GetTotalLambdaSwingZ([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_HeightFieldShape_GetMinHeightValue([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape); + public static extern void JPH_SwingTwistConstraint_GetTotalLambdaMotor([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_HeightFieldShape_GetMaxHeightValue([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape); + public static extern void JPH_SixDOFConstraintSettings_Init(JPH_SixDOFConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_TaperedCapsuleShapeSettings* JPH_TaperedCapsuleShapeSettings_Create(float halfHeightOfTaperedCylinder, float topRadius, float bottomRadius); + public static extern void JPH_SixDOFConstraintSettings_MakeFreeAxis(JPH_SixDOFConstraintSettings* settings, JPH_SixDOFConstraintAxis axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_TaperedCapsuleShape* JPH_TaperedCapsuleShapeSettings_CreateShape(JPH_TaperedCapsuleShapeSettings* settings); + [return: NativeTypeName("bool")] + public static extern byte JPH_SixDOFConstraintSettings_IsFreeAxis([NativeTypeName("const JPH_SixDOFConstraintSettings *")] JPH_SixDOFConstraintSettings* settings, JPH_SixDOFConstraintAxis axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_TaperedCapsuleShape_GetTopRadius([NativeTypeName("const JPH_TaperedCapsuleShape *")] JPH_TaperedCapsuleShape* shape); + public static extern void JPH_SixDOFConstraintSettings_MakeFixedAxis(JPH_SixDOFConstraintSettings* settings, JPH_SixDOFConstraintAxis axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_TaperedCapsuleShape_GetBottomRadius([NativeTypeName("const JPH_TaperedCapsuleShape *")] JPH_TaperedCapsuleShape* shape); + [return: NativeTypeName("bool")] + public static extern byte JPH_SixDOFConstraintSettings_IsFixedAxis([NativeTypeName("const JPH_SixDOFConstraintSettings *")] JPH_SixDOFConstraintSettings* settings, JPH_SixDOFConstraintAxis axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_TaperedCapsuleShape_GetHalfHeight([NativeTypeName("const JPH_TaperedCapsuleShape *")] JPH_TaperedCapsuleShape* shape); + public static extern void JPH_SixDOFConstraintSettings_SetLimitedAxis(JPH_SixDOFConstraintSettings* settings, JPH_SixDOFConstraintAxis axis, float min, float max); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CompoundShapeSettings_AddShape(JPH_CompoundShapeSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* shapeSettings, uint userData); + public static extern JPH_SixDOFConstraint* JPH_SixDOFConstraint_Create([NativeTypeName("const JPH_SixDOFConstraintSettings *")] JPH_SixDOFConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CompoundShapeSettings_AddShape2(JPH_CompoundShapeSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, uint userData); + public static extern void JPH_SixDOFConstraint_GetSettings(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_CompoundShape_GetNumSubShapes([NativeTypeName("const JPH_CompoundShape *")] JPH_CompoundShape* shape); + public static extern float JPH_SixDOFConstraint_GetLimitsMin(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CompoundShape_GetSubShape([NativeTypeName("const JPH_CompoundShape *")] JPH_CompoundShape* shape, uint index, [NativeTypeName("const JPH_Shape **")] JPH_Shape** subShape, [NativeTypeName("JPH_Vec3 *")] float3* positionCOM, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName(" *")] uint* userData); + public static extern float JPH_SixDOFConstraint_GetLimitsMax(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_CompoundShape_GetSubShapeIndexFromID([NativeTypeName("const JPH_CompoundShape *")] JPH_CompoundShape* shape, [NativeTypeName("JPH_SubShapeID")] uint id, [NativeTypeName("JPH_SubShapeID *")] uint* remainder); + public static extern void JPH_SixDOFConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_StaticCompoundShapeSettings* JPH_StaticCompoundShapeSettings_Create(); + public static extern void JPH_SixDOFConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_StaticCompoundShape* JPH_StaticCompoundShape_Create([NativeTypeName("const JPH_StaticCompoundShapeSettings *")] JPH_StaticCompoundShapeSettings* settings); + public static extern void JPH_SixDOFConstraint_GetTotalLambdaMotorTranslation([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_MutableCompoundShapeSettings* JPH_MutableCompoundShapeSettings_Create(); + public static extern void JPH_SixDOFConstraint_GetTotalLambdaMotorRotation([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_MutableCompoundShape* JPH_MutableCompoundShape_Create([NativeTypeName("const JPH_MutableCompoundShapeSettings *")] JPH_MutableCompoundShapeSettings* settings); + public static extern void JPH_SixDOFConstraint_GetTranslationLimitsMin([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_MutableCompoundShape_AddShape(JPH_MutableCompoundShape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* child, uint userData, uint index); + public static extern void JPH_SixDOFConstraint_GetTranslationLimitsMax([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MutableCompoundShape_RemoveShape(JPH_MutableCompoundShape* shape, uint index); + public static extern void JPH_SixDOFConstraint_GetRotationLimitsMin([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MutableCompoundShape_ModifyShape(JPH_MutableCompoundShape* shape, uint index, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation); + public static extern void JPH_SixDOFConstraint_GetRotationLimitsMax([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MutableCompoundShape_ModifyShape2(JPH_MutableCompoundShape* shape, uint index, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* newShape); + [return: NativeTypeName("bool")] + public static extern byte JPH_SixDOFConstraint_IsFixedAxis([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MutableCompoundShape_AdjustCenterOfMass(JPH_MutableCompoundShape* shape); + [return: NativeTypeName("bool")] + public static extern byte JPH_SixDOFConstraint_IsFreeAxis([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_Shape *")] - public static extern JPH_Shape* JPH_DecoratedShape_GetInnerShape([NativeTypeName("const JPH_DecoratedShape *")] JPH_DecoratedShape* shape); + public static extern void JPH_SixDOFConstraint_GetLimitsSpringSettings(JPH_SixDOFConstraint* constraint, JPH_SpringSettings* result, JPH_SixDOFConstraintAxis axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_RotatedTranslatedShapeSettings* JPH_RotatedTranslatedShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* shapeSettings); + public static extern void JPH_SixDOFConstraint_SetLimitsSpringSettings(JPH_SixDOFConstraint* constraint, JPH_SpringSettings* settings, JPH_SixDOFConstraintAxis axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_RotatedTranslatedShapeSettings* JPH_RotatedTranslatedShapeSettings_Create2([NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + public static extern void JPH_SixDOFConstraint_SetMaxFriction(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis, float inFriction); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_RotatedTranslatedShape* JPH_RotatedTranslatedShapeSettings_CreateShape([NativeTypeName("const JPH_RotatedTranslatedShapeSettings *")] JPH_RotatedTranslatedShapeSettings* settings); + public static extern float JPH_SixDOFConstraint_GetMaxFriction(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_RotatedTranslatedShape* JPH_RotatedTranslatedShape_Create([NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + public static extern void JPH_SixDOFConstraint_GetRotationInConstraintSpace(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Quat *")] quaternion* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RotatedTranslatedShape_GetPosition([NativeTypeName("const JPH_RotatedTranslatedShape *")] JPH_RotatedTranslatedShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* position); + public static extern void JPH_SixDOFConstraint_GetMotorSettings(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis, JPH_MotorSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RotatedTranslatedShape_GetRotation([NativeTypeName("const JPH_RotatedTranslatedShape *")] JPH_RotatedTranslatedShape* shape, [NativeTypeName("JPH_Quat *")] quaternion* rotation); + public static extern void JPH_SixDOFConstraint_SetMotorState(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis, JPH_MotorState state); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ScaledShapeSettings* JPH_ScaledShapeSettings_Create([NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* shapeSettings, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + public static extern JPH_MotorState JPH_SixDOFConstraint_GetMotorState(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ScaledShapeSettings* JPH_ScaledShapeSettings_Create2([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + public static extern void JPH_SixDOFConstraint_SetTargetVelocityCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* inVelocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ScaledShape* JPH_ScaledShapeSettings_CreateShape([NativeTypeName("const JPH_ScaledShapeSettings *")] JPH_ScaledShapeSettings* settings); + public static extern void JPH_SixDOFConstraint_GetTargetVelocityCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ScaledShape* JPH_ScaledShape_Create([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + public static extern void JPH_SixDOFConstraint_SetTargetAngularVelocityCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* inAngularVelocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ScaledShape_GetScale([NativeTypeName("const JPH_ScaledShape *")] JPH_ScaledShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_SixDOFConstraint_GetTargetAngularVelocityCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_OffsetCenterOfMassShapeSettings* JPH_OffsetCenterOfMassShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* offset, [NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* shapeSettings); + public static extern void JPH_SixDOFConstraint_SetTargetPositionCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* inPosition); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_OffsetCenterOfMassShapeSettings* JPH_OffsetCenterOfMassShapeSettings_Create2([NativeTypeName("const JPH_Vec3 *")] float3* offset, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + public static extern void JPH_SixDOFConstraint_GetTargetPositionCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_OffsetCenterOfMassShape* JPH_OffsetCenterOfMassShapeSettings_CreateShape([NativeTypeName("const JPH_OffsetCenterOfMassShapeSettings *")] JPH_OffsetCenterOfMassShapeSettings* settings); + public static extern void JPH_SixDOFConstraint_SetTargetOrientationCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Quat *")] quaternion* inOrientation); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_OffsetCenterOfMassShape* JPH_OffsetCenterOfMassShape_Create([NativeTypeName("const JPH_Vec3 *")] float3* offset, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + public static extern void JPH_SixDOFConstraint_GetTargetOrientationCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Quat *")] quaternion* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_OffsetCenterOfMassShape_GetOffset([NativeTypeName("const JPH_OffsetCenterOfMassShape *")] JPH_OffsetCenterOfMassShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_SixDOFConstraint_SetTargetOrientationBS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Quat *")] quaternion* inOrientation); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_EmptyShapeSettings* JPH_EmptyShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* centerOfMass); + public static extern void JPH_GearConstraintSettings_Init(JPH_GearConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_EmptyShape* JPH_EmptyShapeSettings_CreateShape([NativeTypeName("const JPH_EmptyShapeSettings *")] JPH_EmptyShapeSettings* settings); + public static extern JPH_GearConstraint* JPH_GearConstraint_Create([NativeTypeName("const JPH_GearConstraintSettings *")] JPH_GearConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BodyCreationSettings* JPH_BodyCreationSettings_Create(); + public static extern void JPH_GearConstraint_GetSettings(JPH_GearConstraint* constraint, JPH_GearConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BodyCreationSettings* JPH_BodyCreationSettings_Create2([NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* settings, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("JPH_MotionType")] MotionType motionType, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer objectLayer); + public static extern void JPH_GearConstraint_SetConstraints(JPH_GearConstraint* constraint, [NativeTypeName("const JPH_Constraint *")] JPH_Constraint* gear1, [NativeTypeName("const JPH_Constraint *")] JPH_Constraint* gear2); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BodyCreationSettings* JPH_BodyCreationSettings_Create3([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("JPH_MotionType")] MotionType motionType, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer objectLayer); + public static extern float JPH_GearConstraint_GetTotalLambda([NativeTypeName("const JPH_GearConstraint *")] JPH_GearConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_Destroy(JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_DestroyBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_GetPosition(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_BodyInterface_CreateAndAddBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings, JPH_Activation activationMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetPosition(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_RVec3 *")] rvec3* value); + public static extern JPH_Body* JPH_BodyInterface_CreateBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_GetRotation(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern JPH_Body* JPH_BodyInterface_CreateBodyWithID(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, [NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetRotation(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_Quat *")] quaternion* value); + public static extern JPH_Body* JPH_BodyInterface_CreateBodyWithoutID(JPH_BodyInterface* bodyInterface, [NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_GetLinearVelocity(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + public static extern void JPH_BodyInterface_DestroyBodyWithoutID(JPH_BodyInterface* bodyInterface, JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetLinearVelocity(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyInterface_AssignBodyID(JPH_BodyInterface* bodyInterface, JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_GetAngularVelocity(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyInterface_AssignBodyID2(JPH_BodyInterface* bodyInterface, JPH_Body* body, [NativeTypeName("JPH_BodyID")] uint bodyID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetAngularVelocity(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + public static extern JPH_Body* JPH_BodyInterface_UnassignBodyID(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("uint64_t")] - public static extern ulong JPH_BodyCreationSettings_GetUserData([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern JPH_Body* JPH_BodyInterface_CreateSoftBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("const JPH_SoftBodyCreationSettings *")] JPH_SoftBodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetUserData(JPH_BodyCreationSettings* settings, [NativeTypeName("uint64_t")] ulong value); + public static extern JPH_Body* JPH_BodyInterface_CreateSoftBodyWithID(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, [NativeTypeName("const JPH_SoftBodyCreationSettings *")] JPH_SoftBodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_ObjectLayer")] - public static extern ObjectLayer JPH_BodyCreationSettings_GetObjectLayer([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern JPH_Body* JPH_BodyInterface_CreateSoftBodyWithoutID(JPH_BodyInterface* bodyInterface, [NativeTypeName("const JPH_SoftBodyCreationSettings *")] JPH_SoftBodyCreationSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetObjectLayer(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer value); + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_BodyInterface_CreateAndAddSoftBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("const JPH_SoftBodyCreationSettings *")] JPH_SoftBodyCreationSettings* settings, JPH_Activation activationMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_MotionType")] - public static extern MotionType JPH_BodyCreationSettings_GetMotionType([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_AddBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, JPH_Activation activationMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetMotionType(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_MotionType")] MotionType value); + public static extern void JPH_BodyInterface_RemoveBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_AllowedDOFs")] - public static extern AllowedDOFs JPH_BodyCreationSettings_GetAllowedDOFs([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_RemoveAndDestroyBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetAllowedDOFs(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_AllowedDOFs")] AllowedDOFs value); + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyInterface_IsActive(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyCreationSettings_GetAllowDynamicOrKinematic([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern byte JPH_BodyInterface_IsAdded(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetAllowDynamicOrKinematic(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] NativeBool value); + public static extern JPH_BodyType JPH_BodyInterface_GetBodyType(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyCreationSettings_GetIsSensor([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_SetLinearVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetIsSensor(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] NativeBool value); + public static extern void JPH_BodyInterface_GetLinearVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyCreationSettings_GetCollideKinematicVsNonDynamic([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_GetCenterOfMassPosition(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, [NativeTypeName("JPH_RVec3 *")] rvec3* position); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetCollideKinematicVsNonDynamic(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] NativeBool value); + public static extern JPH_MotionType JPH_BodyInterface_GetMotionType(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyCreationSettings_GetUseManifoldReduction([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_SetMotionType(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, JPH_MotionType motionType, JPH_Activation activationMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetUseManifoldReduction(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] NativeBool value); + public static extern float JPH_BodyInterface_GetRestitution([NativeTypeName("const JPH_BodyInterface *")] JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyCreationSettings_GetApplyGyroscopicForce([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_SetRestitution(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, float restitution); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetApplyGyroscopicForce(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] NativeBool value); + public static extern float JPH_BodyInterface_GetFriction([NativeTypeName("const JPH_BodyInterface *")] JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_MotionQuality")] - public static extern MotionQuality JPH_BodyCreationSettings_GetMotionQuality([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_SetFriction(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, float friction); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetMotionQuality(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_MotionQuality")] MotionQuality value); + public static extern void JPH_BodyInterface_SetPosition(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* position, JPH_Activation activationMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyCreationSettings_GetEnhancedInternalEdgeRemoval([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_GetPosition(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetEnhancedInternalEdgeRemoval(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] NativeBool value); + public static extern void JPH_BodyInterface_SetRotation(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Quat *")] quaternion* rotation, JPH_Activation activationMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyCreationSettings_GetAllowSleeping([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_GetRotation(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Quat *")] quaternion* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetAllowSleeping(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] NativeBool value); + public static extern void JPH_BodyInterface_SetPositionAndRotation(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, JPH_Activation activationMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_BodyCreationSettings_GetFriction([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_SetPositionAndRotationWhenChanged(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, JPH_Activation activationMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetFriction(JPH_BodyCreationSettings* settings, float value); + public static extern void JPH_BodyInterface_GetPositionAndRotation(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Quat *")] quaternion* rotation); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_BodyCreationSettings_GetRestitution([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_SetPositionRotationAndVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetRestitution(JPH_BodyCreationSettings* settings, float value); + public static extern void JPH_BodyInterface_GetCollisionGroup(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, JPH_CollisionGroup* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_BodyCreationSettings_GetLinearDamping([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_SetCollisionGroup(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("const JPH_CollisionGroup *")] JPH_CollisionGroup* group); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetLinearDamping(JPH_BodyCreationSettings* settings, float value); + [return: NativeTypeName("const JPH_Shape *")] + public static extern JPH_Shape* JPH_BodyInterface_GetShape(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_BodyCreationSettings_GetAngularDamping([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_SetShape(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("bool")] byte updateMassProperties, JPH_Activation activationMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetAngularDamping(JPH_BodyCreationSettings* settings, float value); + public static extern void JPH_BodyInterface_NotifyShapeChanged(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* previousCenterOfMass, [NativeTypeName("bool")] byte updateMassProperties, JPH_Activation activationMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_BodyCreationSettings_GetMaxLinearVelocity([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_ActivateBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetMaxLinearVelocity(JPH_BodyCreationSettings* settings, float value); + public static extern void JPH_BodyInterface_DeactivateBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_BodyCreationSettings_GetMaxAngularVelocity([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + [return: NativeTypeName("JPH_ObjectLayer")] + public static extern uint JPH_BodyInterface_GetObjectLayer(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetMaxAngularVelocity(JPH_BodyCreationSettings* settings, float value); + public static extern void JPH_BodyInterface_SetObjectLayer(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_ObjectLayer")] uint layer); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_BodyCreationSettings_GetGravityFactor([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_GetWorldTransform(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetGravityFactor(JPH_BodyCreationSettings* settings, float value); + public static extern void JPH_BodyInterface_GetCenterOfMassTransform(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_BodyCreationSettings_GetNumVelocityStepsOverride([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_MoveKinematic(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* targetPosition, [NativeTypeName("JPH_Quat *")] quaternion* targetRotation, float deltaTime); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetNumVelocityStepsOverride(JPH_BodyCreationSettings* settings, uint value); + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyInterface_ApplyBuoyancyImpulse(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("const JPH_RVec3 *")] rvec3* surfacePosition, [NativeTypeName("const JPH_Vec3 *")] float3* surfaceNormal, float buoyancy, float linearDrag, float angularDrag, [NativeTypeName("const JPH_Vec3 *")] float3* fluidVelocity, [NativeTypeName("const JPH_Vec3 *")] float3* gravity, float deltaTime); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_BodyCreationSettings_GetNumPositionStepsOverride([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_SetLinearAndAngularVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetNumPositionStepsOverride(JPH_BodyCreationSettings* settings, uint value); + public static extern void JPH_BodyInterface_GetLinearAndAngularVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_OverrideMassProperties")] - public static extern OverrideMassProperties JPH_BodyCreationSettings_GetOverrideMassProperties([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_AddLinearVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetOverrideMassProperties(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_OverrideMassProperties")] OverrideMassProperties value); + public static extern void JPH_BodyInterface_AddLinearAndAngularVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_BodyCreationSettings_GetInertiaMultiplier([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_BodyInterface_SetAngularVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetInertiaMultiplier(JPH_BodyCreationSettings* settings, float value); + public static extern void JPH_BodyInterface_GetAngularVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_GetMassPropertiesOverride([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings, JPH_MassProperties* result); + public static extern void JPH_BodyInterface_GetPointVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* point, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyCreationSettings_SetMassPropertiesOverride(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_MassProperties *")] JPH_MassProperties* massProperties); + public static extern void JPH_BodyInterface_AddForce(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* force); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_SoftBodyCreationSettings* JPH_SoftBodyCreationSettings_Create(); + public static extern void JPH_BodyInterface_AddForce2(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* force, [NativeTypeName("JPH_RVec3 *")] rvec3* point); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SoftBodyCreationSettings_Destroy(JPH_SoftBodyCreationSettings* settings); + public static extern void JPH_BodyInterface_AddTorque(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* torque); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Constraint_Destroy(JPH_Constraint* constraint); + public static extern void JPH_BodyInterface_AddForceAndTorque(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* force, [NativeTypeName("JPH_Vec3 *")] float3* torque); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_ConstraintType")] - public static extern ConstraintType JPH_Constraint_GetType([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + public static extern void JPH_BodyInterface_AddImpulse(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* impulse); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_ConstraintSubType")] - public static extern ConstraintSubType JPH_Constraint_GetSubType([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + public static extern void JPH_BodyInterface_AddImpulse2(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* impulse, [NativeTypeName("JPH_RVec3 *")] rvec3* point); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_Constraint_GetConstraintPriority([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + public static extern void JPH_BodyInterface_AddAngularImpulse(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* angularImpulse); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Constraint_SetConstraintPriority(JPH_Constraint* constraint, uint priority); + public static extern void JPH_BodyInterface_SetMotionQuality(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, JPH_MotionQuality quality); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_Constraint_GetNumVelocityStepsOverride([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + public static extern JPH_MotionQuality JPH_BodyInterface_GetMotionQuality(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Constraint_SetNumVelocityStepsOverride(JPH_Constraint* constraint, uint value); + public static extern void JPH_BodyInterface_GetInverseInertia(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_Constraint_GetNumPositionStepsOverride([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + public static extern void JPH_BodyInterface_SetGravityFactor(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BodyInterface_GetGravityFactor(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Constraint_SetNumPositionStepsOverride(JPH_Constraint* constraint, uint value); + public static extern void JPH_BodyInterface_SetUseManifoldReduction(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Constraint_GetEnabled([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + public static extern byte JPH_BodyInterface_GetUseManifoldReduction(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Constraint_SetEnabled(JPH_Constraint* constraint, [NativeTypeName("bool")] NativeBool enabled); + public static extern void JPH_BodyInterface_SetUserData(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("uint64_t")] ulong inUserData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("uint64_t")] - public static extern ulong JPH_Constraint_GetUserData([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + public static extern ulong JPH_BodyInterface_GetUserData(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Constraint_SetUserData(JPH_Constraint* constraint, [NativeTypeName("uint64_t")] ulong userData); + [return: NativeTypeName("const JPH_PhysicsMaterial *")] + public static extern JPH_PhysicsMaterial* JPH_BodyInterface_GetMaterial(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_SubShapeID")] uint subShapeID); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Constraint_NotifyShapeChanged(JPH_Constraint* constraint, [NativeTypeName("JPH_BodyID")] BodyID bodyID, [NativeTypeName("JPH_Vec3 *")] float3* deltaCOM); + public static extern void JPH_BodyInterface_InvalidateContactCache(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Constraint_ResetWarmStart(JPH_Constraint* constraint); + public static extern void JPH_BodyLockInterface_LockRead([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, JPH_BodyLockRead* outLock); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Constraint_IsActive([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + public static extern void JPH_BodyLockInterface_UnlockRead([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, JPH_BodyLockRead* ioLock); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Constraint_SetupVelocityConstraint(JPH_Constraint* constraint, float deltaTime); + public static extern void JPH_BodyLockInterface_LockWrite([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, JPH_BodyLockWrite* outLock); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Constraint_WarmStartVelocityConstraint(JPH_Constraint* constraint, float warmStartImpulseRatio); + public static extern void JPH_BodyLockInterface_UnlockWrite([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, JPH_BodyLockWrite* ioLock); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Constraint_SolveVelocityConstraint(JPH_Constraint* constraint, float deltaTime); + public static extern JPH_BodyLockMultiRead* JPH_BodyLockInterface_LockMultiRead([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, [NativeTypeName("const JPH_BodyID *")] uint* bodyIDs, [NativeTypeName("uint32_t")] uint count); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Constraint_SolvePositionConstraint(JPH_Constraint* constraint, float deltaTime, float baumgarte); + public static extern void JPH_BodyLockMultiRead_Destroy(JPH_BodyLockMultiRead* ioLock); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Body* JPH_TwoBodyConstraint_GetBody1([NativeTypeName("const JPH_TwoBodyConstraint *")] JPH_TwoBodyConstraint* constraint); + [return: NativeTypeName("const JPH_Body *")] + public static extern JPH_Body* JPH_BodyLockMultiRead_GetBody(JPH_BodyLockMultiRead* ioLock, [NativeTypeName("uint32_t")] uint bodyIndex); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Body* JPH_TwoBodyConstraint_GetBody2([NativeTypeName("const JPH_TwoBodyConstraint *")] JPH_TwoBodyConstraint* constraint); + public static extern JPH_BodyLockMultiWrite* JPH_BodyLockInterface_LockMultiWrite([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, [NativeTypeName("const JPH_BodyID *")] uint* bodyIDs, [NativeTypeName("uint32_t")] uint count); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_TwoBodyConstraint_GetConstraintToBody1Matrix([NativeTypeName("const JPH_TwoBodyConstraint *")] JPH_TwoBodyConstraint* constraint, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + public static extern void JPH_BodyLockMultiWrite_Destroy(JPH_BodyLockMultiWrite* ioLock); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_TwoBodyConstraint_GetConstraintToBody2Matrix([NativeTypeName("const JPH_TwoBodyConstraint *")] JPH_TwoBodyConstraint* constraint, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + public static extern JPH_Body* JPH_BodyLockMultiWrite_GetBody(JPH_BodyLockMultiWrite* ioLock, [NativeTypeName("uint32_t")] uint bodyIndex); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_FixedConstraintSettings_Init(JPH_FixedConstraintSettings* settings); + public static extern JPH_AllowedDOFs JPH_MotionProperties_GetAllowedDOFs([NativeTypeName("const JPH_MotionProperties *")] JPH_MotionProperties* properties); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_FixedConstraint* JPH_FixedConstraint_Create([NativeTypeName("const JPH_FixedConstraintSettings *")] JPH_FixedConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + public static extern void JPH_MotionProperties_SetLinearDamping(JPH_MotionProperties* properties, float damping); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_FixedConstraint_GetSettings([NativeTypeName("const JPH_FixedConstraint *")] JPH_FixedConstraint* constraint, JPH_FixedConstraintSettings* settings); + public static extern float JPH_MotionProperties_GetLinearDamping([NativeTypeName("const JPH_MotionProperties *")] JPH_MotionProperties* properties); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_FixedConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_FixedConstraint *")] JPH_FixedConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_MotionProperties_SetAngularDamping(JPH_MotionProperties* properties, float damping); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_FixedConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_FixedConstraint *")] JPH_FixedConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern float JPH_MotionProperties_GetAngularDamping([NativeTypeName("const JPH_MotionProperties *")] JPH_MotionProperties* properties); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DistanceConstraintSettings_Init(JPH_DistanceConstraintSettings* settings); + public static extern void JPH_MotionProperties_SetMassProperties(JPH_MotionProperties* properties, JPH_AllowedDOFs allowedDOFs, [NativeTypeName("const JPH_MassProperties *")] JPH_MassProperties* massProperties); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_DistanceConstraint* JPH_DistanceConstraint_Create([NativeTypeName("const JPH_DistanceConstraintSettings *")] JPH_DistanceConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + public static extern float JPH_MotionProperties_GetInverseMassUnchecked(JPH_MotionProperties* properties); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DistanceConstraint_GetSettings([NativeTypeName("const JPH_DistanceConstraint *")] JPH_DistanceConstraint* constraint, JPH_DistanceConstraintSettings* settings); + public static extern void JPH_MotionProperties_SetInverseMass(JPH_MotionProperties* properties, float inverseMass); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DistanceConstraint_SetDistance(JPH_DistanceConstraint* constraint, float minDistance, float maxDistance); + public static extern void JPH_MotionProperties_GetInverseInertiaDiagonal(JPH_MotionProperties* properties, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_DistanceConstraint_GetMinDistance(JPH_DistanceConstraint* constraint); + public static extern void JPH_MotionProperties_GetInertiaRotation(JPH_MotionProperties* properties, [NativeTypeName("JPH_Quat *")] quaternion* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_DistanceConstraint_GetMaxDistance(JPH_DistanceConstraint* constraint); + public static extern void JPH_MotionProperties_SetInverseInertia(JPH_MotionProperties* properties, [NativeTypeName("JPH_Vec3 *")] float3* diagonal, [NativeTypeName("JPH_Quat *")] quaternion* rot); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DistanceConstraint_GetLimitsSpringSettings(JPH_DistanceConstraint* constraint, JPH_SpringSettings* result); + public static extern void JPH_MotionProperties_ScaleToMass(JPH_MotionProperties* properties, float mass); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DistanceConstraint_SetLimitsSpringSettings(JPH_DistanceConstraint* constraint, JPH_SpringSettings* settings); + public static extern void JPH_RayCast_GetPointOnRay([NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, float fraction, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_DistanceConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_DistanceConstraint *")] JPH_DistanceConstraint* constraint); + public static extern void JPH_RRayCast_GetPointOnRay([NativeTypeName("const JPH_RVec3 *")] rvec3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, float fraction, [NativeTypeName("JPH_RVec3 *")] rvec3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PointConstraintSettings_Init(JPH_PointConstraintSettings* settings); + public static extern void JPH_MassProperties_DecomposePrincipalMomentsOfInertia(JPH_MassProperties* properties, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* rotation, [NativeTypeName("JPH_Vec3 *")] float3* diagonal); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_PointConstraint* JPH_PointConstraint_Create([NativeTypeName("const JPH_PointConstraintSettings *")] JPH_PointConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + public static extern void JPH_MassProperties_ScaleToMass(JPH_MassProperties* properties, float mass); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PointConstraint_GetSettings([NativeTypeName("const JPH_PointConstraint *")] JPH_PointConstraint* constraint, JPH_PointConstraintSettings* settings); + public static extern void JPH_MassProperties_GetEquivalentSolidBoxSize(float mass, [NativeTypeName("const JPH_Vec3 *")] float3* inertiaDiagonal, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PointConstraint_SetPoint1(JPH_PointConstraint* constraint, [NativeTypeName("JPH_ConstraintSpace")] ConstraintSpace space, [NativeTypeName("JPH_RVec3 *")] rvec3* value); + public static extern void JPH_CollideShapeSettings_Init(JPH_CollideShapeSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PointConstraint_SetPoint2(JPH_PointConstraint* constraint, [NativeTypeName("JPH_ConstraintSpace")] ConstraintSpace space, [NativeTypeName("JPH_RVec3 *")] rvec3* value); + public static extern void JPH_ShapeCastSettings_Init(JPH_ShapeCastSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PointConstraint_GetLocalSpacePoint1([NativeTypeName("const JPH_PointConstraint *")] JPH_PointConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_BroadPhaseQuery_CastRay([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("JPH_RayCastBodyCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PointConstraint_GetLocalSpacePoint2([NativeTypeName("const JPH_PointConstraint *")] JPH_PointConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_BroadPhaseQuery_CastRay2([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_RayCastBodyResultCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_PointConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_PointConstraint *")] JPH_PointConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_BroadPhaseQuery_CollideAABox([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_CollideShapeBodyCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraintSettings_Init(JPH_HingeConstraintSettings* settings); + [return: NativeTypeName("bool")] + public static extern byte JPH_BroadPhaseQuery_CollideSphere([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_Vec3 *")] float3* center, float radius, [NativeTypeName("JPH_CollideShapeBodyCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_HingeConstraint* JPH_HingeConstraint_Create([NativeTypeName("const JPH_HingeConstraintSettings *")] JPH_HingeConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + [return: NativeTypeName("bool")] + public static extern byte JPH_BroadPhaseQuery_CollidePoint([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_Vec3 *")] float3* point, [NativeTypeName("JPH_CollideShapeBodyCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_GetSettings(JPH_HingeConstraint* constraint, JPH_HingeConstraintSettings* settings); + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CastRay([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, JPH_RayCastResult* hit, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_GetLocalSpacePoint1([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CastRay2([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_RayCastSettings *")] JPH_RayCastSettings* rayCastSettings, [NativeTypeName("JPH_CastRayCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_GetLocalSpacePoint2([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CastRay3([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_RayCastSettings *")] JPH_RayCastSettings* rayCastSettings, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_CastRayResultCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_GetLocalSpaceHingeAxis1([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CollidePoint([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* point, [NativeTypeName("JPH_CollidePointCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_GetLocalSpaceHingeAxis2([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CollidePoint2([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* point, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_CollidePointResultCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_GetLocalSpaceNormalAxis1([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CollideShape([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* centerOfMassTransform, [NativeTypeName("const JPH_CollideShapeSettings *")] JPH_CollideShapeSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* baseOffset, [NativeTypeName("JPH_CollideShapeCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_GetLocalSpaceNormalAxis2([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CollideShape2([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* centerOfMassTransform, [NativeTypeName("const JPH_CollideShapeSettings *")] JPH_CollideShapeSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* baseOffset, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_CollideShapeResultCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_HingeConstraint_GetCurrentAngle(JPH_HingeConstraint* constraint); + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CastShape([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* worldTransform, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_ShapeCastSettings *")] JPH_ShapeCastSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* baseOffset, [NativeTypeName("JPH_CastShapeCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_SetMaxFrictionTorque(JPH_HingeConstraint* constraint, float frictionTorque); + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CastShape2([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* worldTransform, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_ShapeCastSettings *")] JPH_ShapeCastSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* baseOffset, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_CastShapeResultCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_HingeConstraint_GetMaxFrictionTorque(JPH_HingeConstraint* constraint); + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_Body_GetID([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_SetMotorSettings(JPH_HingeConstraint* constraint, JPH_MotorSettings* settings); + public static extern JPH_BodyType JPH_Body_GetBodyType([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_GetMotorSettings(JPH_HingeConstraint* constraint, JPH_MotorSettings* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsRigidBody([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_SetMotorState(JPH_HingeConstraint* constraint, [NativeTypeName("JPH_MotorState")] MotorState state); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsSoftBody([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_MotorState")] - public static extern MotorState JPH_HingeConstraint_GetMotorState(JPH_HingeConstraint* constraint); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsActive([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_SetTargetAngularVelocity(JPH_HingeConstraint* constraint, float angularVelocity); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsStatic([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_HingeConstraint_GetTargetAngularVelocity(JPH_HingeConstraint* constraint); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsKinematic([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_SetTargetAngle(JPH_HingeConstraint* constraint, float angle); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsDynamic([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_HingeConstraint_GetTargetAngle(JPH_HingeConstraint* constraint); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_CanBeKinematicOrDynamic([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_SetLimits(JPH_HingeConstraint* constraint, float inLimitsMin, float inLimitsMax); + public static extern void JPH_Body_SetIsSensor(JPH_Body* body, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_HingeConstraint_GetLimitsMin(JPH_HingeConstraint* constraint); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsSensor([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_HingeConstraint_GetLimitsMax(JPH_HingeConstraint* constraint); + public static extern void JPH_Body_SetCollideKinematicVsNonDynamic(JPH_Body* body, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_HingeConstraint_HasLimits(JPH_HingeConstraint* constraint); + public static extern byte JPH_Body_GetCollideKinematicVsNonDynamic([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_GetLimitsSpringSettings(JPH_HingeConstraint* constraint, JPH_SpringSettings* result); + public static extern void JPH_Body_SetUseManifoldReduction(JPH_Body* body, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_SetLimitsSpringSettings(JPH_HingeConstraint* constraint, JPH_SpringSettings* settings); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetUseManifoldReduction([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetUseManifoldReductionWithBody([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("const JPH_Body *")] JPH_Body* other); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_HingeConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("float[2]")] float2* rotation); + public static extern void JPH_Body_SetApplyGyroscopicForce(JPH_Body* body, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_HingeConstraint_GetTotalLambdaRotationLimits([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetApplyGyroscopicForce([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_HingeConstraint_GetTotalLambdaMotor([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint); + public static extern void JPH_Body_SetEnhancedInternalEdgeRemoval(JPH_Body* body, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraintSettings_Init(JPH_SliderConstraintSettings* settings); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetEnhancedInternalEdgeRemoval([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraintSettings_SetSliderAxis(JPH_SliderConstraintSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* axis); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetEnhancedInternalEdgeRemovalWithBody([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("const JPH_Body *")] JPH_Body* other); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_SliderConstraint* JPH_SliderConstraint_Create([NativeTypeName("const JPH_SliderConstraintSettings *")] JPH_SliderConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + public static extern JPH_MotionType JPH_Body_GetMotionType([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraint_GetSettings(JPH_SliderConstraint* constraint, JPH_SliderConstraintSettings* settings); + public static extern void JPH_Body_SetMotionType(JPH_Body* body, JPH_MotionType motionType); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SliderConstraint_GetCurrentPosition(JPH_SliderConstraint* constraint); + [return: NativeTypeName("JPH_BroadPhaseLayer")] + public static extern byte JPH_Body_GetBroadPhaseLayer([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraint_SetMaxFrictionForce(JPH_SliderConstraint* constraint, float frictionForce); + [return: NativeTypeName("JPH_ObjectLayer")] + public static extern uint JPH_Body_GetObjectLayer([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SliderConstraint_GetMaxFrictionForce(JPH_SliderConstraint* constraint); + public static extern void JPH_Body_GetCollisionGroup([NativeTypeName("const JPH_Body *")] JPH_Body* body, JPH_CollisionGroup* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraint_SetMotorSettings(JPH_SliderConstraint* constraint, JPH_MotorSettings* settings); + public static extern void JPH_Body_SetCollisionGroup(JPH_Body* body, [NativeTypeName("const JPH_CollisionGroup *")] JPH_CollisionGroup* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraint_GetMotorSettings([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint, JPH_MotorSettings* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetAllowSleeping(JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraint_SetMotorState(JPH_SliderConstraint* constraint, [NativeTypeName("JPH_MotorState")] MotorState state); + public static extern void JPH_Body_SetAllowSleeping(JPH_Body* body, [NativeTypeName("bool")] byte allowSleeping); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_MotorState")] - public static extern MotorState JPH_SliderConstraint_GetMotorState(JPH_SliderConstraint* constraint); + public static extern void JPH_Body_ResetSleepTimer(JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraint_SetTargetVelocity(JPH_SliderConstraint* constraint, float velocity); + public static extern float JPH_Body_GetFriction([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SliderConstraint_GetTargetVelocity(JPH_SliderConstraint* constraint); + public static extern void JPH_Body_SetFriction(JPH_Body* body, float friction); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraint_SetTargetPosition(JPH_SliderConstraint* constraint, float position); + public static extern float JPH_Body_GetRestitution([NativeTypeName("const JPH_Body *")] JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SliderConstraint_GetTargetPosition(JPH_SliderConstraint* constraint); + public static extern void JPH_Body_SetRestitution(JPH_Body* body, float restitution); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraint_SetLimits(JPH_SliderConstraint* constraint, float inLimitsMin, float inLimitsMax); + public static extern void JPH_Body_GetLinearVelocity(JPH_Body* body, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SliderConstraint_GetLimitsMin(JPH_SliderConstraint* constraint); + public static extern void JPH_Body_SetLinearVelocity(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SliderConstraint_GetLimitsMax(JPH_SliderConstraint* constraint); + public static extern void JPH_Body_SetLinearVelocityClamped(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_SliderConstraint_HasLimits(JPH_SliderConstraint* constraint); + public static extern void JPH_Body_GetAngularVelocity(JPH_Body* body, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraint_GetLimitsSpringSettings(JPH_SliderConstraint* constraint, JPH_SpringSettings* result); + public static extern void JPH_Body_SetAngularVelocity(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraint_SetLimitsSpringSettings(JPH_SliderConstraint* constraint, JPH_SpringSettings* settings); + public static extern void JPH_Body_SetAngularVelocityClamped(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint, [NativeTypeName("float[2]")] float2* position); + public static extern void JPH_Body_GetPointVelocityCOM(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* pointRelativeToCOM, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SliderConstraint_GetTotalLambdaPositionLimits([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint); + public static extern void JPH_Body_GetPointVelocity(JPH_Body* body, [NativeTypeName("const JPH_RVec3 *")] rvec3* point, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SliderConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_Body_AddForce(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* force); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SliderConstraint_GetTotalLambdaMotor([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint); + public static extern void JPH_Body_AddForceAtPosition(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* force, [NativeTypeName("const JPH_RVec3 *")] rvec3* position); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ConeConstraintSettings_Init(JPH_ConeConstraintSettings* settings); + public static extern void JPH_Body_AddTorque(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* force); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ConeConstraint* JPH_ConeConstraint_Create([NativeTypeName("const JPH_ConeConstraintSettings *")] JPH_ConeConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + public static extern void JPH_Body_GetAccumulatedForce(JPH_Body* body, [NativeTypeName("JPH_Vec3 *")] float3* force); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ConeConstraint_GetSettings(JPH_ConeConstraint* constraint, JPH_ConeConstraintSettings* settings); + public static extern void JPH_Body_GetAccumulatedTorque(JPH_Body* body, [NativeTypeName("JPH_Vec3 *")] float3* force); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ConeConstraint_SetHalfConeAngle(JPH_ConeConstraint* constraint, float halfConeAngle); + public static extern void JPH_Body_ResetForce(JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_ConeConstraint_GetCosHalfConeAngle([NativeTypeName("const JPH_ConeConstraint *")] JPH_ConeConstraint* constraint); + public static extern void JPH_Body_ResetTorque(JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ConeConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_ConeConstraint *")] JPH_ConeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_Body_ResetMotion(JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_ConeConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_ConeConstraint *")] JPH_ConeConstraint* constraint); + public static extern void JPH_Body_GetInverseInertia(JPH_Body* body, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SwingTwistConstraintSettings_Init(JPH_SwingTwistConstraintSettings* settings); + public static extern void JPH_Body_AddImpulse(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* impulse); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_SwingTwistConstraint* JPH_SwingTwistConstraint_Create([NativeTypeName("const JPH_SwingTwistConstraintSettings *")] JPH_SwingTwistConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + public static extern void JPH_Body_AddImpulseAtPosition(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* impulse, [NativeTypeName("const JPH_RVec3 *")] rvec3* position); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SwingTwistConstraint_GetSettings(JPH_SwingTwistConstraint* constraint, JPH_SwingTwistConstraintSettings* settings); + public static extern void JPH_Body_AddAngularImpulse(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* angularImpulse); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SwingTwistConstraint_GetNormalHalfConeAngle(JPH_SwingTwistConstraint* constraint); + public static extern void JPH_Body_MoveKinematic(JPH_Body* body, [NativeTypeName("JPH_RVec3 *")] rvec3* targetPosition, [NativeTypeName("JPH_Quat *")] quaternion* targetRotation, float deltaTime); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SwingTwistConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_ApplyBuoyancyImpulse(JPH_Body* body, [NativeTypeName("const JPH_RVec3 *")] rvec3* surfacePosition, [NativeTypeName("const JPH_Vec3 *")] float3* surfaceNormal, float buoyancy, float linearDrag, float angularDrag, [NativeTypeName("const JPH_Vec3 *")] float3* fluidVelocity, [NativeTypeName("const JPH_Vec3 *")] float3* gravity, float deltaTime); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SwingTwistConstraint_GetTotalLambdaTwist([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsInBroadPhase(JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SwingTwistConstraint_GetTotalLambdaSwingY([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint); + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsCollisionCacheInvalid(JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SwingTwistConstraint_GetTotalLambdaSwingZ([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint); + [return: NativeTypeName("const JPH_Shape *")] + public static extern JPH_Shape* JPH_Body_GetShape(JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SwingTwistConstraint_GetTotalLambdaMotor([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_Body_GetPosition([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RVec3 *")] rvec3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SixDOFConstraintSettings_Init(JPH_SixDOFConstraintSettings* settings); + public static extern void JPH_Body_GetRotation([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_Quat *")] quaternion* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SixDOFConstraintSettings_MakeFreeAxis(JPH_SixDOFConstraintSettings* settings, [NativeTypeName("JPH_SixDOFConstraintAxis")] SixDOFConstraintAxis axis); + public static extern void JPH_Body_GetWorldTransform([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_SixDOFConstraintSettings_IsFreeAxis([NativeTypeName("const JPH_SixDOFConstraintSettings *")] JPH_SixDOFConstraintSettings* settings, [NativeTypeName("JPH_SixDOFConstraintAxis")] SixDOFConstraintAxis axis); + public static extern void JPH_Body_GetCenterOfMassPosition([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RVec3 *")] rvec3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SixDOFConstraintSettings_MakeFixedAxis(JPH_SixDOFConstraintSettings* settings, [NativeTypeName("JPH_SixDOFConstraintAxis")] SixDOFConstraintAxis axis); + public static extern void JPH_Body_GetCenterOfMassTransform([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_SixDOFConstraintSettings_IsFixedAxis([NativeTypeName("const JPH_SixDOFConstraintSettings *")] JPH_SixDOFConstraintSettings* settings, [NativeTypeName("JPH_SixDOFConstraintAxis")] SixDOFConstraintAxis axis); + public static extern void JPH_Body_GetInverseCenterOfMassTransform([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SixDOFConstraintSettings_SetLimitedAxis(JPH_SixDOFConstraintSettings* settings, [NativeTypeName("JPH_SixDOFConstraintAxis")] SixDOFConstraintAxis axis, float min, float max); + public static extern void JPH_Body_GetWorldSpaceBounds([NativeTypeName("const JPH_Body *")] JPH_Body* body, JPH_AABox* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_SixDOFConstraint* JPH_SixDOFConstraint_Create([NativeTypeName("const JPH_SixDOFConstraintSettings *")] JPH_SixDOFConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + public static extern void JPH_Body_GetWorldSpaceSurfaceNormal([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_SubShapeID")] uint subShapeID, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Vec3 *")] float3* normal); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SixDOFConstraint_GetSettings(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintSettings* settings); + public static extern JPH_MotionProperties* JPH_Body_GetMotionProperties(JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SixDOFConstraint_GetLimitsMin(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_SixDOFConstraintAxis")] SixDOFConstraintAxis axis); + public static extern JPH_MotionProperties* JPH_Body_GetMotionPropertiesUnchecked(JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_SixDOFConstraint_GetLimitsMax(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_SixDOFConstraintAxis")] SixDOFConstraintAxis axis); + public static extern void JPH_Body_SetUserData(JPH_Body* body, [NativeTypeName("uint64_t")] ulong userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SixDOFConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_Body_GetUserData(JPH_Body* body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SixDOFConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern JPH_Body* JPH_Body_GetFixedToWorldBody(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SixDOFConstraint_GetTotalLambdaMotorTranslation([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_BroadPhaseLayerFilter_SetProcs([NativeTypeName("const JPH_BroadPhaseLayerFilter_Procs *")] JPH_BroadPhaseLayerFilter_Procs* procs); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SixDOFConstraint_GetTotalLambdaMotorRotation([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern JPH_BroadPhaseLayerFilter* JPH_BroadPhaseLayerFilter_Create(void* userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_GearConstraintSettings_Init(JPH_GearConstraintSettings* settings); + public static extern void JPH_BroadPhaseLayerFilter_Destroy(JPH_BroadPhaseLayerFilter* filter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_GearConstraint* JPH_GearConstraint_Create([NativeTypeName("const JPH_GearConstraintSettings *")] JPH_GearConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + public static extern void JPH_ObjectLayerFilter_SetProcs([NativeTypeName("const JPH_ObjectLayerFilter_Procs *")] JPH_ObjectLayerFilter_Procs* procs); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_GearConstraint_GetSettings(JPH_GearConstraint* constraint, JPH_GearConstraintSettings* settings); + public static extern JPH_ObjectLayerFilter* JPH_ObjectLayerFilter_Create(void* userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_GearConstraint_SetConstraints(JPH_GearConstraint* constraint, [NativeTypeName("const JPH_Constraint *")] JPH_Constraint* gear1, [NativeTypeName("const JPH_Constraint *")] JPH_Constraint* gear2); + public static extern void JPH_ObjectLayerFilter_Destroy(JPH_ObjectLayerFilter* filter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_GearConstraint_GetTotalLambda([NativeTypeName("const JPH_GearConstraint *")] JPH_GearConstraint* constraint); + public static extern void JPH_BodyFilter_SetProcs([NativeTypeName("const JPH_BodyFilter_Procs *")] JPH_BodyFilter_Procs* procs); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_DestroyBody(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID); + public static extern JPH_BodyFilter* JPH_BodyFilter_Create(void* userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_BodyID")] - public static extern BodyID JPH_BodyInterface_CreateAndAddBody(JPH_BodyInterface* @interface, [NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_Activation")] Activation activationMode); + public static extern void JPH_BodyFilter_Destroy(JPH_BodyFilter* filter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Body* JPH_BodyInterface_CreateBody(JPH_BodyInterface* @interface, [NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_ShapeFilter_SetProcs([NativeTypeName("const JPH_ShapeFilter_Procs *")] JPH_ShapeFilter_Procs* procs); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Body* JPH_BodyInterface_CreateBodyWithID(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID, [NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern JPH_ShapeFilter* JPH_ShapeFilter_Create(void* userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Body* JPH_BodyInterface_CreateBodyWithoutID(JPH_BodyInterface* @interface, [NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + public static extern void JPH_ShapeFilter_Destroy(JPH_ShapeFilter* filter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_DestroyBodyWithoutID(JPH_BodyInterface* @interface, JPH_Body* body); + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_ShapeFilter_GetBodyID2(JPH_ShapeFilter* filter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyInterface_AssignBodyID(JPH_BodyInterface* @interface, JPH_Body* body); + public static extern void JPH_ShapeFilter_SetBodyID2(JPH_ShapeFilter* filter, [NativeTypeName("JPH_BodyID")] uint id); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyInterface_AssignBodyID2(JPH_BodyInterface* @interface, JPH_Body* body, [NativeTypeName("JPH_BodyID")] BodyID bodyID); + public static extern void JPH_SimShapeFilter_SetProcs([NativeTypeName("const JPH_SimShapeFilter_Procs *")] JPH_SimShapeFilter_Procs* procs); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Body* JPH_BodyInterface_UnassignBodyID(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID); + public static extern JPH_SimShapeFilter* JPH_SimShapeFilter_Create(void* userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Body* JPH_BodyInterface_CreateSoftBody(JPH_BodyInterface* @interface, [NativeTypeName("const JPH_SoftBodyCreationSettings *")] JPH_SoftBodyCreationSettings* settings); + public static extern void JPH_SimShapeFilter_Destroy(JPH_SimShapeFilter* filter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Body* JPH_BodyInterface_CreateSoftBodyWithID(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID, [NativeTypeName("const JPH_SoftBodyCreationSettings *")] JPH_SoftBodyCreationSettings* settings); + public static extern void JPH_ContactListener_SetProcs([NativeTypeName("const JPH_ContactListener_Procs *")] JPH_ContactListener_Procs* procs); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Body* JPH_BodyInterface_CreateSoftBodyWithoutID(JPH_BodyInterface* @interface, [NativeTypeName("const JPH_SoftBodyCreationSettings *")] JPH_SoftBodyCreationSettings* settings); + public static extern JPH_ContactListener* JPH_ContactListener_Create(void* userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_BodyID")] - public static extern BodyID JPH_BodyInterface_CreateAndAddSoftBody(JPH_BodyInterface* @interface, [NativeTypeName("const JPH_SoftBodyCreationSettings *")] JPH_SoftBodyCreationSettings* settings, [NativeTypeName("JPH_Activation")] Activation activationMode); + public static extern void JPH_ContactListener_Destroy(JPH_ContactListener* listener); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_AddBody(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID, [NativeTypeName("JPH_Activation")] Activation activationMode); + public static extern void JPH_BodyActivationListener_SetProcs([NativeTypeName("const JPH_BodyActivationListener_Procs *")] JPH_BodyActivationListener_Procs* procs); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_RemoveBody(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID); + public static extern JPH_BodyActivationListener* JPH_BodyActivationListener_Create(void* userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_RemoveAndDestroyBody(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID); + public static extern void JPH_BodyActivationListener_Destroy(JPH_BodyActivationListener* listener); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyInterface_IsActive(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID); + public static extern void JPH_BodyDrawFilter_SetProcs([NativeTypeName("const JPH_BodyDrawFilter_Procs *")] JPH_BodyDrawFilter_Procs* procs); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyInterface_IsAdded(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID); + public static extern JPH_BodyDrawFilter* JPH_BodyDrawFilter_Create(void* userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_BodyType")] - public static extern BodyType JPH_BodyInterface_GetBodyType(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID); + public static extern void JPH_BodyDrawFilter_Destroy(JPH_BodyDrawFilter* filter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetLinearVelocity(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + public static extern void JPH_ContactManifold_GetWorldSpaceNormal([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_GetLinearVelocity(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + public static extern float JPH_ContactManifold_GetPenetrationDepth([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_GetCenterOfMassPosition(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID, [NativeTypeName("JPH_RVec3 *")] rvec3* position); + [return: NativeTypeName("JPH_SubShapeID")] + public static extern uint JPH_ContactManifold_GetSubShapeID1([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_MotionType")] - public static extern MotionType JPH_BodyInterface_GetMotionType(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID); + [return: NativeTypeName("JPH_SubShapeID")] + public static extern uint JPH_ContactManifold_GetSubShapeID2([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetMotionType(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID, [NativeTypeName("JPH_MotionType")] MotionType motionType, [NativeTypeName("JPH_Activation")] Activation activationMode); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ContactManifold_GetPointCount([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_BodyInterface_GetRestitution([NativeTypeName("const JPH_BodyInterface *")] JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID); + public static extern void JPH_ContactManifold_GetWorldSpaceContactPointOn1([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("JPH_RVec3 *")] rvec3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetRestitution(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID, float restitution); + public static extern void JPH_ContactManifold_GetWorldSpaceContactPointOn2([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("JPH_RVec3 *")] rvec3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_BodyInterface_GetFriction([NativeTypeName("const JPH_BodyInterface *")] JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID); + public static extern float JPH_ContactSettings_GetFriction(JPH_ContactSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetFriction(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyID, float friction); + public static extern void JPH_ContactSettings_SetFriction(JPH_ContactSettings* settings, float friction); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetPosition(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Activation")] Activation activationMode); + public static extern float JPH_ContactSettings_GetRestitution(JPH_ContactSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_GetPosition(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + public static extern void JPH_ContactSettings_SetRestitution(JPH_ContactSettings* settings, float restitution); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetRotation(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName("JPH_Activation")] Activation activationMode); + public static extern float JPH_ContactSettings_GetInvMassScale1(JPH_ContactSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_GetRotation(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern void JPH_ContactSettings_SetInvMassScale1(JPH_ContactSettings* settings, float scale); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetPositionAndRotation(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("JPH_Activation")] Activation activationMode); + public static extern float JPH_ContactSettings_GetInvInertiaScale1(JPH_ContactSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetPositionAndRotationWhenChanged(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("JPH_Activation")] Activation activationMode); + public static extern void JPH_ContactSettings_SetInvInertiaScale1(JPH_ContactSettings* settings, float scale); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_GetPositionAndRotation(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Quat *")] quaternion* rotation); + public static extern float JPH_ContactSettings_GetInvMassScale2(JPH_ContactSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetPositionRotationAndVelocity(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); + public static extern void JPH_ContactSettings_SetInvMassScale2(JPH_ContactSettings* settings, float scale); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_Shape *")] - public static extern JPH_Shape* JPH_BodyInterface_GetShape(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId); + public static extern float JPH_ContactSettings_GetInvInertiaScale2(JPH_ContactSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetShape(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("bool")] NativeBool updateMassProperties, [NativeTypeName("JPH_Activation")] Activation activationMode); + public static extern void JPH_ContactSettings_SetInvInertiaScale2(JPH_ContactSettings* settings, float scale); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_NotifyShapeChanged(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* previousCenterOfMass, [NativeTypeName("bool")] NativeBool updateMassProperties, [NativeTypeName("JPH_Activation")] Activation activationMode); + [return: NativeTypeName("bool")] + public static extern byte JPH_ContactSettings_GetIsSensor([NativeTypeName("const JPH_ContactSettings *")] JPH_ContactSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_ActivateBody(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId); + public static extern void JPH_ContactSettings_SetIsSensor(JPH_ContactSettings* settings, [NativeTypeName("bool")] byte sensor); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_DeactivateBody(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId); + public static extern void JPH_ContactSettings_GetRelativeLinearSurfaceVelocity(JPH_ContactSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_ObjectLayer")] - public static extern ObjectLayer JPH_BodyInterface_GetObjectLayer(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId); + public static extern void JPH_ContactSettings_SetRelativeLinearSurfaceVelocity(JPH_ContactSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetObjectLayer(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer); + public static extern void JPH_ContactSettings_GetRelativeAngularSurfaceVelocity(JPH_ContactSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_GetWorldTransform(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + public static extern void JPH_ContactSettings_SetRelativeAngularSurfaceVelocity(JPH_ContactSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_GetCenterOfMassTransform(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + public static extern void JPH_CharacterBase_Destroy(JPH_CharacterBase* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_MoveKinematic(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* targetPosition, [NativeTypeName("JPH_Quat *")] quaternion* targetRotation, float deltaTime); + public static extern float JPH_CharacterBase_GetCosMaxSlopeAngle(JPH_CharacterBase* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyInterface_ApplyBuoyancyImpulse(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("const JPH_RVec3 *")] rvec3* surfacePosition, [NativeTypeName("const JPH_Vec3 *")] float3* surfaceNormal, float buoyancy, float linearDrag, float angularDrag, [NativeTypeName("const JPH_Vec3 *")] float3* fluidVelocity, [NativeTypeName("const JPH_Vec3 *")] float3* gravity, float deltaTime); + public static extern void JPH_CharacterBase_SetMaxSlopeAngle(JPH_CharacterBase* character, float maxSlopeAngle); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetLinearAndAngularVelocity(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); + public static extern void JPH_CharacterBase_GetUp(JPH_CharacterBase* character, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_GetLinearAndAngularVelocity(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); + public static extern void JPH_CharacterBase_SetUp(JPH_CharacterBase* character, [NativeTypeName("const JPH_Vec3 *")] float3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_AddLinearVelocity(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity); + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterBase_IsSlopeTooSteep(JPH_CharacterBase* character, [NativeTypeName("const JPH_Vec3 *")] float3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_AddLinearAndAngularVelocity(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); + [return: NativeTypeName("const JPH_Shape *")] + public static extern JPH_Shape* JPH_CharacterBase_GetShape(JPH_CharacterBase* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetAngularVelocity(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); + public static extern JPH_GroundState JPH_CharacterBase_GetGroundState(JPH_CharacterBase* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_GetAngularVelocity(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterBase_IsSupported(JPH_CharacterBase* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_GetPointVelocity(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* point, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + public static extern void JPH_CharacterBase_GetGroundPosition(JPH_CharacterBase* character, [NativeTypeName("JPH_RVec3 *")] rvec3* position); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_AddForce(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* force); + public static extern void JPH_CharacterBase_GetGroundNormal(JPH_CharacterBase* character, [NativeTypeName("JPH_Vec3 *")] float3* normal); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_AddForce2(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* force, [NativeTypeName("JPH_RVec3 *")] rvec3* point); + public static extern void JPH_CharacterBase_GetGroundVelocity(JPH_CharacterBase* character, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_AddTorque(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* torque); + [return: NativeTypeName("const JPH_PhysicsMaterial *")] + public static extern JPH_PhysicsMaterial* JPH_CharacterBase_GetGroundMaterial(JPH_CharacterBase* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_AddForceAndTorque(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* force, [NativeTypeName("JPH_Vec3 *")] float3* torque); + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_CharacterBase_GetGroundBodyId(JPH_CharacterBase* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_AddImpulse(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* impulse); + [return: NativeTypeName("JPH_SubShapeID")] + public static extern uint JPH_CharacterBase_GetGroundSubShapeId(JPH_CharacterBase* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_AddImpulse2(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* impulse, [NativeTypeName("JPH_RVec3 *")] rvec3* point); + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_CharacterBase_GetGroundUserData(JPH_CharacterBase* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_AddAngularImpulse(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Vec3 *")] float3* angularImpulse); + public static extern void JPH_CharacterSettings_Init(JPH_CharacterSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetMotionQuality(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_MotionQuality")] MotionQuality quality); + public static extern JPH_Character* JPH_Character_Create([NativeTypeName("const JPH_CharacterSettings *")] JPH_CharacterSettings* settings, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("uint64_t")] ulong userData, JPH_PhysicsSystem* system); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_MotionQuality")] - public static extern MotionQuality JPH_BodyInterface_GetMotionQuality(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId); + public static extern void JPH_Character_AddToPhysicsSystem(JPH_Character* character, JPH_Activation activationMode, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_GetInverseInertia(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + public static extern void JPH_Character_RemoveFromPhysicsSystem(JPH_Character* character, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetGravityFactor(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, float value); + public static extern void JPH_Character_Activate(JPH_Character* character, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_BodyInterface_GetGravityFactor(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId); + public static extern void JPH_Character_PostSimulation(JPH_Character* character, float maxSeparationDistance, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetUseManifoldReduction(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("bool")] NativeBool value); + public static extern void JPH_Character_SetLinearAndAngularVelocity(JPH_Character* character, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BodyInterface_GetUseManifoldReduction(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId); + public static extern void JPH_Character_GetLinearVelocity(JPH_Character* character, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_SetUserData(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("uint64_t")] ulong inUserData); + public static extern void JPH_Character_SetLinearVelocity(JPH_Character* character, [NativeTypeName("const JPH_Vec3 *")] float3* value, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("uint64_t")] - public static extern ulong JPH_BodyInterface_GetUserData(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId); + public static extern void JPH_Character_AddLinearVelocity(JPH_Character* character, [NativeTypeName("const JPH_Vec3 *")] float3* value, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_PhysicsMaterial *")] - public static extern JPH_PhysicsMaterial* JPH_BodyInterface_GetMaterial(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId, [NativeTypeName("JPH_SubShapeID")] uint subShapeID); + public static extern void JPH_Character_AddImpulse(JPH_Character* character, [NativeTypeName("const JPH_Vec3 *")] float3* value, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyInterface_InvalidateContactCache(JPH_BodyInterface* @interface, [NativeTypeName("JPH_BodyID")] BodyID bodyId); + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_Character_GetBodyID([NativeTypeName("const JPH_Character *")] JPH_Character* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyLockInterface_LockRead([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, [NativeTypeName("JPH_BodyID")] BodyID bodyID, JPH_BodyLockRead* outLock); + public static extern void JPH_Character_GetPositionAndRotation(JPH_Character* character, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyLockInterface_UnlockRead([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, JPH_BodyLockRead* ioLock); + public static extern void JPH_Character_SetPositionAndRotation(JPH_Character* character, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, JPH_Activation activationMode, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyLockInterface_LockWrite([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, [NativeTypeName("JPH_BodyID")] BodyID bodyID, JPH_BodyLockWrite* outLock); + public static extern void JPH_Character_GetPosition(JPH_Character* character, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyLockInterface_UnlockWrite([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, JPH_BodyLockWrite* ioLock); + public static extern void JPH_Character_SetPosition(JPH_Character* character, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, JPH_Activation activationMode, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BodyLockMultiRead* JPH_BodyLockInterface_LockMultiRead([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, [NativeTypeName("const JPH_BodyID *")] BodyID* bodyIDs, uint count); + public static extern void JPH_Character_GetRotation(JPH_Character* character, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyLockMultiRead_Destroy(JPH_BodyLockMultiRead* ioLock); + public static extern void JPH_Character_SetRotation(JPH_Character* character, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, JPH_Activation activationMode, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_Body *")] - public static extern JPH_Body* JPH_BodyLockMultiRead_GetBody(JPH_BodyLockMultiRead* ioLock, uint bodyIndex); + public static extern void JPH_Character_GetCenterOfMassPosition(JPH_Character* character, [NativeTypeName("JPH_RVec3 *")] rvec3* result, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BodyLockMultiWrite* JPH_BodyLockInterface_LockMultiWrite([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, [NativeTypeName("const JPH_BodyID *")] BodyID* bodyIDs, uint count); + public static extern void JPH_Character_GetWorldTransform(JPH_Character* character, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyLockMultiWrite_Destroy(JPH_BodyLockMultiWrite* ioLock); + [return: NativeTypeName("JPH_ObjectLayer")] + public static extern uint JPH_Character_GetLayer([NativeTypeName("const JPH_Character *")] JPH_Character* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Body* JPH_BodyLockMultiWrite_GetBody(JPH_BodyLockMultiWrite* ioLock, uint bodyIndex); + public static extern void JPH_Character_SetLayer(JPH_Character* character, [NativeTypeName("JPH_ObjectLayer")] uint value, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_AllowedDOFs")] - public static extern AllowedDOFs JPH_MotionProperties_GetAllowedDOFs([NativeTypeName("const JPH_MotionProperties *")] JPH_MotionProperties* properties); + public static extern void JPH_Character_SetShape(JPH_Character* character, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, float maxPenetrationDepth, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MotionProperties_SetLinearDamping(JPH_MotionProperties* properties, float damping); + public static extern void JPH_CharacterVirtualSettings_Init(JPH_CharacterVirtualSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_MotionProperties_GetLinearDamping([NativeTypeName("const JPH_MotionProperties *")] JPH_MotionProperties* properties); + public static extern JPH_CharacterVirtual* JPH_CharacterVirtual_Create([NativeTypeName("const JPH_CharacterVirtualSettings *")] JPH_CharacterVirtualSettings* settings, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("uint64_t")] ulong userData, JPH_PhysicsSystem* system); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MotionProperties_SetAngularDamping(JPH_MotionProperties* properties, float damping); + [return: NativeTypeName("JPH_CharacterID")] + public static extern uint JPH_CharacterVirtual_GetID([NativeTypeName("const JPH_CharacterVirtual *")] JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_MotionProperties_GetAngularDamping([NativeTypeName("const JPH_MotionProperties *")] JPH_MotionProperties* properties); + public static extern void JPH_CharacterVirtual_SetListener(JPH_CharacterVirtual* character, JPH_CharacterContactListener* listener); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MotionProperties_SetMassProperties(JPH_MotionProperties* properties, [NativeTypeName("JPH_AllowedDOFs")] AllowedDOFs allowedDOFs, [NativeTypeName("const JPH_MassProperties *")] JPH_MassProperties* massProperties); + public static extern void JPH_CharacterVirtual_SetCharacterVsCharacterCollision(JPH_CharacterVirtual* character, JPH_CharacterVsCharacterCollision* characterVsCharacterCollision); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_MotionProperties_GetInverseMassUnchecked(JPH_MotionProperties* properties); + public static extern void JPH_CharacterVirtual_GetLinearVelocity(JPH_CharacterVirtual* character, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MotionProperties_SetInverseMass(JPH_MotionProperties* properties, float inverseMass); + public static extern void JPH_CharacterVirtual_SetLinearVelocity(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MotionProperties_GetInverseInertiaDiagonal(JPH_MotionProperties* properties, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_CharacterVirtual_GetPosition(JPH_CharacterVirtual* character, [NativeTypeName("JPH_RVec3 *")] rvec3* position); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MotionProperties_GetInertiaRotation(JPH_MotionProperties* properties, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern void JPH_CharacterVirtual_SetPosition(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_RVec3 *")] rvec3* position); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MotionProperties_SetInverseInertia(JPH_MotionProperties* properties, [NativeTypeName("JPH_Vec3 *")] float3* diagonal, [NativeTypeName("JPH_Quat *")] quaternion* rot); + public static extern void JPH_CharacterVirtual_GetRotation(JPH_CharacterVirtual* character, [NativeTypeName("JPH_Quat *")] quaternion* rotation); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MotionProperties_ScaleToMass(JPH_MotionProperties* properties, float mass); + public static extern void JPH_CharacterVirtual_SetRotation(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Quat *")] quaternion* rotation); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RayCast_GetPointOnRay([NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, float fraction, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_CharacterVirtual_GetWorldTransform(JPH_CharacterVirtual* character, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RRayCast_GetPointOnRay([NativeTypeName("const JPH_RVec3 *")] rvec3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, float fraction, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + public static extern void JPH_CharacterVirtual_GetCenterOfMassTransform(JPH_CharacterVirtual* character, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MassProperties_DecomposePrincipalMomentsOfInertia(JPH_MassProperties* properties, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* rotation, [NativeTypeName("JPH_Vec3 *")] float3* diagonal); + public static extern float JPH_CharacterVirtual_GetMass(JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MassProperties_ScaleToMass(JPH_MassProperties* properties, float mass); + public static extern void JPH_CharacterVirtual_SetMass(JPH_CharacterVirtual* character, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_MassProperties_GetEquivalentSolidBoxSize(float mass, [NativeTypeName("const JPH_Vec3 *")] float3* inertiaDiagonal, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern float JPH_CharacterVirtual_GetMaxStrength(JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CollideShapeSettings_Init(JPH_CollideShapeSettings* settings); + public static extern void JPH_CharacterVirtual_SetMaxStrength(JPH_CharacterVirtual* character, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ShapeCastSettings_Init(JPH_ShapeCastSettings* settings); + public static extern float JPH_CharacterVirtual_GetPenetrationRecoverySpeed(JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BroadPhaseQuery_CastRay([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("JPH_RayCastBodyCollectorCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); + public static extern void JPH_CharacterVirtual_SetPenetrationRecoverySpeed(JPH_CharacterVirtual* character, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BroadPhaseQuery_CastRay2([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("JPH_CollisionCollectorType")] CollisionCollectorType collectorType, [NativeTypeName("JPH_RayCastBodyResultCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); + public static extern byte JPH_CharacterVirtual_GetEnhancedInternalEdgeRemoval(JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BroadPhaseQuery_CollideAABox([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_CollideShapeBodyCollectorCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); + public static extern void JPH_CharacterVirtual_SetEnhancedInternalEdgeRemoval(JPH_CharacterVirtual* character, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BroadPhaseQuery_CollideSphere([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_Vec3 *")] float3* center, float radius, [NativeTypeName("JPH_CollideShapeBodyCollectorCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); + public static extern float JPH_CharacterVirtual_GetCharacterPadding(JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_BroadPhaseQuery_CollidePoint([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_Vec3 *")] float3* point, [NativeTypeName("JPH_CollideShapeBodyCollectorCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_CharacterVirtual_GetMaxNumHits(JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_NarrowPhaseQuery_CastRay([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, JPH_RayCastResult* hit, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter); + public static extern void JPH_CharacterVirtual_SetMaxNumHits(JPH_CharacterVirtual* character, [NativeTypeName("uint32_t")] uint value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_NarrowPhaseQuery_CastRay2([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_RayCastSettings *")] JPH_RayCastSettings* rayCastSettings, [NativeTypeName("JPH_CastRayCollectorCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern float JPH_CharacterVirtual_GetHitReductionCosMaxAngle(JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_NarrowPhaseQuery_CastRay3([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_RayCastSettings *")] JPH_RayCastSettings* rayCastSettings, [NativeTypeName("JPH_CollisionCollectorType")] CollisionCollectorType collectorType, [NativeTypeName("JPH_CastRayResultCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern void JPH_CharacterVirtual_SetHitReductionCosMaxAngle(JPH_CharacterVirtual* character, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_NarrowPhaseQuery_CollidePoint([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* point, [NativeTypeName("JPH_CollidePointCollectorCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern byte JPH_CharacterVirtual_GetMaxHitsExceeded(JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_NarrowPhaseQuery_CollidePoint2([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* point, [NativeTypeName("JPH_CollisionCollectorType")] CollisionCollectorType collectorType, [NativeTypeName("JPH_CollidePointResultCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern void JPH_CharacterVirtual_GetShapeOffset(JPH_CharacterVirtual* character, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_NarrowPhaseQuery_CollideShape([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* centerOfMassTransform, [NativeTypeName("const JPH_CollideShapeSettings *")] JPH_CollideShapeSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* baseOffset, [NativeTypeName("JPH_CollideShapeCollectorCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern void JPH_CharacterVirtual_SetShapeOffset(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_NarrowPhaseQuery_CollideShape2([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* centerOfMassTransform, [NativeTypeName("const JPH_CollideShapeSettings *")] JPH_CollideShapeSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* baseOffset, [NativeTypeName("JPH_CollisionCollectorType")] CollisionCollectorType collectorType, [NativeTypeName("JPH_CollideShapeResultCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_CharacterVirtual_GetUserData([NativeTypeName("const JPH_CharacterVirtual *")] JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_NarrowPhaseQuery_CastShape([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* worldTransform, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_ShapeCastSettings *")] JPH_ShapeCastSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* baseOffset, [NativeTypeName("JPH_CastShapeCollectorCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern void JPH_CharacterVirtual_SetUserData(JPH_CharacterVirtual* character, [NativeTypeName("uint64_t")] ulong value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_NarrowPhaseQuery_CastShape2([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* worldTransform, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_ShapeCastSettings *")] JPH_ShapeCastSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* baseOffset, [NativeTypeName("JPH_CollisionCollectorType")] CollisionCollectorType collectorType, [NativeTypeName("JPH_CastShapeResultCallback *")] nint callback, [NativeTypeName("void*")] nint userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_CharacterVirtual_GetInnerBodyID([NativeTypeName("const JPH_CharacterVirtual *")] JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_BodyID")] - public static extern BodyID JPH_Body_GetID([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern void JPH_CharacterVirtual_CancelVelocityTowardsSteepSlopes(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* desiredVelocity, [NativeTypeName("JPH_Vec3 *")] float3* velocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_BodyType")] - public static extern BodyType JPH_Body_GetBodyType([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern void JPH_CharacterVirtual_StartTrackingContactChanges(JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_IsRigidBody([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern void JPH_CharacterVirtual_FinishTrackingContactChanges(JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_IsSoftBody([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern void JPH_CharacterVirtual_Update(JPH_CharacterVirtual* character, float deltaTime, [NativeTypeName("JPH_ObjectLayer")] uint layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_IsActive([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern void JPH_CharacterVirtual_ExtendedUpdate(JPH_CharacterVirtual* character, float deltaTime, [NativeTypeName("const JPH_ExtendedUpdateSettings *")] JPH_ExtendedUpdateSettings* settings, [NativeTypeName("JPH_ObjectLayer")] uint layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_IsStatic([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern void JPH_CharacterVirtual_RefreshContacts(JPH_CharacterVirtual* character, [NativeTypeName("JPH_ObjectLayer")] uint layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_IsKinematic([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern byte JPH_CharacterVirtual_CanWalkStairs(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* linearVelocity); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_IsDynamic([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern byte JPH_CharacterVirtual_WalkStairs(JPH_CharacterVirtual* character, float deltaTime, [NativeTypeName("const JPH_Vec3 *")] float3* stepUp, [NativeTypeName("const JPH_Vec3 *")] float3* stepForward, [NativeTypeName("const JPH_Vec3 *")] float3* stepForwardTest, [NativeTypeName("const JPH_Vec3 *")] float3* stepDownExtra, [NativeTypeName("JPH_ObjectLayer")] uint layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_CanBeKinematicOrDynamic([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern byte JPH_CharacterVirtual_StickToFloor(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* stepDown, [NativeTypeName("JPH_ObjectLayer")] uint layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetIsSensor(JPH_Body* body, [NativeTypeName("bool")] NativeBool value); + public static extern void JPH_CharacterVirtual_UpdateGroundVelocity(JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_IsSensor([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern byte JPH_CharacterVirtual_SetShape(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, float maxPenetrationDepth, [NativeTypeName("JPH_ObjectLayer")] uint layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetCollideKinematicVsNonDynamic(JPH_Body* body, [NativeTypeName("bool")] NativeBool value); + public static extern void JPH_CharacterVirtual_SetInnerBodyShape(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_GetCollideKinematicVsNonDynamic([NativeTypeName("const JPH_Body *")] JPH_Body* body); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_CharacterVirtual_GetNumActiveContacts(JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetUseManifoldReduction(JPH_Body* body, [NativeTypeName("bool")] NativeBool value); + public static extern void JPH_CharacterVirtual_GetActiveContact(JPH_CharacterVirtual* character, [NativeTypeName("uint32_t")] uint index, JPH_CharacterVirtualContact* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_GetUseManifoldReduction([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern byte JPH_CharacterVirtual_HasCollidedWithBody(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_BodyID")] uint body); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_GetUseManifoldReductionWithBody([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("const JPH_Body *")] JPH_Body* other); - - [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetApplyGyroscopicForce(JPH_Body* body, [NativeTypeName("bool")] NativeBool value); + public static extern byte JPH_CharacterVirtual_HasCollidedWith(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_CharacterID")] uint other); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_GetApplyGyroscopicForce([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern byte JPH_CharacterVirtual_HasCollidedWithCharacter(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_CharacterVirtual *")] JPH_CharacterVirtual* other); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetEnhancedInternalEdgeRemoval(JPH_Body* body, [NativeTypeName("bool")] NativeBool value); + public static extern void JPH_CharacterContactListener_SetProcs([NativeTypeName("const JPH_CharacterContactListener_Procs *")] JPH_CharacterContactListener_Procs* procs); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_GetEnhancedInternalEdgeRemoval([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern JPH_CharacterContactListener* JPH_CharacterContactListener_Create(void* userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_GetEnhancedInternalEdgeRemovalWithBody([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("const JPH_Body *")] JPH_Body* other); + public static extern void JPH_CharacterContactListener_Destroy(JPH_CharacterContactListener* listener); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_MotionType")] - public static extern MotionType JPH_Body_GetMotionType([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern void JPH_CharacterVsCharacterCollision_SetProcs([NativeTypeName("const JPH_CharacterVsCharacterCollision_Procs *")] JPH_CharacterVsCharacterCollision_Procs* procs); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetMotionType(JPH_Body* body, [NativeTypeName("JPH_MotionType")] MotionType motionType); + public static extern JPH_CharacterVsCharacterCollision* JPH_CharacterVsCharacterCollision_Create(void* userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_BroadPhaseLayer")] - public static extern BroadPhaseLayer JPH_Body_GetBroadPhaseLayer([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern JPH_CharacterVsCharacterCollision* JPH_CharacterVsCharacterCollision_CreateSimple(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_ObjectLayer")] - public static extern ObjectLayer JPH_Body_GetObjectLayer([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern void JPH_CharacterVsCharacterCollisionSimple_AddCharacter(JPH_CharacterVsCharacterCollision* characterVsCharacter, JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_GetAllowSleeping(JPH_Body* body); + public static extern void JPH_CharacterVsCharacterCollisionSimple_RemoveCharacter(JPH_CharacterVsCharacterCollision* characterVsCharacter, JPH_CharacterVirtual* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetAllowSleeping(JPH_Body* body, [NativeTypeName("bool")] NativeBool allowSleeping); + public static extern void JPH_CharacterVsCharacterCollision_Destroy(JPH_CharacterVsCharacterCollision* listener); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_ResetSleepTimer(JPH_Body* body); + [return: NativeTypeName("bool")] + public static extern byte JPH_CollisionDispatch_CollideShapeVsShape([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape1, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape2, [NativeTypeName("const JPH_Vec3 *")] float3* scale1, [NativeTypeName("const JPH_Vec3 *")] float3* scale2, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassTransform1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassTransform2, [NativeTypeName("const JPH_CollideShapeSettings *")] JPH_CollideShapeSettings* collideShapeSettings, [NativeTypeName("JPH_CollideShapeCollectorCallback *")] IntPtr callback, void* userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_Body_GetFriction([NativeTypeName("const JPH_Body *")] JPH_Body* body); + [return: NativeTypeName("bool")] + public static extern byte JPH_CollisionDispatch_CastShapeVsShapeLocalSpace([NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape1, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape2, [NativeTypeName("const JPH_Vec3 *")] float3* scale1InShape2LocalSpace, [NativeTypeName("const JPH_Vec3 *")] float3* scale2, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* centerOfMassTransform1InShape2LocalSpace, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* centerOfMassWorldTransform2, [NativeTypeName("const JPH_ShapeCastSettings *")] JPH_ShapeCastSettings* shapeCastSettings, [NativeTypeName("JPH_CastShapeCollectorCallback *")] IntPtr callback, void* userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetFriction(JPH_Body* body, float friction); + [return: NativeTypeName("bool")] + public static extern byte JPH_CollisionDispatch_CastShapeVsShapeWorldSpace([NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape1, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape2, [NativeTypeName("const JPH_Vec3 *")] float3* scale1, [NativeTypeName("const JPH_Vec3 *")] float3* inScale2, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassWorldTransform1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassWorldTransform2, [NativeTypeName("const JPH_ShapeCastSettings *")] JPH_ShapeCastSettings* shapeCastSettings, [NativeTypeName("JPH_CastShapeCollectorCallback *")] IntPtr callback, void* userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_Body_GetRestitution([NativeTypeName("const JPH_Body *")] JPH_Body* body); + public static extern void JPH_DebugRenderer_SetProcs([NativeTypeName("const JPH_DebugRenderer_Procs *")] JPH_DebugRenderer_Procs* procs); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetRestitution(JPH_Body* body, float restitution); + public static extern JPH_DebugRenderer* JPH_DebugRenderer_Create(void* userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetLinearVelocity(JPH_Body* body, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + public static extern void JPH_DebugRenderer_Destroy(JPH_DebugRenderer* renderer); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetLinearVelocity(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + public static extern void JPH_DebugRenderer_NextFrame(JPH_DebugRenderer* renderer); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetLinearVelocityClamped(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + public static extern void JPH_DebugRenderer_SetCameraPos(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* position); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetAngularVelocity(JPH_Body* body, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + public static extern void JPH_DebugRenderer_DrawLine(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* from, [NativeTypeName("const JPH_RVec3 *")] rvec3* to, [NativeTypeName("JPH_Color")] uint color); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetAngularVelocity(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + public static extern void JPH_DebugRenderer_DrawWireBox(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_Color")] uint color); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetAngularVelocityClamped(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + public static extern void JPH_DebugRenderer_DrawWireBox2(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_Color")] uint color); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetPointVelocityCOM(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* pointRelativeToCOM, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + public static extern void JPH_DebugRenderer_DrawMarker(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Color")] uint color, float size); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetPointVelocity(JPH_Body* body, [NativeTypeName("const JPH_RVec3 *")] rvec3* point, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + public static extern void JPH_DebugRenderer_DrawArrow(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* from, [NativeTypeName("const JPH_RVec3 *")] rvec3* to, [NativeTypeName("JPH_Color")] uint color, float size); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_AddForce(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* force); + public static extern void JPH_DebugRenderer_DrawCoordinateSystem(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float size); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_AddForceAtPosition(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* force, [NativeTypeName("const JPH_RVec3 *")] rvec3* position); + public static extern void JPH_DebugRenderer_DrawPlane(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* point, [NativeTypeName("const JPH_Vec3 *")] float3* normal, [NativeTypeName("JPH_Color")] uint color, float size); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_AddTorque(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* force); + public static extern void JPH_DebugRenderer_DrawWireTriangle(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* v1, [NativeTypeName("const JPH_RVec3 *")] rvec3* v2, [NativeTypeName("const JPH_RVec3 *")] rvec3* v3, [NativeTypeName("JPH_Color")] uint color); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetAccumulatedForce(JPH_Body* body, [NativeTypeName("JPH_Vec3 *")] float3* force); + public static extern void JPH_DebugRenderer_DrawWireSphere(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* center, float radius, [NativeTypeName("JPH_Color")] uint color, int level); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetAccumulatedTorque(JPH_Body* body, [NativeTypeName("JPH_Vec3 *")] float3* force); + public static extern void JPH_DebugRenderer_DrawWireUnitSphere(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, [NativeTypeName("JPH_Color")] uint color, int level); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_ResetForce(JPH_Body* body); + public static extern void JPH_DebugRenderer_DrawTriangle(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* v1, [NativeTypeName("const JPH_RVec3 *")] rvec3* v2, [NativeTypeName("const JPH_RVec3 *")] rvec3* v3, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_ResetTorque(JPH_Body* body); + public static extern void JPH_DebugRenderer_DrawBox(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_ResetMotion(JPH_Body* body); + public static extern void JPH_DebugRenderer_DrawBox2(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetInverseInertia(JPH_Body* body, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + public static extern void JPH_DebugRenderer_DrawSphere(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* center, float radius, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_AddImpulse(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* impulse); + public static extern void JPH_DebugRenderer_DrawUnitSphere(JPH_DebugRenderer* renderer, [NativeTypeName("JPH_RMatrix4x4")] rmatrix4x4 matrix, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_AddImpulseAtPosition(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* impulse, [NativeTypeName("const JPH_RVec3 *")] rvec3* position); + public static extern void JPH_DebugRenderer_DrawCapsule(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float halfHeightOfCylinder, float radius, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_AddAngularImpulse(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* angularImpulse); + public static extern void JPH_DebugRenderer_DrawCylinder(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float halfHeight, float radius, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_MoveKinematic(JPH_Body* body, [NativeTypeName("JPH_RVec3 *")] rvec3* targetPosition, [NativeTypeName("JPH_Quat *")] quaternion* targetRotation, float deltaTime); + public static extern void JPH_DebugRenderer_DrawOpenCone(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* top, [NativeTypeName("const JPH_Vec3 *")] float3* axis, [NativeTypeName("const JPH_Vec3 *")] float3* perpendicular, float halfAngle, float length, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_ApplyBuoyancyImpulse(JPH_Body* body, [NativeTypeName("const JPH_RVec3 *")] rvec3* surfacePosition, [NativeTypeName("const JPH_Vec3 *")] float3* surfaceNormal, float buoyancy, float linearDrag, float angularDrag, [NativeTypeName("const JPH_Vec3 *")] float3* fluidVelocity, [NativeTypeName("const JPH_Vec3 *")] float3* gravity, float deltaTime); + public static extern void JPH_DebugRenderer_DrawSwingConeLimits(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float swingYHalfAngle, float swingZHalfAngle, float edgeLength, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_IsInBroadPhase(JPH_Body* body); + public static extern void JPH_DebugRenderer_DrawSwingPyramidLimits(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float minSwingYAngle, float maxSwingYAngle, float minSwingZAngle, float maxSwingZAngle, float edgeLength, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Body_IsCollisionCacheInvalid(JPH_Body* body); + public static extern void JPH_DebugRenderer_DrawPie(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* center, float radius, [NativeTypeName("const JPH_Vec3 *")] float3* normal, [NativeTypeName("const JPH_Vec3 *")] float3* axis, float minAngle, float maxAngle, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_Shape *")] - public static extern JPH_Shape* JPH_Body_GetShape(JPH_Body* body); + public static extern void JPH_DebugRenderer_DrawTaperedCylinder(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* inMatrix, float top, float bottom, float topRadius, float bottomRadius, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetPosition([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + public static extern JPH_Skeleton* JPH_Skeleton_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetRotation([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_Quat *")] quaternion* result); + public static extern void JPH_Skeleton_Destroy(JPH_Skeleton* skeleton); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetWorldTransform([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Skeleton_AddJoint(JPH_Skeleton* skeleton, [NativeTypeName("const char *")] sbyte* name); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetCenterOfMassPosition([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Skeleton_AddJoint2(JPH_Skeleton* skeleton, [NativeTypeName("const char *")] sbyte* name, int parentIndex); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetCenterOfMassTransform([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Skeleton_AddJoint3(JPH_Skeleton* skeleton, [NativeTypeName("const char *")] sbyte* name, [NativeTypeName("const char *")] sbyte* parentName); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetInverseCenterOfMassTransform([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + public static extern int JPH_Skeleton_GetJointCount([NativeTypeName("const JPH_Skeleton *")] JPH_Skeleton* skeleton); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetWorldSpaceBounds([NativeTypeName("const JPH_Body *")] JPH_Body* body, JPH_AABox* result); + public static extern void JPH_Skeleton_GetJoint([NativeTypeName("const JPH_Skeleton *")] JPH_Skeleton* skeleton, int index, JPH_SkeletonJoint* joint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_GetWorldSpaceSurfaceNormal([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_SubShapeID")] uint subShapeID, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Vec3 *")] float3* normal); + public static extern int JPH_Skeleton_GetJointIndex([NativeTypeName("const JPH_Skeleton *")] JPH_Skeleton* skeleton, [NativeTypeName("const char *")] sbyte* name); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_MotionProperties* JPH_Body_GetMotionProperties(JPH_Body* body); + public static extern void JPH_Skeleton_CalculateParentJointIndices(JPH_Skeleton* skeleton); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_MotionProperties* JPH_Body_GetMotionPropertiesUnchecked(JPH_Body* body); + [return: NativeTypeName("bool")] + public static extern byte JPH_Skeleton_AreJointsCorrectlyOrdered([NativeTypeName("const JPH_Skeleton *")] JPH_Skeleton* skeleton); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Body_SetUserData(JPH_Body* body, [NativeTypeName("uint64_t")] ulong userData); + public static extern JPH_RagdollSettings* JPH_RagdollSettings_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("uint64_t")] - public static extern ulong JPH_Body_GetUserData(JPH_Body* body); + public static extern void JPH_RagdollSettings_Destroy(JPH_RagdollSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Body* JPH_Body_GetFixedToWorldBody(); + [return: NativeTypeName("const JPH_Skeleton *")] + public static extern JPH_Skeleton* JPH_RagdollSettings_GetSkeleton([NativeTypeName("const JPH_RagdollSettings *")] JPH_RagdollSettings* character); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BroadPhaseLayerFilter_SetProcs([NativeTypeName("const JPH_BroadPhaseLayerFilter_Procs *")] JPH_BroadPhaseLayerFilter_Procs* procs); + public static extern void JPH_RagdollSettings_SetSkeleton(JPH_RagdollSettings* character, JPH_Skeleton* skeleton); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BroadPhaseLayerFilter* JPH_BroadPhaseLayerFilter_Create([NativeTypeName("void*")] nint userData); + [return: NativeTypeName("bool")] + public static extern byte JPH_RagdollSettings_Stabilize(JPH_RagdollSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BroadPhaseLayerFilter_Destroy(JPH_BroadPhaseLayerFilter* filter); + public static extern void JPH_RagdollSettings_DisableParentChildCollisions(JPH_RagdollSettings* settings, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* jointMatrices, float minSeparationDistance); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ObjectLayerFilter_SetProcs([NativeTypeName("const JPH_ObjectLayerFilter_Procs *")] JPH_ObjectLayerFilter_Procs* procs); + public static extern void JPH_RagdollSettings_CalculateBodyIndexToConstraintIndex(JPH_RagdollSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ObjectLayerFilter* JPH_ObjectLayerFilter_Create([NativeTypeName("void*")] nint userData); + public static extern int JPH_RagdollSettings_GetConstraintIndexForBodyIndex(JPH_RagdollSettings* settings, int bodyIndex); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ObjectLayerFilter_Destroy(JPH_ObjectLayerFilter* filter); + public static extern void JPH_RagdollSettings_CalculateConstraintIndexToBodyIdxPair(JPH_RagdollSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyFilter_SetProcs([NativeTypeName("const JPH_BodyFilter_Procs *")] JPH_BodyFilter_Procs* procs); + public static extern JPH_Ragdoll* JPH_RagdollSettings_CreateRagdoll(JPH_RagdollSettings* settings, JPH_PhysicsSystem* system, [NativeTypeName("JPH_CollisionGroupID")] uint collisionGroup, [NativeTypeName("uint64_t")] ulong userData); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BodyFilter* JPH_BodyFilter_Create([NativeTypeName("void*")] nint userData); + public static extern void JPH_Ragdoll_Destroy(JPH_Ragdoll* ragdoll); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyFilter_Destroy(JPH_BodyFilter* filter); + public static extern void JPH_Ragdoll_AddToPhysicsSystem(JPH_Ragdoll* ragdoll, JPH_Activation activationMode, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ShapeFilter_SetProcs([NativeTypeName("const JPH_ShapeFilter_Procs *")] JPH_ShapeFilter_Procs* procs); + public static extern void JPH_Ragdoll_RemoveFromPhysicsSystem(JPH_Ragdoll* ragdoll, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ShapeFilter* JPH_ShapeFilter_Create([NativeTypeName("void*")] nint userData); + public static extern void JPH_Ragdoll_Activate(JPH_Ragdoll* ragdoll, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ShapeFilter_Destroy(JPH_ShapeFilter* filter); + [return: NativeTypeName("bool")] + public static extern byte JPH_Ragdoll_IsActive([NativeTypeName("const JPH_Ragdoll *")] JPH_Ragdoll* ragdoll, [NativeTypeName("bool")] byte lockBodies); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_BodyID")] - public static extern BodyID JPH_ShapeFilter_GetBodyID2(JPH_ShapeFilter* filter); + public static extern void JPH_Ragdoll_ResetWarmStart(JPH_Ragdoll* ragdoll); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ShapeFilter_SetBodyID2(JPH_ShapeFilter* filter, [NativeTypeName("JPH_BodyID")] BodyID id); + public static extern void JPH_EstimateCollisionResponse([NativeTypeName("const JPH_Body *")] JPH_Body* body1, [NativeTypeName("const JPH_Body *")] JPH_Body* body2, [NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold, float combinedFriction, float combinedRestitution, float minVelocityForRestitution, [NativeTypeName("uint32_t")] uint numIterations, JPH_CollisionEstimationResult* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SimShapeFilter_SetProcs([NativeTypeName("const JPH_SimShapeFilter_Procs *")] JPH_SimShapeFilter_Procs* procs); + public static extern void JPH_VehicleConstraintSettings_Init(JPH_VehicleConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_SimShapeFilter* JPH_SimShapeFilter_Create([NativeTypeName("void*")] nint userData); + public static extern JPH_VehicleConstraint* JPH_VehicleConstraint_Create(JPH_Body* body, [NativeTypeName("const JPH_VehicleConstraintSettings *")] JPH_VehicleConstraintSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_SimShapeFilter_Destroy(JPH_SimShapeFilter* filter); + public static extern JPH_PhysicsStepListener* JPH_VehicleConstraint_AsPhysicsStepListener(JPH_VehicleConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactListener_SetProcs([NativeTypeName("const JPH_ContactListener_Procs *")] JPH_ContactListener_Procs* procs); + public static extern void JPH_VehicleConstraint_SetMaxPitchRollAngle(JPH_VehicleConstraint* constraint, float maxPitchRollAngle); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_ContactListener* JPH_ContactListener_Create([NativeTypeName("void*")] nint userData); + public static extern void JPH_VehicleConstraint_SetVehicleCollisionTester(JPH_VehicleConstraint* constraint, [NativeTypeName("const JPH_VehicleCollisionTester *")] JPH_VehicleCollisionTester* tester); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactListener_Destroy(JPH_ContactListener* listener); + public static extern void JPH_VehicleConstraint_OverrideGravity(JPH_VehicleConstraint* constraint, [NativeTypeName("const JPH_Vec3 *")] float3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyActivationListener_SetProcs([NativeTypeName("const JPH_BodyActivationListener_Procs *")] JPH_BodyActivationListener_Procs* procs); + [return: NativeTypeName("bool")] + public static extern byte JPH_VehicleConstraint_IsGravityOverridden([NativeTypeName("const JPH_VehicleConstraint *")] JPH_VehicleConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BodyActivationListener* JPH_BodyActivationListener_Create([NativeTypeName("void*")] nint userData); + public static extern void JPH_VehicleConstraint_GetGravityOverride([NativeTypeName("const JPH_VehicleConstraint *")] JPH_VehicleConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyActivationListener_Destroy(JPH_BodyActivationListener* listener); + public static extern void JPH_VehicleConstraint_ResetGravityOverride(JPH_VehicleConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyDrawFilter_SetProcs([NativeTypeName("const JPH_BodyDrawFilter_Procs *")] JPH_BodyDrawFilter_Procs* procs); + public static extern void JPH_VehicleConstraint_GetLocalForward([NativeTypeName("const JPH_VehicleConstraint *")] JPH_VehicleConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_BodyDrawFilter* JPH_BodyDrawFilter_Create([NativeTypeName("void*")] nint userData); + public static extern void JPH_VehicleConstraint_GetLocalUp([NativeTypeName("const JPH_VehicleConstraint *")] JPH_VehicleConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_BodyDrawFilter_Destroy(JPH_BodyDrawFilter* filter); + public static extern void JPH_VehicleConstraint_GetWorldUp([NativeTypeName("const JPH_VehicleConstraint *")] JPH_VehicleConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactManifold_GetWorldSpaceNormal([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold, [NativeTypeName("JPH_Vec3 *")] float3* result); + [return: NativeTypeName("const JPH_Body *")] + public static extern JPH_Body* JPH_VehicleConstraint_GetVehicleBody([NativeTypeName("const JPH_VehicleConstraint *")] JPH_VehicleConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_ContactManifold_GetPenetrationDepth([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold); + public static extern JPH_VehicleController* JPH_VehicleConstraint_GetController(JPH_VehicleConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_SubShapeID")] - public static extern uint JPH_ContactManifold_GetSubShapeID1([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_VehicleConstraint_GetWheelsCount(JPH_VehicleConstraint* constraint); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_SubShapeID")] - public static extern uint JPH_ContactManifold_GetSubShapeID2([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold); + public static extern JPH_Wheel* JPH_VehicleConstraint_GetWheel(JPH_VehicleConstraint* constraint, [NativeTypeName("uint32_t")] uint index); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_ContactManifold_GetPointCount([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold); + public static extern void JPH_VehicleConstraint_GetWheelLocalBasis(JPH_VehicleConstraint* constraint, [NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel, [NativeTypeName("JPH_Vec3 *")] float3* outForward, [NativeTypeName("JPH_Vec3 *")] float3* outUp, [NativeTypeName("JPH_Vec3 *")] float3* outRight); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactManifold_GetWorldSpaceContactPointOn1([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold, uint index, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + public static extern void JPH_VehicleConstraint_GetWheelLocalTransform(JPH_VehicleConstraint* constraint, [NativeTypeName("uint32_t")] uint wheelIndex, [NativeTypeName("const JPH_Vec3 *")] float3* wheelRight, [NativeTypeName("const JPH_Vec3 *")] float3* wheelUp, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactManifold_GetWorldSpaceContactPointOn2([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold, uint index, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + public static extern void JPH_VehicleConstraint_GetWheelWorldTransform(JPH_VehicleConstraint* constraint, [NativeTypeName("uint32_t")] uint wheelIndex, [NativeTypeName("const JPH_Vec3 *")] float3* wheelRight, [NativeTypeName("const JPH_Vec3 *")] float3* wheelUp, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_ContactSettings_GetFriction(JPH_ContactSettings* settings); + public static extern JPH_WheelSettings* JPH_WheelSettings_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactSettings_SetFriction(JPH_ContactSettings* settings, float friction); + public static extern void JPH_WheelSettings_Destroy(JPH_WheelSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_ContactSettings_GetRestitution(JPH_ContactSettings* settings); + public static extern void JPH_WheelSettings_GetPosition([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactSettings_SetRestitution(JPH_ContactSettings* settings, float restitution); + public static extern void JPH_WheelSettings_SetPosition(JPH_WheelSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_ContactSettings_GetInvMassScale1(JPH_ContactSettings* settings); + public static extern void JPH_WheelSettings_GetSuspensionForcePoint([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactSettings_SetInvMassScale1(JPH_ContactSettings* settings, float scale); + public static extern void JPH_WheelSettings_SetSuspensionForcePoint(JPH_WheelSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_ContactSettings_GetInvInertiaScale1(JPH_ContactSettings* settings); + public static extern void JPH_WheelSettings_GetSuspensionDirection([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactSettings_SetInvInertiaScale1(JPH_ContactSettings* settings, float scale); + public static extern void JPH_WheelSettings_SetSuspensionDirection(JPH_WheelSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_ContactSettings_GetInvMassScale2(JPH_ContactSettings* settings); + public static extern void JPH_WheelSettings_GetSteeringAxis([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactSettings_SetInvMassScale2(JPH_ContactSettings* settings, float scale); + public static extern void JPH_WheelSettings_SetSteeringAxis(JPH_WheelSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_ContactSettings_GetInvInertiaScale2(JPH_ContactSettings* settings); + public static extern void JPH_WheelSettings_GetWheelUp([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactSettings_SetInvInertiaScale2(JPH_ContactSettings* settings, float scale); + public static extern void JPH_WheelSettings_SetWheelUp(JPH_WheelSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_ContactSettings_GetIsSensor([NativeTypeName("const JPH_ContactSettings *")] JPH_ContactSettings* settings); + public static extern void JPH_WheelSettings_GetWheelForward([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactSettings_SetIsSensor(JPH_ContactSettings* settings, [NativeTypeName("bool")] NativeBool sensor); + public static extern void JPH_WheelSettings_SetWheelForward(JPH_WheelSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactSettings_GetRelativeLinearSurfaceVelocity(JPH_ContactSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern float JPH_WheelSettings_GetSuspensionMinLength([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactSettings_SetRelativeLinearSurfaceVelocity(JPH_ContactSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + public static extern void JPH_WheelSettings_SetSuspensionMinLength(JPH_WheelSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactSettings_GetRelativeAngularSurfaceVelocity(JPH_ContactSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern float JPH_WheelSettings_GetSuspensionMaxLength([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_ContactSettings_SetRelativeAngularSurfaceVelocity(JPH_ContactSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + public static extern void JPH_WheelSettings_SetSuspensionMaxLength(JPH_WheelSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterBase_Destroy(JPH_CharacterBase* character); + public static extern float JPH_WheelSettings_GetSuspensionPreloadLength([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_CharacterBase_GetCosMaxSlopeAngle(JPH_CharacterBase* character); + public static extern void JPH_WheelSettings_SetSuspensionPreloadLength(JPH_WheelSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterBase_SetMaxSlopeAngle(JPH_CharacterBase* character, float maxSlopeAngle); + public static extern void JPH_WheelSettings_GetSuspensionSpring([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, JPH_SpringSettings* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterBase_GetUp(JPH_CharacterBase* character, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_WheelSettings_SetSuspensionSpring(JPH_WheelSettings* settings, JPH_SpringSettings* springSettings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterBase_SetUp(JPH_CharacterBase* character, [NativeTypeName("const JPH_Vec3 *")] float3* value); + public static extern float JPH_WheelSettings_GetRadius([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CharacterBase_IsSlopeTooSteep(JPH_CharacterBase* character, [NativeTypeName("const JPH_Vec3 *")] float3* value); + public static extern void JPH_WheelSettings_SetRadius(JPH_WheelSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_Shape *")] - public static extern JPH_Shape* JPH_CharacterBase_GetShape(JPH_CharacterBase* character); + public static extern float JPH_WheelSettings_GetWidth([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_GroundState")] - public static extern GroundState JPH_CharacterBase_GetGroundState(JPH_CharacterBase* character); + public static extern void JPH_WheelSettings_SetWidth(JPH_WheelSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CharacterBase_IsSupported(JPH_CharacterBase* character); + public static extern byte JPH_WheelSettings_GetEnableSuspensionForcePoint([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterBase_GetGroundPosition(JPH_CharacterBase* character, [NativeTypeName("JPH_RVec3 *")] rvec3* position); + public static extern void JPH_WheelSettings_SetEnableSuspensionForcePoint(JPH_WheelSettings* settings, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterBase_GetGroundNormal(JPH_CharacterBase* character, [NativeTypeName("JPH_Vec3 *")] float3* normal); + public static extern JPH_Wheel* JPH_Wheel_Create([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterBase_GetGroundVelocity(JPH_CharacterBase* character, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + public static extern void JPH_Wheel_Destroy(JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_PhysicsMaterial *")] - public static extern JPH_PhysicsMaterial* JPH_CharacterBase_GetGroundMaterial(JPH_CharacterBase* character); + [return: NativeTypeName("const JPH_WheelSettings *")] + public static extern JPH_WheelSettings* JPH_Wheel_GetSettings([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_BodyID")] - public static extern BodyID JPH_CharacterBase_GetGroundBodyId(JPH_CharacterBase* character); + public static extern float JPH_Wheel_GetAngularVelocity([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_SubShapeID")] - public static extern uint JPH_CharacterBase_GetGroundSubShapeId(JPH_CharacterBase* character); + public static extern void JPH_Wheel_SetAngularVelocity(JPH_Wheel* wheel, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("uint64_t")] - public static extern ulong JPH_CharacterBase_GetGroundUserData(JPH_CharacterBase* character); + public static extern float JPH_Wheel_GetRotationAngle([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterSettings_Init(JPH_CharacterSettings* settings); + public static extern void JPH_Wheel_SetRotationAngle(JPH_Wheel* wheel, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Character* JPH_Character_Create([NativeTypeName("const JPH_CharacterSettings *")] JPH_CharacterSettings* settings, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("uint64_t")] ulong userData, JPH_PhysicsSystem* system); + public static extern float JPH_Wheel_GetSteerAngle([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_AddToPhysicsSystem(JPH_Character* character, [NativeTypeName("JPH_Activation")] Activation activationMode, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern void JPH_Wheel_SetSteerAngle(JPH_Wheel* wheel, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_RemoveFromPhysicsSystem(JPH_Character* character, [NativeTypeName("bool")] NativeBool lockBodies); + [return: NativeTypeName("bool")] + public static extern byte JPH_Wheel_HasContact([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_Activate(JPH_Character* character, [NativeTypeName("bool")] NativeBool lockBodies); + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_Wheel_GetContactBodyID([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_PostSimulation(JPH_Character* character, float maxSeparationDistance, [NativeTypeName("bool")] NativeBool lockBodies); + [return: NativeTypeName("JPH_SubShapeID")] + public static extern uint JPH_Wheel_GetContactSubShapeID([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_SetLinearAndAngularVelocity(JPH_Character* character, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern void JPH_Wheel_GetContactPosition([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel, [NativeTypeName("JPH_RVec3 *")] rvec3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_GetLinearVelocity(JPH_Character* character, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern void JPH_Wheel_GetContactPointVelocity([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_SetLinearVelocity(JPH_Character* character, [NativeTypeName("const JPH_Vec3 *")] float3* value, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern void JPH_Wheel_GetContactNormal([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_AddLinearVelocity(JPH_Character* character, [NativeTypeName("const JPH_Vec3 *")] float3* value, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern void JPH_Wheel_GetContactLongitudinal([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_AddImpulse(JPH_Character* character, [NativeTypeName("const JPH_Vec3 *")] float3* value, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern void JPH_Wheel_GetContactLateral([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel, [NativeTypeName("JPH_Vec3 *")] float3* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_BodyID")] - public static extern BodyID JPH_Character_GetBodyID([NativeTypeName("const JPH_Character *")] JPH_Character* character); + public static extern float JPH_Wheel_GetSuspensionLength([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_GetPositionAndRotation(JPH_Character* character, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern float JPH_Wheel_GetSuspensionLambda([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_SetPositionAndRotation(JPH_Character* character, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("JPH_Activation")] Activation activationMode, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern float JPH_Wheel_GetLongitudinalLambda([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_GetPosition(JPH_Character* character, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern float JPH_Wheel_GetLateralLambda([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_SetPosition(JPH_Character* character, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Activation")] Activation activationMode, [NativeTypeName("bool")] NativeBool lockBodies); + [return: NativeTypeName("bool")] + public static extern byte JPH_Wheel_HasHitHardPoint([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_GetRotation(JPH_Character* character, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern void JPH_VehicleAntiRollBar_Init(JPH_VehicleAntiRollBar* antiRollBar); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_SetRotation(JPH_Character* character, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("JPH_Activation")] Activation activationMode, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern void JPH_VehicleEngineSettings_Init(JPH_VehicleEngineSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_GetCenterOfMassPosition(JPH_Character* character, [NativeTypeName("JPH_RVec3 *")] rvec3* result, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern void JPH_VehicleDifferentialSettings_Init(JPH_VehicleDifferentialSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_GetWorldTransform(JPH_Character* character, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern JPH_VehicleTransmissionSettings* JPH_VehicleTransmissionSettings_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_ObjectLayer")] - public static extern ObjectLayer JPH_Character_GetLayer([NativeTypeName("const JPH_Character *")] JPH_Character* character); + public static extern void JPH_VehicleTransmissionSettings_Destroy(JPH_VehicleTransmissionSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_SetLayer(JPH_Character* character, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer value, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern JPH_TransmissionMode JPH_VehicleTransmissionSettings_GetMode([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Character_SetShape(JPH_Character* character, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, float maxPenetrationDepth, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern void JPH_VehicleTransmissionSettings_SetMode(JPH_VehicleTransmissionSettings* settings, JPH_TransmissionMode value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtualSettings_Init(JPH_CharacterVirtualSettings* settings); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_VehicleTransmissionSettings_GetGearRatioCount([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_CharacterVirtual* JPH_CharacterVirtual_Create([NativeTypeName("const JPH_CharacterVirtualSettings *")] JPH_CharacterVirtualSettings* settings, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("uint64_t")] ulong userData, JPH_PhysicsSystem* system); + public static extern float JPH_VehicleTransmissionSettings_GetGearRatio([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings, [NativeTypeName("uint32_t")] uint index); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_CharacterID")] - public static extern uint JPH_CharacterVirtual_GetID([NativeTypeName("const JPH_CharacterVirtual *")] JPH_CharacterVirtual* character); + public static extern void JPH_VehicleTransmissionSettings_SetGearRatio(JPH_VehicleTransmissionSettings* settings, [NativeTypeName("uint32_t")] uint index, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetListener(JPH_CharacterVirtual* character, JPH_CharacterContactListener* listener); + [return: NativeTypeName("const float *")] + public static extern float* JPH_VehicleTransmissionSettings_GetGearRatios([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetCharacterVsCharacterCollision(JPH_CharacterVirtual* character, JPH_CharacterVsCharacterCollision* characterVsCharacterCollision); + public static extern void JPH_VehicleTransmissionSettings_SetGearRatios(JPH_VehicleTransmissionSettings* settings, [NativeTypeName("const float *")] float* values, [NativeTypeName("uint32_t")] uint count); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_GetLinearVelocity(JPH_CharacterVirtual* character, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_VehicleTransmissionSettings_GetReverseGearRatioCount([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetLinearVelocity(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + public static extern float JPH_VehicleTransmissionSettings_GetReverseGearRatio([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings, [NativeTypeName("uint32_t")] uint index); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_GetPosition(JPH_CharacterVirtual* character, [NativeTypeName("JPH_RVec3 *")] rvec3* position); + public static extern void JPH_VehicleTransmissionSettings_SetReverseGearRatio(JPH_VehicleTransmissionSettings* settings, [NativeTypeName("uint32_t")] uint index, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetPosition(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_RVec3 *")] rvec3* position); + [return: NativeTypeName("const float *")] + public static extern float* JPH_VehicleTransmissionSettings_GetReverseGearRatios([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_GetRotation(JPH_CharacterVirtual* character, [NativeTypeName("JPH_Quat *")] quaternion* rotation); + public static extern void JPH_VehicleTransmissionSettings_SetReverseGearRatios(JPH_VehicleTransmissionSettings* settings, [NativeTypeName("const float *")] float* values, [NativeTypeName("uint32_t")] uint count); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetRotation(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Quat *")] quaternion* rotation); + public static extern float JPH_VehicleTransmissionSettings_GetSwitchTime([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_GetWorldTransform(JPH_CharacterVirtual* character, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + public static extern void JPH_VehicleTransmissionSettings_SetSwitchTime(JPH_VehicleTransmissionSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_GetCenterOfMassTransform(JPH_CharacterVirtual* character, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + public static extern float JPH_VehicleTransmissionSettings_GetClutchReleaseTime([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_CharacterVirtual_GetMass(JPH_CharacterVirtual* character); + public static extern void JPH_VehicleTransmissionSettings_SetClutchReleaseTime(JPH_VehicleTransmissionSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetMass(JPH_CharacterVirtual* character, float value); + public static extern float JPH_VehicleTransmissionSettings_GetSwitchLatency([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_CharacterVirtual_GetMaxStrength(JPH_CharacterVirtual* character); + public static extern void JPH_VehicleTransmissionSettings_SetSwitchLatency(JPH_VehicleTransmissionSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetMaxStrength(JPH_CharacterVirtual* character, float value); + public static extern float JPH_VehicleTransmissionSettings_GetShiftUpRPM([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_CharacterVirtual_GetPenetrationRecoverySpeed(JPH_CharacterVirtual* character); + public static extern void JPH_VehicleTransmissionSettings_SetShiftUpRPM(JPH_VehicleTransmissionSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetPenetrationRecoverySpeed(JPH_CharacterVirtual* character, float value); + public static extern float JPH_VehicleTransmissionSettings_GetShiftDownRPM([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CharacterVirtual_GetEnhancedInternalEdgeRemoval(JPH_CharacterVirtual* character); + public static extern void JPH_VehicleTransmissionSettings_SetShiftDownRPM(JPH_VehicleTransmissionSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetEnhancedInternalEdgeRemoval(JPH_CharacterVirtual* character, [NativeTypeName("bool")] NativeBool value); + public static extern float JPH_VehicleTransmissionSettings_GetClutchStrength([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_CharacterVirtual_GetCharacterPadding(JPH_CharacterVirtual* character); + public static extern void JPH_VehicleTransmissionSettings_SetClutchStrength(JPH_VehicleTransmissionSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_CharacterVirtual_GetMaxNumHits(JPH_CharacterVirtual* character); + public static extern void JPH_VehicleCollisionTester_Destroy(JPH_VehicleCollisionTester* tester); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetMaxNumHits(JPH_CharacterVirtual* character, uint value); + [return: NativeTypeName("JPH_ObjectLayer")] + public static extern uint JPH_VehicleCollisionTester_GetObjectLayer([NativeTypeName("const JPH_VehicleCollisionTester *")] JPH_VehicleCollisionTester* tester); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern float JPH_CharacterVirtual_GetHitReductionCosMaxAngle(JPH_CharacterVirtual* character); + public static extern void JPH_VehicleCollisionTester_SetObjectLayer(JPH_VehicleCollisionTester* tester, [NativeTypeName("JPH_ObjectLayer")] uint value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetHitReductionCosMaxAngle(JPH_CharacterVirtual* character, float value); + public static extern JPH_VehicleCollisionTesterRay* JPH_VehicleCollisionTesterRay_Create([NativeTypeName("JPH_ObjectLayer")] uint layer, [NativeTypeName("const JPH_Vec3 *")] float3* up, float maxSlopeAngle); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CharacterVirtual_GetMaxHitsExceeded(JPH_CharacterVirtual* character); + public static extern JPH_VehicleCollisionTesterCastSphere* JPH_VehicleCollisionTesterCastSphere_Create([NativeTypeName("JPH_ObjectLayer")] uint layer, float radius, [NativeTypeName("const JPH_Vec3 *")] float3* up, float maxSlopeAngle); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_GetShapeOffset(JPH_CharacterVirtual* character, [NativeTypeName("JPH_Vec3 *")] float3* result); + public static extern JPH_VehicleCollisionTesterCastCylinder* JPH_VehicleCollisionTesterCastCylinder_Create([NativeTypeName("JPH_ObjectLayer")] uint layer, float convexRadiusFraction); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetShapeOffset(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* value); + public static extern void JPH_VehicleControllerSettings_Destroy(JPH_VehicleControllerSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("uint64_t")] - public static extern ulong JPH_CharacterVirtual_GetUserData([NativeTypeName("const JPH_CharacterVirtual *")] JPH_CharacterVirtual* character); + [return: NativeTypeName("const JPH_VehicleConstraint *")] + public static extern JPH_VehicleConstraint* JPH_VehicleController_GetConstraint(JPH_VehicleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetUserData(JPH_CharacterVirtual* character, [NativeTypeName("uint64_t")] ulong value); + public static extern JPH_WheelSettingsWV* JPH_WheelSettingsWV_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("JPH_BodyID")] - public static extern BodyID JPH_CharacterVirtual_GetInnerBodyID([NativeTypeName("const JPH_CharacterVirtual *")] JPH_CharacterVirtual* character); + public static extern float JPH_WheelSettingsWV_GetInertia([NativeTypeName("const JPH_WheelSettingsWV *")] JPH_WheelSettingsWV* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_CancelVelocityTowardsSteepSlopes(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* desiredVelocity, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + public static extern void JPH_WheelSettingsWV_SetInertia(JPH_WheelSettingsWV* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_StartTrackingContactChanges(JPH_CharacterVirtual* character); + public static extern float JPH_WheelSettingsWV_GetAngularDamping([NativeTypeName("const JPH_WheelSettingsWV *")] JPH_WheelSettingsWV* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_FinishTrackingContactChanges(JPH_CharacterVirtual* character); + public static extern void JPH_WheelSettingsWV_SetAngularDamping(JPH_WheelSettingsWV* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_Update(JPH_CharacterVirtual* character, float deltaTime, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern float JPH_WheelSettingsWV_GetMaxSteerAngle([NativeTypeName("const JPH_WheelSettingsWV *")] JPH_WheelSettingsWV* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_ExtendedUpdate(JPH_CharacterVirtual* character, float deltaTime, [NativeTypeName("const JPH_ExtendedUpdateSettings *")] JPH_ExtendedUpdateSettings* settings, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern void JPH_WheelSettingsWV_SetMaxSteerAngle(JPH_WheelSettingsWV* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_RefreshContacts(JPH_CharacterVirtual* character, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern float JPH_WheelSettingsWV_GetMaxBrakeTorque([NativeTypeName("const JPH_WheelSettingsWV *")] JPH_WheelSettingsWV* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CharacterVirtual_CanWalkStairs(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* linearVelocity); + public static extern void JPH_WheelSettingsWV_SetMaxBrakeTorque(JPH_WheelSettingsWV* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CharacterVirtual_WalkStairs(JPH_CharacterVirtual* character, float deltaTime, [NativeTypeName("const JPH_Vec3 *")] float3* stepUp, [NativeTypeName("const JPH_Vec3 *")] float3* stepForward, [NativeTypeName("const JPH_Vec3 *")] float3* stepForwardTest, [NativeTypeName("const JPH_Vec3 *")] float3* stepDownExtra, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern float JPH_WheelSettingsWV_GetMaxHandBrakeTorque([NativeTypeName("const JPH_WheelSettingsWV *")] JPH_WheelSettingsWV* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CharacterVirtual_StickToFloor(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* stepDown, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern void JPH_WheelSettingsWV_SetMaxHandBrakeTorque(JPH_WheelSettingsWV* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_UpdateGroundVelocity(JPH_CharacterVirtual* character); + public static extern JPH_WheelWV* JPH_WheelWV_Create([NativeTypeName("const JPH_WheelSettingsWV *")] JPH_WheelSettingsWV* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CharacterVirtual_SetShape(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, float maxPenetrationDepth, [NativeTypeName("JPH_ObjectLayer")] ObjectLayer layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + [return: NativeTypeName("const JPH_WheelSettingsWV *")] + public static extern JPH_WheelSettingsWV* JPH_WheelWV_GetSettings([NativeTypeName("const JPH_WheelWV *")] JPH_WheelWV* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_SetInnerBodyShape(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + public static extern void JPH_WheelWV_ApplyTorque(JPH_WheelWV* wheel, float torque, float deltaTime); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_CharacterVirtual_GetNumActiveContacts(JPH_CharacterVirtual* character); + public static extern JPH_WheeledVehicleControllerSettings* JPH_WheeledVehicleControllerSettings_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVirtual_GetActiveContact(JPH_CharacterVirtual* character, uint index, JPH_CharacterVirtualContact* result); + public static extern void JPH_WheeledVehicleControllerSettings_GetEngine([NativeTypeName("const JPH_WheeledVehicleControllerSettings *")] JPH_WheeledVehicleControllerSettings* settings, JPH_VehicleEngineSettings* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CharacterVirtual_HasCollidedWithBody(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_BodyID")] BodyID body); + public static extern void JPH_WheeledVehicleControllerSettings_SetEngine(JPH_WheeledVehicleControllerSettings* settings, [NativeTypeName("const JPH_VehicleEngineSettings *")] JPH_VehicleEngineSettings* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CharacterVirtual_HasCollidedWith(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_CharacterID")] uint other); + [return: NativeTypeName("const JPH_VehicleTransmissionSettings *")] + public static extern JPH_VehicleTransmissionSettings* JPH_WheeledVehicleControllerSettings_GetTransmission([NativeTypeName("const JPH_WheeledVehicleControllerSettings *")] JPH_WheeledVehicleControllerSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CharacterVirtual_HasCollidedWithCharacter(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_CharacterVirtual *")] JPH_CharacterVirtual* other); + public static extern void JPH_WheeledVehicleControllerSettings_SetTransmission(JPH_WheeledVehicleControllerSettings* settings, [NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterContactListener_SetProcs([NativeTypeName("const JPH_CharacterContactListener_Procs *")] JPH_CharacterContactListener_Procs* procs); + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_WheeledVehicleControllerSettings_GetDifferentialsCount([NativeTypeName("const JPH_WheeledVehicleControllerSettings *")] JPH_WheeledVehicleControllerSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_CharacterContactListener* JPH_CharacterContactListener_Create([NativeTypeName("void*")] nint userData); + public static extern void JPH_WheeledVehicleControllerSettings_SetDifferentialsCount(JPH_WheeledVehicleControllerSettings* settings, [NativeTypeName("uint32_t")] uint count); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterContactListener_Destroy(JPH_CharacterContactListener* listener); + public static extern void JPH_WheeledVehicleControllerSettings_GetDifferential([NativeTypeName("const JPH_WheeledVehicleControllerSettings *")] JPH_WheeledVehicleControllerSettings* settings, [NativeTypeName("uint32_t")] uint index, JPH_VehicleDifferentialSettings* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVsCharacterCollision_SetProcs([NativeTypeName("const JPH_CharacterVsCharacterCollision_Procs *")] JPH_CharacterVsCharacterCollision_Procs* procs); + public static extern void JPH_WheeledVehicleControllerSettings_SetDifferential(JPH_WheeledVehicleControllerSettings* settings, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("const JPH_VehicleDifferentialSettings *")] JPH_VehicleDifferentialSettings* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_CharacterVsCharacterCollision* JPH_CharacterVsCharacterCollision_Create([NativeTypeName("void*")] nint userData); + public static extern void JPH_WheeledVehicleControllerSettings_SetDifferentials(JPH_WheeledVehicleControllerSettings* settings, [NativeTypeName("const JPH_VehicleDifferentialSettings *")] JPH_VehicleDifferentialSettings* values, [NativeTypeName("uint32_t")] uint count); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_CharacterVsCharacterCollision* JPH_CharacterVsCharacterCollision_CreateSimple(); + public static extern float JPH_WheeledVehicleControllerSettings_GetDifferentialLimitedSlipRatio([NativeTypeName("const JPH_WheeledVehicleControllerSettings *")] JPH_WheeledVehicleControllerSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVsCharacterCollisionSimple_AddCharacter(JPH_CharacterVsCharacterCollision* characterVsCharacter, JPH_CharacterVirtual* character); + public static extern void JPH_WheeledVehicleControllerSettings_SetDifferentialLimitedSlipRatio(JPH_WheeledVehicleControllerSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVsCharacterCollisionSimple_RemoveCharacter(JPH_CharacterVsCharacterCollision* characterVsCharacter, JPH_CharacterVirtual* character); + public static extern void JPH_WheeledVehicleController_SetDriverInput(JPH_WheeledVehicleController* controller, float forward, float right, float brake, float handBrake); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_CharacterVsCharacterCollision_Destroy(JPH_CharacterVsCharacterCollision* listener); + public static extern void JPH_WheeledVehicleController_SetForwardInput(JPH_WheeledVehicleController* controller, float forward); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CollisionDispatch_CollideShapeVsShape([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape1, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape2, [NativeTypeName("const JPH_Vec3 *")] float3* scale1, [NativeTypeName("const JPH_Vec3 *")] float3* scale2, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassTransform1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassTransform2, [NativeTypeName("const JPH_CollideShapeSettings *")] JPH_CollideShapeSettings* collideShapeSettings, [NativeTypeName("JPH_CollideShapeCollectorCallback *")] nint callback, [NativeTypeName("void*")] nint userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern float JPH_WheeledVehicleController_GetForwardInput([NativeTypeName("const JPH_WheeledVehicleController *")] JPH_WheeledVehicleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CollisionDispatch_CastShapeVsShapeLocalSpace([NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape1, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape2, [NativeTypeName("const JPH_Vec3 *")] float3* scale1InShape2LocalSpace, [NativeTypeName("const JPH_Vec3 *")] float3* scale2, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* centerOfMassTransform1InShape2LocalSpace, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* centerOfMassWorldTransform2, [NativeTypeName("const JPH_ShapeCastSettings *")] JPH_ShapeCastSettings* shapeCastSettings, [NativeTypeName("JPH_CastShapeCollectorCallback *")] nint callback, [NativeTypeName("void*")] nint userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern void JPH_WheeledVehicleController_SetRightInput(JPH_WheeledVehicleController* controller, float rightRatio); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_CollisionDispatch_CastShapeVsShapeWorldSpace([NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape1, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape2, [NativeTypeName("const JPH_Vec3 *")] float3* scale1, [NativeTypeName("const JPH_Vec3 *")] float3* inScale2, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassWorldTransform1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassWorldTransform2, [NativeTypeName("const JPH_ShapeCastSettings *")] JPH_ShapeCastSettings* shapeCastSettings, [NativeTypeName("JPH_CastShapeCollectorCallback *")] nint callback, [NativeTypeName("void*")] nint userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + public static extern float JPH_WheeledVehicleController_GetRightInput([NativeTypeName("const JPH_WheeledVehicleController *")] JPH_WheeledVehicleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_SetProcs([NativeTypeName("const JPH_DebugRenderer_Procs *")] JPH_DebugRenderer_Procs* procs); + public static extern void JPH_WheeledVehicleController_SetBrakeInput(JPH_WheeledVehicleController* controller, float brakeInput); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_DebugRenderer* JPH_DebugRenderer_Create([NativeTypeName("void*")] nint userData); + public static extern float JPH_WheeledVehicleController_GetBrakeInput([NativeTypeName("const JPH_WheeledVehicleController *")] JPH_WheeledVehicleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_Destroy(JPH_DebugRenderer* renderer); + public static extern void JPH_WheeledVehicleController_SetHandBrakeInput(JPH_WheeledVehicleController* controller, float handBrakeInput); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_NextFrame(JPH_DebugRenderer* renderer); + public static extern float JPH_WheeledVehicleController_GetHandBrakeInput([NativeTypeName("const JPH_WheeledVehicleController *")] JPH_WheeledVehicleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_SetCameraPos(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* position); + public static extern float JPH_WheeledVehicleController_GetWheelSpeedAtClutch([NativeTypeName("const JPH_WheeledVehicleController *")] JPH_WheeledVehicleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawLine(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* from, [NativeTypeName("const JPH_RVec3 *")] rvec3* to, [NativeTypeName("JPH_Color")] uint color); + public static extern JPH_WheelSettingsTV* JPH_WheelSettingsTV_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawWireBox(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_Color")] uint color); + public static extern float JPH_WheelSettingsTV_GetLongitudinalFriction([NativeTypeName("const JPH_WheelSettingsTV *")] JPH_WheelSettingsTV* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawWireBox2(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_Color")] uint color); + public static extern void JPH_WheelSettingsTV_SetLongitudinalFriction(JPH_WheelSettingsTV* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawMarker(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Color")] uint color, float size); + public static extern float JPH_WheelSettingsTV_GetLateralFriction([NativeTypeName("const JPH_WheelSettingsTV *")] JPH_WheelSettingsTV* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawArrow(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* from, [NativeTypeName("const JPH_RVec3 *")] rvec3* to, [NativeTypeName("JPH_Color")] uint color, float size); + public static extern void JPH_WheelSettingsTV_SetLateralFriction(JPH_WheelSettingsTV* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawCoordinateSystem(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float size); + public static extern JPH_WheelTV* JPH_WheelTV_Create([NativeTypeName("const JPH_WheelSettingsTV *")] JPH_WheelSettingsTV* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawPlane(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* point, [NativeTypeName("const JPH_Vec3 *")] float3* normal, [NativeTypeName("JPH_Color")] uint color, float size); + [return: NativeTypeName("const JPH_WheelSettingsTV *")] + public static extern JPH_WheelSettingsTV* JPH_WheelTV_GetSettings([NativeTypeName("const JPH_WheelTV *")] JPH_WheelTV* wheel); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawWireTriangle(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* v1, [NativeTypeName("const JPH_RVec3 *")] rvec3* v2, [NativeTypeName("const JPH_RVec3 *")] rvec3* v3, [NativeTypeName("JPH_Color")] uint color); + public static extern JPH_TrackedVehicleControllerSettings* JPH_TrackedVehicleControllerSettings_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawWireSphere(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* center, float radius, [NativeTypeName("JPH_Color")] uint color, int level); + public static extern void JPH_TrackedVehicleControllerSettings_GetEngine([NativeTypeName("const JPH_TrackedVehicleControllerSettings *")] JPH_TrackedVehicleControllerSettings* settings, JPH_VehicleEngineSettings* result); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawWireUnitSphere(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, [NativeTypeName("JPH_Color")] uint color, int level); + public static extern void JPH_TrackedVehicleControllerSettings_SetEngine(JPH_TrackedVehicleControllerSettings* settings, [NativeTypeName("const JPH_VehicleEngineSettings *")] JPH_VehicleEngineSettings* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawTriangle(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* v1, [NativeTypeName("const JPH_RVec3 *")] rvec3* v2, [NativeTypeName("const JPH_RVec3 *")] rvec3* v3, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow); + [return: NativeTypeName("const JPH_VehicleTransmissionSettings *")] + public static extern JPH_VehicleTransmissionSettings* JPH_TrackedVehicleControllerSettings_GetTransmission([NativeTypeName("const JPH_TrackedVehicleControllerSettings *")] JPH_TrackedVehicleControllerSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawBox(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + public static extern void JPH_TrackedVehicleControllerSettings_SetTransmission(JPH_TrackedVehicleControllerSettings* settings, [NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawBox2(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + public static extern void JPH_TrackedVehicleController_SetDriverInput(JPH_TrackedVehicleController* controller, float forward, float leftRatio, float rightRatio, float brake); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawSphere(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* center, float radius, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + public static extern float JPH_TrackedVehicleController_GetForwardInput([NativeTypeName("const JPH_TrackedVehicleController *")] JPH_TrackedVehicleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawUnitSphere(JPH_DebugRenderer* renderer, [NativeTypeName("JPH_RMatrix4x4")] rmatrix4x4 matrix, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + public static extern void JPH_TrackedVehicleController_SetForwardInput(JPH_TrackedVehicleController* controller, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawCapsule(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float halfHeightOfCylinder, float radius, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + public static extern float JPH_TrackedVehicleController_GetLeftRatio([NativeTypeName("const JPH_TrackedVehicleController *")] JPH_TrackedVehicleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawCylinder(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float halfHeight, float radius, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + public static extern void JPH_TrackedVehicleController_SetLeftRatio(JPH_TrackedVehicleController* controller, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawOpenCone(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* top, [NativeTypeName("const JPH_Vec3 *")] float3* axis, [NativeTypeName("const JPH_Vec3 *")] float3* perpendicular, float halfAngle, float length, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + public static extern float JPH_TrackedVehicleController_GetRightRatio([NativeTypeName("const JPH_TrackedVehicleController *")] JPH_TrackedVehicleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawSwingConeLimits(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float swingYHalfAngle, float swingZHalfAngle, float edgeLength, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + public static extern void JPH_TrackedVehicleController_SetRightRatio(JPH_TrackedVehicleController* controller, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawSwingPyramidLimits(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float minSwingYAngle, float maxSwingYAngle, float minSwingZAngle, float maxSwingZAngle, float edgeLength, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + public static extern float JPH_TrackedVehicleController_GetBrakeInput([NativeTypeName("const JPH_TrackedVehicleController *")] JPH_TrackedVehicleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawPie(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* center, float radius, [NativeTypeName("const JPH_Vec3 *")] float3* normal, [NativeTypeName("const JPH_Vec3 *")] float3* axis, float minAngle, float maxAngle, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + public static extern void JPH_TrackedVehicleController_SetBrakeInput(JPH_TrackedVehicleController* controller, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_DebugRenderer_DrawTaperedCylinder(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* inMatrix, float top, float bottom, float topRadius, float bottomRadius, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + public static extern JPH_MotorcycleControllerSettings* JPH_MotorcycleControllerSettings_Create(); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Skeleton* JPH_Skeleton_Create(); + public static extern float JPH_MotorcycleControllerSettings_GetMaxLeanAngle([NativeTypeName("const JPH_MotorcycleControllerSettings *")] JPH_MotorcycleControllerSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Skeleton_Destroy(JPH_Skeleton* skeleton); + public static extern void JPH_MotorcycleControllerSettings_SetMaxLeanAngle(JPH_MotorcycleControllerSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_Skeleton_AddJoint(JPH_Skeleton* skeleton, [NativeTypeName("const char *")] sbyte* name); + public static extern float JPH_MotorcycleControllerSettings_GetLeanSpringConstant([NativeTypeName("const JPH_MotorcycleControllerSettings *")] JPH_MotorcycleControllerSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_Skeleton_AddJoint2(JPH_Skeleton* skeleton, [NativeTypeName("const char *")] sbyte* name, int parentIndex); + public static extern void JPH_MotorcycleControllerSettings_SetLeanSpringConstant(JPH_MotorcycleControllerSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern uint JPH_Skeleton_AddJoint3(JPH_Skeleton* skeleton, [NativeTypeName("const char *")] sbyte* name, [NativeTypeName("const char *")] sbyte* parentName); + public static extern float JPH_MotorcycleControllerSettings_GetLeanSpringDamping([NativeTypeName("const JPH_MotorcycleControllerSettings *")] JPH_MotorcycleControllerSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern int JPH_Skeleton_GetJointCount([NativeTypeName("const JPH_Skeleton *")] JPH_Skeleton* skeleton); + public static extern void JPH_MotorcycleControllerSettings_SetLeanSpringDamping(JPH_MotorcycleControllerSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Skeleton_GetJoint([NativeTypeName("const JPH_Skeleton *")] JPH_Skeleton* skeleton, int index, JPH_SkeletonJoint* joint); + public static extern float JPH_MotorcycleControllerSettings_GetLeanSpringIntegrationCoefficient([NativeTypeName("const JPH_MotorcycleControllerSettings *")] JPH_MotorcycleControllerSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern int JPH_Skeleton_GetJointIndex([NativeTypeName("const JPH_Skeleton *")] JPH_Skeleton* skeleton, [NativeTypeName("const char *")] sbyte* name); + public static extern void JPH_MotorcycleControllerSettings_SetLeanSpringIntegrationCoefficient(JPH_MotorcycleControllerSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Skeleton_CalculateParentJointIndices(JPH_Skeleton* skeleton); + public static extern float JPH_MotorcycleControllerSettings_GetLeanSpringIntegrationCoefficientDecay([NativeTypeName("const JPH_MotorcycleControllerSettings *")] JPH_MotorcycleControllerSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Skeleton_AreJointsCorrectlyOrdered([NativeTypeName("const JPH_Skeleton *")] JPH_Skeleton* skeleton); + public static extern void JPH_MotorcycleControllerSettings_SetLeanSpringIntegrationCoefficientDecay(JPH_MotorcycleControllerSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_RagdollSettings* JPH_RagdollSettings_Create(); + public static extern float JPH_MotorcycleControllerSettings_GetLeanSmoothingFactor([NativeTypeName("const JPH_MotorcycleControllerSettings *")] JPH_MotorcycleControllerSettings* settings); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RagdollSettings_Destroy(JPH_RagdollSettings* settings); + public static extern void JPH_MotorcycleControllerSettings_SetLeanSmoothingFactor(JPH_MotorcycleControllerSettings* settings, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("const JPH_Skeleton *")] - public static extern JPH_Skeleton* JPH_RagdollSettings_GetSkeleton([NativeTypeName("const JPH_RagdollSettings *")] JPH_RagdollSettings* character); + public static extern float JPH_MotorcycleController_GetWheelBase([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RagdollSettings_SetSkeleton(JPH_RagdollSettings* character, JPH_Skeleton* skeleton); + [return: NativeTypeName("bool")] + public static extern byte JPH_MotorcycleController_IsLeanControllerEnabled([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_RagdollSettings_Stabilize(JPH_RagdollSettings* settings); + public static extern void JPH_MotorcycleController_EnableLeanController(JPH_MotorcycleController* controller, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RagdollSettings_DisableParentChildCollisions(JPH_RagdollSettings* settings, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* jointMatrices, float minSeparationDistance); + [return: NativeTypeName("bool")] + public static extern byte JPH_MotorcycleController_IsLeanSteeringLimitEnabled([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RagdollSettings_CalculateBodyIndexToConstraintIndex(JPH_RagdollSettings* settings); + public static extern void JPH_MotorcycleController_EnableLeanSteeringLimit(JPH_MotorcycleController* controller, [NativeTypeName("bool")] byte value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern int JPH_RagdollSettings_GetConstraintIndexForBodyIndex(JPH_RagdollSettings* settings, int bodyIndex); + public static extern float JPH_MotorcycleController_GetLeanSpringConstant([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_RagdollSettings_CalculateConstraintIndexToBodyIdxPair(JPH_RagdollSettings* settings); + public static extern void JPH_MotorcycleController_SetLeanSpringConstant(JPH_MotorcycleController* controller, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern JPH_Ragdoll* JPH_RagdollSettings_CreateRagdoll(JPH_RagdollSettings* settings, JPH_PhysicsSystem* system, [NativeTypeName("JPH_CollisionGroupID")] uint collisionGroup, [NativeTypeName("uint64_t")] ulong userData); + public static extern float JPH_MotorcycleController_GetLeanSpringDamping([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Ragdoll_Destroy(JPH_Ragdoll* ragdoll); + public static extern void JPH_MotorcycleController_SetLeanSpringDamping(JPH_MotorcycleController* controller, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Ragdoll_AddToPhysicsSystem(JPH_Ragdoll* ragdoll, [NativeTypeName("JPH_Activation")] Activation activationMode, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern float JPH_MotorcycleController_GetLeanSpringIntegrationCoefficient([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Ragdoll_RemoveFromPhysicsSystem(JPH_Ragdoll* ragdoll, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern void JPH_MotorcycleController_SetLeanSpringIntegrationCoefficient(JPH_MotorcycleController* controller, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Ragdoll_Activate(JPH_Ragdoll* ragdoll, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern float JPH_MotorcycleController_GetLeanSpringIntegrationCoefficientDecay([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - [return: NativeTypeName("bool")] - public static extern NativeBool JPH_Ragdoll_IsActive([NativeTypeName("const JPH_Ragdoll *")] JPH_Ragdoll* ragdoll, [NativeTypeName("bool")] NativeBool lockBodies); + public static extern void JPH_MotorcycleController_SetLeanSpringIntegrationCoefficientDecay(JPH_MotorcycleController* controller, float value); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_Ragdoll_ResetWarmStart(JPH_Ragdoll* ragdoll); + public static extern float JPH_MotorcycleController_GetLeanSmoothingFactor([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] - public static extern void JPH_EstimateCollisionResponse([NativeTypeName("const JPH_Body *")] JPH_Body* body1, [NativeTypeName("const JPH_Body *")] JPH_Body* body2, [NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold, float combinedFriction, float combinedRestitution, float minVelocityForRestitution, uint numIterations, JPH_CollisionEstimationResult* result); + public static extern void JPH_MotorcycleController_SetLeanSmoothingFactor(JPH_MotorcycleController* controller, float value); } } diff --git a/Jolt.SourceGenerator~/Jolt.SourceGenerator.Tests/Utility.cs b/Jolt.SourceGenerator~/Jolt.SourceGenerator.Tests/Utility.cs new file mode 100644 index 0000000..a880b2e --- /dev/null +++ b/Jolt.SourceGenerator~/Jolt.SourceGenerator.Tests/Utility.cs @@ -0,0 +1,74 @@ +using Microsoft.CodeAnalysis; +using Microsoft.CodeAnalysis.CSharp; +using Xunit; + +namespace Jolt.SourceGenerator.Tests; + +public static class Utility +{ + public static (GeneratorDriver, CSharpCompilation) CreateDriver(string source, string assemblyName) where TIncrementalGenerator : IIncrementalGenerator, new() + { + var compilation = CSharpCompilation.Create(assemblyName, + new[] { CSharpSyntaxTree.ParseText(source) }, + Basic.Reference.Assemblies.Net70.References.All, + new CSharpCompilationOptions(OutputKind.DynamicallyLinkedLibrary)); + + var generator = new TIncrementalGenerator(); + var sourceGenerator = generator.AsSourceGenerator(); + + // trackIncrementalGeneratorSteps allows to report info about each step of the generator + GeneratorDriver driver = CSharpGeneratorDriver.Create( + generators: [sourceGenerator], + driverOptions: new GeneratorDriverOptions(default, trackIncrementalGeneratorSteps: true)); + + // Run the generator + driver = driver.RunGenerators(compilation); + + return (driver, compilation); + // Assert the driver doesn't recompute the output + // var result = driver.GetRunResult().Results.Single(); + // var allOutputs = result.TrackedOutputSteps.SelectMany(outputStep => outputStep.Value).SelectMany(output => output.Outputs); + // Assert.Collection(allOutputs, output => Assert.Equal(IncrementalStepRunReason.Cached, output.Reason)); + // + // foreach (var generatedSource in result.GeneratedSources) + // { + // Console.WriteLine(generatedSource.SourceText); + // } + // Assert the driver use the cached result from AssemblyName and Syntax + // var assemblyNameOutputs = result.TrackedSteps["AssemblyName"].Single().Outputs; + // Assert.Collection(assemblyNameOutputs, output => Assert.Equal(IncrementalStepRunReason.Unchanged, output.Reason)); + // + // var syntaxOutputs = result.TrackedSteps["Syntax"].Single().Outputs; + // Assert.Collection(syntaxOutputs, output => Assert.Equal(IncrementalStepRunReason.Unchanged, output.Reason)); + } + + public static (GeneratorDriver, CSharpCompilation) AssertCache(GeneratorDriver driver, + CSharpCompilation compilation, params (string stepName, IncrementalStepRunReason reason)[] validations) + { + compilation = compilation.AddSyntaxTrees(CSharpSyntaxTree.ParseText("// dummy")); + driver = driver.RunGenerators(compilation); + + var result = driver.GetRunResult().Results.Single(); + + var allOutputs = result.TrackedOutputSteps.SelectMany(outputStep => outputStep.Value).SelectMany(output => output.Outputs); + Assert.Collection(allOutputs, output => Assert.Equal(IncrementalStepRunReason.Cached, output.Reason)); + + foreach (var (stepName, reason) in validations) + { + var assemblyNameOutputs = result.TrackedSteps[stepName].Single().Outputs; + Assert.Collection(assemblyNameOutputs, output => Assert.Equal(reason, output.Reason)); + } + + // var syntaxOutputs = result.TrackedSteps["Syntax"].Single().Outputs; + // Assert.Collection(syntaxOutputs, output => Assert.Equal(IncrementalStepRunReason.Unchanged, output.Reason)); + + return (driver, compilation); + } + + public static (GeneratorDriver, CSharpCompilation) CreateDriverAndAssertCache(string source, + string assemblyName, params (string stepName, IncrementalStepRunReason reason)[] validations) where TIncrementalGenerator : IIncrementalGenerator, new() + { + var (driver, compilation) = CreateDriver(source, assemblyName); + return AssertCache(driver, compilation, validations); + } +} diff --git a/Jolt.SourceGenerator~/Jolt.SourceGenerator.csproj b/Jolt.SourceGenerator~/Jolt.SourceGenerator.csproj deleted file mode 100644 index d3ad1d4..0000000 --- a/Jolt.SourceGenerator~/Jolt.SourceGenerator.csproj +++ /dev/null @@ -1,15 +0,0 @@ - - - - netstandard2.1 - AnyCPU - latest - true - true - - - - - - - diff --git a/Jolt.SourceGenerator~/Jolt.SourceGenerator.sln b/Jolt.SourceGenerator~/Jolt.SourceGenerator.sln index 40e4cb6..49d7e24 100644 --- a/Jolt.SourceGenerator~/Jolt.SourceGenerator.sln +++ b/Jolt.SourceGenerator~/Jolt.SourceGenerator.sln @@ -3,7 +3,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 VisualStudioVersion = 17.0.31903.59 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jolt.SourceGenerator", "Jolt.SourceGenerator.csproj", "{9FEE60F7-5566-4DD1-BAC1-637A78A109D8}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jolt.SourceGenerator", ".\Jolt.SourceGenerator\Jolt.SourceGenerator.csproj", "{9FEE60F7-5566-4DD1-BAC1-637A78A109D8}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jolt.SourceGenerator.Tests", "Jolt.SourceGenerator.Tests\Jolt.SourceGenerator.Tests.csproj", "{9A2527CC-4599-4374-BEFF-DF2630016456}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -18,5 +20,9 @@ Global {9FEE60F7-5566-4DD1-BAC1-637A78A109D8}.Debug|Any CPU.Build.0 = Debug|Any CPU {9FEE60F7-5566-4DD1-BAC1-637A78A109D8}.Release|Any CPU.ActiveCfg = Release|Any CPU {9FEE60F7-5566-4DD1-BAC1-637A78A109D8}.Release|Any CPU.Build.0 = Release|Any CPU + {9A2527CC-4599-4374-BEFF-DF2630016456}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9A2527CC-4599-4374-BEFF-DF2630016456}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9A2527CC-4599-4374-BEFF-DF2630016456}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9A2527CC-4599-4374-BEFF-DF2630016456}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection EndGlobal diff --git a/Jolt.SourceGenerator~/Jolt.SourceGenerator.sln.DotSettings.user b/Jolt.SourceGenerator~/Jolt.SourceGenerator.sln.DotSettings.user new file mode 100644 index 0000000..764fe6e --- /dev/null +++ b/Jolt.SourceGenerator~/Jolt.SourceGenerator.sln.DotSettings.user @@ -0,0 +1,6 @@ + + <SessionState ContinuousTestingMode="0" IsActive="True" Name="Test1" xmlns="urn:schemas-jetbrains-com:jetbrains-ut-session"> + <TestAncestor> + <TestId>xUnit::9A2527CC-4599-4374-BEFF-DF2630016456::net9.0::Jolt.SourceGenerator.Tests.Tests.Test1</TestId> + </TestAncestor> +</SessionState> \ No newline at end of file diff --git a/Jolt.SourceGenerator~/Jolt.SourceGenerator/Jolt.SourceGenerator.csproj b/Jolt.SourceGenerator~/Jolt.SourceGenerator/Jolt.SourceGenerator.csproj new file mode 100644 index 0000000..a20ad80 --- /dev/null +++ b/Jolt.SourceGenerator~/Jolt.SourceGenerator/Jolt.SourceGenerator.csproj @@ -0,0 +1,36 @@ + + + + netstandard2.0 + AnyCPU + latest + true + true + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + Test\Program.cs + + + + + + + + + + + + diff --git a/Jolt.SourceGenerator~/Jolt.SourceGenerator/JoltGenerator.cs b/Jolt.SourceGenerator~/Jolt.SourceGenerator/JoltGenerator.cs new file mode 100644 index 0000000..226e089 --- /dev/null +++ b/Jolt.SourceGenerator~/Jolt.SourceGenerator/JoltGenerator.cs @@ -0,0 +1,462 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Linq; +using System.Text; +using System.Threading; +using Microsoft.CodeAnalysis; +using Microsoft.CodeAnalysis.CSharp.Syntax; + +namespace Jolt.SourceGenerator; + +public struct Parameter +{ + public readonly string type; + public readonly string nativeType; + public readonly string name; + + public Parameter(IParameterSymbol symbol) + { + type = symbol.Type.ToDisplayString(); + nativeType = symbol.GetAttributes().FirstOrDefault(x => x.AttributeClass?.Name == "NativeTypeNameAttribute") + ?.ConstructorArguments.FirstOrDefault().Value?.ToString(); + name = symbol.Name; + } + + private bool ShouldConvertToValueType + { + get + { + if (name == "result") return false; + if (!JoltGenerator.k_ValuePtrTypes.Contains(type)) return false; + return true; + } + } + + public string AsDefinitionWithoutTransform => $"{type} {name}"; + + public string AsDefinition(bool isGetterLike) + { + if (nativeType == "bool" && type == "byte") + { + return $"{nativeType} {name}"; + } + + if (ShouldConvertToValueType && !isGetterLike) + { + return $"{type.Substring(0, type.Length - 1)} {name}"; + } + + return AsDefinitionWithoutTransform; + } + + public string AsCallerWithoutTransform => name; + + public string AsCaller(bool isGetterLike) + { + if (nativeType == "bool" && type == "byte") + { + return $"{name} ? (byte)1 : (byte)0"; + } + + if (ShouldConvertToValueType && !isGetterLike) + { + return $"&{name}"; + } + + return AsCallerWithoutTransform; + } +} + +public readonly struct MethodDefinition +{ + public readonly bool IsInstance; + public readonly string Name; + public readonly string Call; + public readonly string ReturnType; + public readonly string NativeReturnType; + public readonly ImmutableArray Parameters; + + public MethodDefinition(bool isInstance, string name, IMethodSymbol symbol) + { + IsInstance = isInstance; + Name = name; + Call = $"{symbol.ContainingType.ToDisplayString()}.{symbol.Name}"; + ReturnType = symbol.ReturnType.ToDisplayString(); + Parameters = symbol.Parameters.Select(x => new Parameter(x)).ToImmutableArray(); + NativeReturnType = symbol.GetReturnTypeAttributes() + .FirstOrDefault(x => x.AttributeClass?.Name == "NativeTypeNameAttribute") + ?.ConstructorArguments[0].Value?.ToString(); + } + + public void Generate(SourceCodeScopeHelper helper, bool isSuper) + { + var isCreateByReturn = false; + var isDisposing = Name == "Destroy"; + + var returnType = ReturnType; + string returnExpression = null; + + if (returnType.EndsWith("*") && returnType.StartsWith(JoltGenerator.k_Prefix)) + { + returnType = returnType.Substring(JoltGenerator.k_Prefix.Length, + returnType.Length - JoltGenerator.k_Prefix.Length - 1); + isCreateByReturn = true; + } + else if (NativeReturnType == "bool" && returnType == "byte") + { + returnType = NativeReturnType; + returnExpression = "return returnValue != 0;"; + } + + var isGetterLike = ReturnType == "void" + && Name.StartsWith("Get") + && Parameters.Length == 2 + && Parameters[1].type.EndsWith("*"); + + var parameters = IsInstance + ? string.Join(", ", Parameters.Skip(1).Select(x => x.AsDefinition(isGetterLike))) + : string.Join(", ", Parameters.Select(x => x.AsDefinition(isGetterLike))); + var parametersNameOnly = IsInstance + ? string.Join(", ", Parameters.Skip(1).Select(x => x.AsCaller(isGetterLike))) + : string.Join(", ", Parameters.Select(x => x.AsCaller(isGetterLike))); + var header = IsInstance + ? $"public readonly unsafe {returnType} {Name}({parameters})" + : $"public unsafe static {returnType} {Name}({parameters})"; + + using (var method = helper.Scope(header)) + { + var ptrExpression = string.Empty; + if (IsInstance && !isSuper) + { + ptrExpression = "Ptr"; + } + else if (IsInstance && isSuper) + { + ptrExpression = $"({Parameters[0].type})Ptr"; + } + + var dotSplit = IsInstance && !string.IsNullOrEmpty(parametersNameOnly) ? ", " : string.Empty; + + if (ReturnType == "void") + { + method.AppendLine($"{Call}({(ptrExpression)}{dotSplit}{parametersNameOnly});"); + } + else + { + method.AppendLine( + $"var returnValue = {Call}({ptrExpression}{dotSplit}{parametersNameOnly});"); + if (isCreateByReturn) + { + // method.AppendLine( + // $"var ptr = ({ReturnType}*)UnsafeUtility.MallocTracked(sizeof(void**), UnsafeUtility.AlignOf(), Allocator.Persistent, 1);"); + // method.AppendLine($"*ptr = returnValue;"); + method.AppendLine($"return new {returnType}() {{ Ptr = returnValue }};"); + } + else + { + method.AppendLine(returnExpression ?? $"return returnValue;"); + } + } + } + } +} + +public readonly struct StructDefinition(string typeName, ImmutableArray methods, bool isInstance) +{ + public readonly string TypeName = typeName; + public readonly ImmutableArray Methods = methods; + public readonly bool IsInstance = isInstance; + + public void Generate(SourceCodeScopeHelper helper, string superTypeName = null) + { + var isSuper = !string.IsNullOrEmpty(superTypeName); + + if (IsInstance && !isSuper) + helper.AppendLine("[NativeContainer]"); + var funcHeader = IsInstance + ? $"public partial struct {superTypeName ?? TypeName}" + : $"public static class {TypeName}"; + using (var cls = helper.Scope(funcHeader)) + { + if (IsInstance && !isSuper) + { + cls.AppendLine("[NativeDisableUnsafePtrRestriction]"); + cls.AppendLine($"internal unsafe JPH_{TypeName}* Ptr;"); + cls.AppendLine(); + + cls.AppendLine($"public unsafe bool IsCreated => Ptr != null;"); + + using (var func = cls.Scope($"public readonly unsafe JPH_{TypeName}* ToUnsafePtr()")) + { + func.AppendLine($"return Ptr;"); + } + } + + if (IsInstance && isSuper) + { + cls.AppendLine( + $"public unsafe {TypeName} As{TypeName} => new {TypeName}() {{ Ptr = (JPH_{TypeName}*)Ptr }};"); + } + + foreach (var methodDef in Methods) + { + if (!methodDef.IsInstance && isSuper) continue; + cls.AppendLine($"//{methodDef.Name} -> {methodDef.Call}"); + methodDef.Generate(cls, isSuper); + } + } + } +} + +public class Context : IEnumerable +{ + List<(bool isInstance, List methodDefines)> m_Entries = new(); + Dictionary m_Type2Info = new(); + + public int GetOrAddType(string typeName) + { + if (!m_Type2Info.TryGetValue(typeName, out var index)) + { + index = m_Entries.Count; + m_Type2Info[typeName] = index; + m_Entries.Add((false, new List())); + } + + return index; + } + + public void AddMethodByTypeIndex(int typeIndex, MethodDefinition methodDefinition) + { + var methods = m_Entries[typeIndex].methodDefines; + methods.Add(methodDefinition); + + if (methodDefinition.IsInstance) + { + MarkIsInstance(typeIndex); + } + } + + public void MarkIsInstance(int typeIndex) + { + var entry = m_Entries[typeIndex]; + entry.isInstance = true; + m_Entries[typeIndex] = entry; + } + + public IEnumerator GetEnumerator() + { + foreach (var kv in m_Type2Info) + { + var info = kv.Value; + var entry = m_Entries[info]; + var methods = entry.methodDefines; + + var isInstance = entry.isInstance | methods.Any(x => x.IsInstance || x.ReturnType.Contains($"{kv.Key}*")); + yield return new StructDefinition(kv.Key, methods.ToImmutableArray(), isInstance); + } + } + + IEnumerator IEnumerable.GetEnumerator() => GetEnumerator(); +} + +[Generator] +public class JoltGenerator : IIncrementalGenerator +{ + [ThreadStatic] public static StringBuilder m_StringBuilder; + + public void Initialize(IncrementalGeneratorInitializationContext context) + { + var nativeStructs = context.SyntaxProvider.CreateSyntaxProvider( + static (x, token) => x is StructDeclarationSyntax s && s.Identifier.ValueText.StartsWith("JPH_"), + static (x, token) => + { + var symbol = x.SemanticModel.GetDeclaredSymbol(x.Node); + return symbol?.ToDisplayString(); + } + ) + .Where(x => x is not null) + .Collect(); + + var structs = context.SyntaxProvider.CreateSyntaxProvider + ( + static (x, token) => x is ClassDeclarationSyntax { Identifier.ValueText: "UnsafeBindings" }, + static (x, token) => Parse(x, token) + ) + .SelectMany((x, token) => x); + + context.RegisterSourceOutput(structs.Collect(), (gctx, sources) => + { + var sourceLookup = sources.ToDictionary(x => x.TypeName); + foreach (var source in sources) + { + var helper = new SourceCodeHelper(m_StringBuilder ??= new()); + helper.Using("System"); + helper.Using("Unity"); + helper.Using("Unity.Mathematics"); + helper.Using("Unity.Collections"); + helper.Using("Unity.Collections.LowLevel.Unsafe"); + try + { + using (var @namespace = helper.Scope("namespace Jolt")) + { + source.Generate(@namespace, null); + + var typeName = source.TypeName; + while (k_Extends.TryGetValue(typeName, out var superTypeName)) + { + if (sourceLookup.TryGetValue(superTypeName, out var superStruct)) + { + @namespace.AppendLine($"//{typeName} extends {superTypeName}"); + superStruct.Generate(@namespace, source.TypeName); + } + + typeName = superTypeName; + } + } + + gctx.AddSource($"{source.TypeName}.g.cs", m_StringBuilder.ToString()); + } + catch (Exception e) + { + gctx.AddSource($"{source.TypeName}.g.cs", $"/* {e}*/"); + } + finally + { + m_StringBuilder.Clear(); + } + } + }); + } + + public const string k_Prefix = "Jolt.JPH_"; + + public static readonly HashSet k_ForbiddenTypes = ["Quat", "Quaternion", "Vec3", "Matrix4x4", "RMatrix4x4"]; + + public static readonly HashSet k_ForbiddenMethods = + [ + "JPH_MeshShapeSettings_Create", + "JPH_MeshShapeSettings_Create2", + ]; + + public static readonly HashSet k_ValuePtrTypes = + [ + "Unity.Mathematics.float3*", + "Unity.Mathematics.quaternion*", + "Jolt.rvec3*" + ]; + + public static readonly Dictionary k_Mappings = new() + { + { "ObjectLayerPairFilterTable", "ObjectLayerPairFilter" }, + { "ObjectLayerPairFilterMask", "ObjectLayerPairFilter" }, + + { "ObjectVsBroadPhaseLayerFilterTable", "ObjectVsBroadPhaseLayerFilter" }, + { "ObjectVsBroadPhaseLayerFilterMask", "ObjectVsBroadPhaseLayerFilter" }, + + { "BroadPhaseLayerInterfaceTable", "BroadPhaseLayerInterface" }, + { "BroadPhaseLayerInterfaceMask", "BroadPhaseLayerInterface" }, + }; + + public static readonly Dictionary k_Extends = new Dictionary() + { + { "ConvexShape", "Shape" }, + { "ConvexShapeSettings", "ShapeSettings" }, + { "BoxShape", "ConvexShape" }, + { "BoxShapeSettings", "ConvexShapeSettings" }, + { "SphereShape", "ConvexShape" }, + { "SphereShapeSettings", "ConvexShapeSettings" }, + { "PlaneShape", "Shape" }, + { "PlaneShapeSettings", "ShapeSettings" }, + { "TriangleShape", "ConvexShape" }, + { "TriangleShapeSettings", "ConvexShapeSettings" }, + { "CapsuleShape", "ConvexShape" }, + { "CapsuleShapeSettings", "ConvexShapeSettings" }, + { "CylinderShape", "ConvexShape" }, + { "CylinderShapeSettings", "ConvexShapeSettings" }, + { "TaperedCylinderShape", "ConvexShape" }, + { "TaperedCylinderShapeSettings", "ConvexShapeSettings" }, + { "ConvexHullShape", "ConvexShape" }, + { "ConvexHullShapeSettings", "ConvexShapeSettings" }, + { "MeshShape", "Shape" }, + { "MeshShapeSettings", "ShapeSettings" }, + { "HeightFieldShape", "Shape" }, + { "HeightFieldShapeSettings", "ShapeSettings" }, + { "TaperedCapsuleShape", "ConvexShape" }, + { "TaperedCapsuleShapeSettings", "ConvexShapeSettings" }, + { "CompoundShape", "Shape" }, + { "CompoundShapeSettings", "ShapeSettings" }, + { "StaticCompoundShape", "CompoundShape" }, + { "StaticCompoundShapeSettings", "CompoundShapeSettings" }, + { "MutableCompoundShape", "CompoundShape" }, + { "MutableCompoundShapeSettings", "CompoundShapeSettings" }, + { "DecoratedShape", "Shape" }, + { "DecoratedShapeSettings", "ShapeSettings" }, + { "RotatedTranslatedShape", "DecoratedShape" }, + { "RotatedTranslatedShapeSettings", "DecoratedShapeSettings" }, + { "ScaledShape", "DecoratedShape" }, + { "ScaledShapeSettings", "DecoratedShapeSettings" }, + { "OffsetCenterOfMassShape", "DecoratedShape" }, + { "OffsetCenterOfMassShapeSettings", "DecoratedShapeSettings" }, + { "EmptyShape", "Shape" }, + { "EmptyShapeSettings", "ShapeSettings" }, + }; + + private static IEnumerable Parse(GeneratorSyntaxContext ctx, CancellationToken token) + { + var symbol = ctx.SemanticModel.GetDeclaredSymbol(ctx.Node, token) as INamedTypeSymbol; + if (symbol is null) yield break; + + var context = new Context(); + + var methodSymbols = symbol.GetMembers().OfType(); + foreach (var method in methodSymbols) + { + if (k_ForbiddenMethods.Contains(method.Name)) continue; + var splits = method.Name.Split('_'); + + // throw new Exception(string.Join("--", splits)); + string typeName; + string methodName; + + if (splits.Length == 3) + { + typeName = splits[1]; + methodName = splits[2]; + } + else if (splits.Length == 2) + { + typeName = "JoltCore"; + methodName = splits[1]; + } + else + { + throw new Exception("Unknown type"); + } + + if (k_ForbiddenTypes.Contains(typeName)) continue; + typeName = k_Mappings.TryGetValue(typeName, out var replaced) ? replaced : typeName; + + var typeIndex = context.GetOrAddType(typeName); + var isInstance = method.Parameters.Length > 0 && + method.Parameters[0].Type.ToDisplayString().Contains($"JPH_{typeName}*"); + var methodDef = new MethodDefinition(isInstance, methodName, method); + + if (methodDef.ReturnType.StartsWith(k_Prefix) && methodDef.ReturnType.EndsWith("*")) + { + var returnTypeName = methodDef.ReturnType.Substring(k_Prefix.Length, + methodDef.ReturnType.Length - k_Prefix.Length - 1); + var returnTypeIndex = context.GetOrAddType(returnTypeName); + context.MarkIsInstance(returnTypeIndex); + } + + context.AddMethodByTypeIndex(typeIndex, methodDef); + } + + foreach (var s in context) + { + yield return s; + } + } +} diff --git a/Jolt.SourceGenerator~/Jolt.SourceGenerator/SourceCodeHelper.cs b/Jolt.SourceGenerator~/Jolt.SourceGenerator/SourceCodeHelper.cs new file mode 100644 index 0000000..8ebb295 --- /dev/null +++ b/Jolt.SourceGenerator~/Jolt.SourceGenerator/SourceCodeHelper.cs @@ -0,0 +1,85 @@ +using System.Text; + +namespace Jolt.SourceGenerator; + +public ref struct SourceCodeHelper +{ + private StringBuilder m_StringBuilder; + + public SourceCodeHelper(StringBuilder sb) + { + m_StringBuilder = sb; + } + + public void Comments(string chars) => m_StringBuilder.Append("//").Append(chars).AppendLine(); + + public void Using(string @namespace) => m_StringBuilder.AppendFormat("using {0};", @namespace).AppendLine(); + + public SourceCodeScopeHelper Scope(string header, string tail = null) => new(m_StringBuilder, header, tail, 0); +} + +public ref struct SourceCodeLineHelper +{ + private StringBuilder m_StringBuilder; + private int m_Depth; + + public SourceCodeLineHelper(StringBuilder sb, int depth) + { + m_StringBuilder = sb; + m_Depth = depth; + } + + public void AppendLine() => AppendLine(string.Empty); + + public void AppendLine(string x) + { + m_StringBuilder.AppendFormat("{0}{1}", m_Depth > 0 ? new string('\t', m_Depth) : string.Empty, x).AppendLine(); + } + + public void Append(string x) + { + if (m_StringBuilder.Length == 0 || m_StringBuilder[m_StringBuilder.Length - 1] is '\r' or '\n') + { + m_StringBuilder.Append(m_Depth > 0 ? new string('\t', m_Depth) : string.Empty); + } + + m_StringBuilder.Append(x); + } +} + +public ref struct SourceCodeScopeHelper +{ + private StringBuilder m_StringBuilder; + private int m_Depth; + private string m_Tail; + + public bool IsValid => m_StringBuilder is not null; + + public SourceCodeScopeHelper(StringBuilder sb, string header, string tail, int depth) + { + m_StringBuilder = sb; + m_Depth = depth; + m_Tail = tail; + + if (header != null) + Line().AppendLine(header); + Line().AppendLine("{"); + m_Depth++; + } + + public SourceCodeLineHelper Line() => new(m_StringBuilder, m_Depth); + public void AppendLine(string x) => Line().AppendLine(x); + public void AppendLine() => Line().AppendLine(string.Empty); + public void Append(string x) => Line().Append(x); + + public SourceCodeScopeHelper Scope(string header = null, string tail = null) => + new(m_StringBuilder, header, tail, m_Depth); + + public void Dispose() + { + if (m_StringBuilder == null) return; + m_Depth--; + Line().AppendLine($"}}{m_Tail}"); + m_StringBuilder = null; + } +} diff --git a/Jolt.SourceGenerator~/Jolt/Jolt.SourceGenerator.dll b/Jolt.SourceGenerator~/Jolt/Jolt.SourceGenerator.dll new file mode 100644 index 0000000..39d027b Binary files /dev/null and b/Jolt.SourceGenerator~/Jolt/Jolt.SourceGenerator.dll differ diff --git a/Jolt.SourceGenerator~/Jolt/Jolt.SourceGenerator.pdb b/Jolt.SourceGenerator~/Jolt/Jolt.SourceGenerator.pdb new file mode 100644 index 0000000..91ddba3 Binary files /dev/null and b/Jolt.SourceGenerator~/Jolt/Jolt.SourceGenerator.pdb differ diff --git a/Jolt.SourceGenerator~/JoltSourceGenerator.cs b/Jolt.SourceGenerator~/JoltSourceGenerator.cs deleted file mode 100644 index 2bd4995..0000000 --- a/Jolt.SourceGenerator~/JoltSourceGenerator.cs +++ /dev/null @@ -1,394 +0,0 @@ -using System; -using System.CodeDom.Compiler; -using System.Collections.Generic; -using System.Diagnostics; -using System.IO; -using Microsoft.CodeAnalysis; -using Microsoft.CodeAnalysis.CSharp; -using Microsoft.CodeAnalysis.CSharp.Syntax; - -namespace Jolt.SourceGenerators; - -[Generator] -internal class JoltSourceGenerator : ISourceGenerator -{ - private static readonly JoltSourceGeneratorLog Log = new (); - - public void Initialize(GeneratorInitializationContext ctx) - { - ctx.RegisterForSyntaxNotifications(() => new JoltSyntaxReceiver()); - } - - public void Execute(GeneratorExecutionContext ctx) - { - if (ctx.SyntaxReceiver is not JoltSyntaxReceiver recv) return; - - var bindings = IngestNativeBindings(recv); - var wrappers = CreateNativeTypeWrapperList(recv, ctx); - - foreach (var binding in bindings.BindingsByNativeType) - { - Log.Debug($"Found bindings for {binding.Key}"); - } - - foreach (var wrapper in wrappers) - { - try - { - Log.Debug($"Generating {wrapper.TypeName}"); - - var filename = $"{wrapper.TypeName}.g.cs"; - var filetext = GenerateNativeTypeWrapper(wrapper, bindings); - - ctx.AddSource(filename, filetext); - } - catch (Exception ex) - { - Log.Error($"Exception while generating {wrapper.TypeName}:"); - Log.Error($"{ex}"); - } - } - - Log.Flush(); - } - - /// - /// Construct an optimized map of native extern functions from the syntax receiver pass. - /// - private static JoltNativeBindings IngestNativeBindings(JoltSyntaxReceiver recv) - { - var bindings = new JoltNativeBindings(); - - foreach (var decl in recv.Bindings) - { - var parts = decl.Identifier.ValueText.Split('_'); - - if (parts.Length < 3) - { - continue; // we are only interested in JPH_SomeType_Method bindings - } - - var details = new JoltNativeBindingDetails($"{parts[0]}_{parts[1]}", decl); - - if (bindings.BindingsByNativeType.TryGetValue(details.NativeTypeName, out var value)) - { - value.Add(details); - } - else - { - bindings.BindingsByNativeType.Add(details.NativeTypeName, [details]); - } - } - - return bindings; - } - - /// - /// Construct a list of native type wrapper metadata from the syntax receiver pass. - /// - private static List CreateNativeTypeWrapperList(JoltSyntaxReceiver recv, GeneratorExecutionContext ctx) - { - var result = new List(); - - foreach (var decl in recv.Wrappers) - { - result.Add(CreateNativeTypeWrapper(ctx, decl)); - } - - return result; - } - - private static JoltNativeTypeWrapper CreateNativeTypeWrapper(GeneratorExecutionContext ctx, StructDeclarationSyntax decl) - { - var symbol = ctx.Compilation.GetSemanticModel(decl.SyntaxTree).GetDeclaredSymbol(decl); - var result = new JoltNativeTypeWrapper(decl.Identifier.ValueText); - - Debug.Assert(symbol != null); - - foreach (var attr in symbol.GetAttributes()) - { - if (IsAttributeType(ctx, attr, "Jolt.GenerateBindingsAttribute")) - { - foreach (var type in attr.ConstructorArguments[0].Values) - { - if (type.Value != null) result.NativeTypePrefixes.Add(type.Value.ToString()); - } - } - } - - foreach (var member in symbol.GetMembers()) - { - if (member is IMethodSymbol { DeclaredAccessibility: Accessibility.Public } method) - { - // elide generated bindings that would share a name with a declared member - result.ExcludedBindings.Add($"{result.NativeTypeName}_{method.Name}"); - } - } - - return result; - } - - private static bool IsAttributeType(GeneratorExecutionContext ctx, AttributeData attr, string type) - { - return ctx.Compilation.GetTypeByMetadataName(type)?.Equals(attr.AttributeClass, SymbolEqualityComparer.Default) ?? false; - } - - private static string GenerateNativeTypeWrapper(JoltNativeTypeWrapper target, JoltNativeBindings bindings) - { - var writer = new IndentedTextWriter(new StringWriter()); - - writer.WriteLine("using System;"); - writer.WriteLine("using Jolt;"); - writer.WriteLine("using Unity.Collections;"); - writer.WriteLine("using Unity.Mathematics;"); - writer.WriteLine(); - - StartBlock(writer, "namespace Jolt"); - StartBlock(writer, $"public partial struct {target.TypeName} : IEquatable<{target.TypeName}>"); - - GenerateEquatableInterface(writer, target); - - foreach (var prefix in target.NativeTypePrefixes) - { - GenerateBindingsWithPrefix(writer, target, bindings, prefix); - } - - CloseBlock(writer); - CloseBlock(writer); - - Debug.Assert(writer.Indent == 0); - - return writer.InnerWriter.ToString(); - } - - private static void GenerateEquatableInterface(IndentedTextWriter writer, JoltNativeTypeWrapper target) - { - WritePaddedLine(writer, "#region IEquatable"); - - WritePaddedLine(writer, $"public bool Equals({target.TypeName} other) => Handle.Equals(other.Handle);"); - - WritePaddedLine(writer, $"public override bool Equals(object obj) => obj is {target.TypeName} other && Equals(other);"); - - WritePaddedLine(writer, $"public override int GetHashCode() => Handle.GetHashCode();"); - - WritePaddedLine(writer, $"public static bool operator ==({target.TypeName} lhs, {target.TypeName} rhs) => lhs.Equals(rhs);"); - - WritePaddedLine(writer, $"public static bool operator !=({target.TypeName} lhs, {target.TypeName} rhs) => !lhs.Equals(rhs);"); - - WritePaddedLine(writer, "#endregion"); - } - - private static void GenerateBindingsWithPrefix(IndentedTextWriter writer, JoltNativeTypeWrapper target, JoltNativeBindings bindings, string prefix) - { - if (bindings.BindingsByNativeType.TryGetValue(prefix, out var bindingsWithPrefix)) - { - WritePaddedLine(writer, $"#region {prefix}"); - - foreach (var binding in bindingsWithPrefix) - { - GenerateBindings(writer, target, binding); - } - - WritePaddedLine(writer, "#endregion"); - } - } - - private static void GenerateBindings(IndentedTextWriter writer, JoltNativeTypeWrapper target, JoltNativeBindingDetails b) - { - var bindingName = b.BindingDeclaration.Identifier.ValueText; - var wrapperName = bindingName.Substring(b.NativeTypeName.Length + 1); // JPH_SomeType_SomeMethodName -> SomeMethodName - - if (target.ExcludedBindings.Contains(bindingName)) - { - return; // target has explicitly excluded this binding - } - - if (b.BindingDeclaration.ParameterList.Parameters.Count == 0) - { - return; // TODO handle generating Create methods - } - - // The wrapper struct methods generally fall into the same format: - // - // public void SetFriction ( float friction ) => Bindings.JPH_Body_GetFriction ( Handle, friction ); - // ^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ - // wrapperName wrapperParams bindingName bindingParams - // - // The following code generates the wrapper params and binding params simultaneously because they are - // fairly interconnected. - - var bindingParams = new List(); - var wrapperParams = new List(); - - // Add the handle parameter to the binding param list only. - - { - - var firstParamDecl = b.BindingDeclaration.ParameterList.Parameters[0]; - var firstParamType = firstParamDecl.Type!.ToString(); - - if (firstParamType.StartsWith("NativeHandle") == false) - { - return; // TODO this is the Create category, or generally anything that is not a method binding - } - - string handleParam; - - var handleParamNativeTypeName = ExtractGenericTypeParameter(firstParamType); - - // Reinterpret the handle if the native type name is different. For example, the SphereShape wrapper - // generates bindings for JPH_Shape, JPH_ConvexShape, and JPH_SphereShape because the native class - // is a subclass of those two classes. Because the wrapper types are structs, API inheritance is - // not an option. Instead we generate methods for the whole class hierarchy directly on the SphereShape - // wrapper and internally reinterpret the handle into the native base class types. - - if (handleParamNativeTypeName != target.NativeTypeName) - { - handleParam = $"Handle.Reinterpret<{handleParamNativeTypeName}>()"; - } - else - { - handleParam = "Handle"; - } - - if (firstParamDecl.Modifiers.Any(SyntaxKind.RefKeyword)) - { - handleParam = $"ref {handleParam}"; // destroy bindings take handle by ref - } - - bindingParams.Add(handleParam); - } - - // Add the other parameters to both the binding and wrapper param list. - - foreach (var p in b.BindingDeclaration.ParameterList.Parameters.RemoveAt(0)) - { - var bindingParamType = p.Type!.ToString(); - var bindingParamName = p.Identifier.ValueText; - - string bindingParam; - string wrapperParam; - - if (bindingParamType.StartsWith("NativeHandle")) - { - // When the param is a NativeHandle, extract the generic type parameter and convert that into a wrapper - // type name. For example, when the binding takes a NativeHandle param the wrapper - // method takes a SphereShape param and internally passes along its handle. - - var wrapperParamType = ExtractGenericTypeParameter(bindingParamType).Substring("JPH_".Length); - var wrapperParamName = bindingParamName; - - bindingParam = $"{bindingParamName}.Handle"; - wrapperParam = $"{wrapperParamType} {wrapperParamName}"; - } - else - { - // When the param is any other type, just reuse the binding param type and name with any modifiers. - - bindingParam = bindingParamName; - wrapperParam = $"{bindingParamType} {bindingParamName}"; - - if (p.Modifiers.Any(SyntaxKind.OutKeyword)) - { - bindingParam = $"out {bindingParam}"; - wrapperParam = $"out {wrapperParam}"; - } - - if (p.Modifiers.Any(SyntaxKind.RefKeyword)) - { - bindingParam = $"ref {bindingParam}"; - wrapperParam = $"ref {wrapperParam}"; - } - } - - bindingParams.Add(bindingParam); - wrapperParams.Add(wrapperParam); - } - - var bindingParamsString = string.Join(", ", bindingParams); - var wrapperParamsString = string.Join(", ", wrapperParams); - - var wrapperBody = $"Bindings.{bindingName}({bindingParamsString})"; - - var bindingReturn = b.BindingDeclaration.ReturnType.ToString(); - var wrapperReturn = bindingReturn; - - if (wrapperName == "GetType") - { - wrapperName = "GetShapeType"; // JPH_Shape_GetType hides native GetType method - } - - if (bindingReturn.StartsWith("NativeHandle")) - { - // If the binding returns a NativeHandle, instead construct and return the corresponding wrapper type. - - wrapperReturn = ExtractGenericTypeParameter(bindingReturn).Substring("JPH_".Length); - wrapperBody = $"new {wrapperReturn} {{ Handle = {wrapperBody} }}"; - } - - WritePaddedLine(writer, $"public {wrapperReturn} {wrapperName}({wrapperParamsString}) => {wrapperBody};"); - } - - /// - /// Returns the type parameter of a generic type. - /// - private static string ExtractGenericTypeParameter(string type) - { - var lbracket = type.IndexOf('<'); - var rbracket = type.IndexOf('>'); - return type.Substring(lbracket + 1, rbracket - lbracket - 1); - } - - private static void StartBlock(IndentedTextWriter writer, string line) - { - writer.WriteLine(line); - writer.WriteLine("{"); - - writer.Indent++; - } - - private static void CloseBlock(IndentedTextWriter writer) - { - writer.Indent--; - - writer.WriteLine("}"); - } - - private static void WritePaddedLine(IndentedTextWriter writer, string line) - { - writer.WriteLine(line); - writer.WriteLine(); - } -} - -/// -/// An optimized lookup of native extern functions. -/// -internal class JoltNativeBindings -{ - public readonly Dictionary> BindingsByNativeType = new (); -} - -/// -/// Metadata about an individual native extern function we will proxy. -/// -internal class JoltNativeBindingDetails(string type, MethodDeclarationSyntax decl) -{ - public readonly string NativeTypeName = type; - - public readonly MethodDeclarationSyntax BindingDeclaration = decl; -} - -/// -/// Metadata about a native type wrapper we will generate. -/// -internal class JoltNativeTypeWrapper(string type) -{ - public readonly string TypeName = type; - - public string NativeTypeName => $"JPH_{TypeName}"; - - public readonly HashSet NativeTypePrefixes = []; - - public readonly HashSet ExcludedBindings = []; -} diff --git a/Jolt.SourceGenerator~/JoltSourceGeneratorLog.cs b/Jolt.SourceGenerator~/JoltSourceGeneratorLog.cs deleted file mode 100644 index 7c1d0ff..0000000 --- a/Jolt.SourceGenerator~/JoltSourceGeneratorLog.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System; -using System.IO; -using System.Text; - -namespace Jolt.SourceGenerators; - -/// -/// Simple log stream that writes to a temp file if possible. -/// -internal class JoltSourceGeneratorLog -{ - private StringBuilder logs = new StringBuilder(); - - public void Debug(string message) - { - logs.AppendLine($"[DEBUG {DateTime.Now}] {message}"); - } - - public void Error(string message) - { - logs.AppendLine($"[ERROR {DateTime.Now}] {message}"); - } - - public void Flush() - { - try - { - File.WriteAllText(Path.Combine(Path.GetTempPath(), "JoltPhysicsUnitySourceGenerator.log"), logs.ToString()); - } - catch - { - // skip logs - } - } -} \ No newline at end of file diff --git a/Jolt.SourceGenerator~/JoltSyntaxReceiver.cs b/Jolt.SourceGenerator~/JoltSyntaxReceiver.cs deleted file mode 100644 index f925fbf..0000000 --- a/Jolt.SourceGenerator~/JoltSyntaxReceiver.cs +++ /dev/null @@ -1,69 +0,0 @@ -using System.Collections.Generic; -using Microsoft.CodeAnalysis; -using Microsoft.CodeAnalysis.CSharp; -using Microsoft.CodeAnalysis.CSharp.Syntax; - -namespace Jolt.SourceGenerators; - -internal class JoltSyntaxReceiver : ISyntaxReceiver -{ - /// - /// The list of struct declarations that wrap native types. - /// - public readonly List Wrappers = new (); - - /// - /// The list of method declarations that proxy extern methods. - /// - public readonly List Bindings = new (); - - public void OnVisitSyntaxNode(SyntaxNode node) - { - switch (node) - { - case MethodDeclarationSyntax mds: - OnVisitMethodDeclaration(mds); - break; - case StructDeclarationSyntax sds: - OnVisitStructDeclaration(sds); - break; - } - } - - private void OnVisitMethodDeclaration(MethodDeclarationSyntax mds) - { - if (mds is { Parent: ClassDeclarationSyntax { Identifier.ValueText: "Bindings" } }) - { - Bindings.Add(mds); - } - } - - private void OnVisitStructDeclaration(StructDeclarationSyntax sds) - { - if (sds.Modifiers.Any(SyntaxKind.PartialKeyword) == false) - { - return; // skip non-partial - } - - if (IncludesAttributeNamed(sds.AttributeLists, "GenerateBindings")) - { - Wrappers.Add(sds); - } - } - - /// - /// Returns true if the nested list of attributes contains any attribute with the provided name. - /// - private static bool IncludesAttributeNamed(SyntaxList list, string name) - { - foreach (var l in list) - { - foreach (var a in l.Attributes) - { - if (a.Name.ToString() == name) return true; - } - } - - return false; - } -} diff --git a/Jolt.Tests.meta b/Jolt.Tests.meta deleted file mode 100644 index ed6ac82..0000000 --- a/Jolt.Tests.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: d80118a596c24bf182f1686f00bdea19 -timeCreated: 1740961099 \ No newline at end of file diff --git a/Jolt.Tests/ExpectedCoverage.cs b/Jolt.Tests/ExpectedCoverage.cs deleted file mode 100644 index e55c27d..0000000 --- a/Jolt.Tests/ExpectedCoverage.cs +++ /dev/null @@ -1,45 +0,0 @@ -using System.Collections.Generic; -using System.Linq; -using System.Text.RegularExpressions; -using NUnit.Framework; - -namespace Jolt.Tests -{ - public class ExpectedCoverageTests - { - /// - /// Method name prefixes to ignore in the coverage test for whatever reason. Ideally these wouldn't be - /// generated at all but clangsharppinvokegenerator doesn't support excluding methods by name. - /// - private static HashSet ignoreMethodNamePrefix = new() - { - "JPH_Matrix4x4", - "JPH_RMatrix4x4", - "JPH_Quat", - "JPH_Vec3", - }; - - [Test] - public void TestCoverage() - { - var methods = new HashSet(); - - foreach (var method in typeof(UnsafeBindings).GetMethods()) - { - if (ignoreMethodNamePrefix.Any(s => method.Name.StartsWith(s))) - { - continue; - } - - methods.Add(Regex.Replace(method.Name, "[0-9]", "")); // combine numbered variants like Create, Create2, Create3 - } - - foreach (var method in typeof(Bindings).GetMethods()) - { - methods.Remove(method.Name); - } - - Assert.IsEmpty(string.Join("\n", methods)); - } - } -} diff --git a/Jolt.Tests/ExpectedCoverage.cs.meta b/Jolt.Tests/ExpectedCoverage.cs.meta deleted file mode 100644 index 802bc69..0000000 --- a/Jolt.Tests/ExpectedCoverage.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 573cb574ce064ea3960c52f374cebb1e -timeCreated: 1742441202 \ No newline at end of file diff --git a/Jolt.Tests/ExpectedStructSizeTests.cs b/Jolt.Tests/ExpectedStructSizeTests.cs deleted file mode 100644 index c8ac603..0000000 --- a/Jolt.Tests/ExpectedStructSizeTests.cs +++ /dev/null @@ -1,63 +0,0 @@ -using System; -using System.Linq; -using System.Reflection; -using NUnit.Framework; -using Unity.Collections.LowLevel.Unsafe; - -namespace Jolt.Tests -{ - public class ExpectedStructSizeTests - { - [Test] - public void TestStructLayout() - { - var assembly = AppDomain.CurrentDomain.GetAssemblies().FirstOrDefault(a => a.GetName().Name == "Jolt"); - - Assert.IsNotNull(assembly, "Unable to find Jolt assembly"); - - foreach (var type in assembly.GetTypes()) - { - foreach (var attr in GetCustomAttributes(type)) - { - TestStructLayout(type, attr.Type); - } - } - } - - private static void TestStructLayout(Type actualType, Type expectType) - { - Assert.IsTrue(actualType.IsValueType, $"Expected {actualType} to be a value type"); - Assert.IsTrue(expectType.IsValueType, $"Expected {expectType} to be a value type"); - - // TODO generate JPH types with explicit layout - var isNotAutoLayout = actualType.IsLayoutSequential || actualType.IsExplicitLayout; - Assert.IsTrue(isNotAutoLayout, $"Expected {actualType} to have sequential or explicit layout"); - - var actualTypeSize = UnsafeUtility.SizeOf(actualType); - var expectTypeSize = UnsafeUtility.SizeOf(expectType); - - Assert.AreEqual(expectTypeSize, actualTypeSize, $"Expected {actualType} to be {expectTypeSize} bytes, actually {actualTypeSize} bytes"); - - var actualFields = actualType.GetFields(BindingFlags.Public | BindingFlags.NonPublic); - var expectFields = expectType.GetFields(BindingFlags.Public | BindingFlags.NonPublic); - - Assert.AreEqual(expectFields.Length, actualFields.Length, $"Expected {actualType} to have {expectFields.Length} fields, actually {actualFields.Length} fields"); - - for (var i = 0; i < actualFields.Length; i++) - { - var actualField = actualFields[i]; - var expectField = expectFields[i]; - - var actualFieldSize = UnsafeUtility.SizeOf(actualField.FieldType); - var expectFieldSize = UnsafeUtility.SizeOf(expectField.FieldType); - - Assert.AreEqual(actualFieldSize, expectFieldSize, $"Expected {actualType}.{actualField.Name} to be {expectFieldSize} bytes, actually {actualFieldSize} bytes"); - } - } - - private static T[] GetCustomAttributes(Type type) where T : Attribute - { - return type.GetCustomAttributes(typeof(ExpectedStructSizeAttribute), inherit: false) as T[]; - } - } -} diff --git a/Jolt.Tests/ExpectedStructSizeTests.cs.meta b/Jolt.Tests/ExpectedStructSizeTests.cs.meta deleted file mode 100644 index b34514f..0000000 --- a/Jolt.Tests/ExpectedStructSizeTests.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: bf22cfb5fef84fe28defc42980684675 -timeCreated: 1740961196 \ No newline at end of file diff --git a/Jolt.Tests/Jolt.Tests.asmdef b/Jolt.Tests/Jolt.Tests.asmdef deleted file mode 100644 index d2324a2..0000000 --- a/Jolt.Tests/Jolt.Tests.asmdef +++ /dev/null @@ -1,15 +0,0 @@ -{ - "name": "Jolt.Tests", - "references": [ - "Jolt", - "Unity.Collections", - "Unity.Mathematics" - ], - "optionalUnityReferences": [ - "TestAssemblies" - ], - "includePlatforms": [ - "Editor" - ], - "excludePlatforms": [] -} \ No newline at end of file diff --git a/Jolt.Tests/Jolt.Tests.asmdef.meta b/Jolt.Tests/Jolt.Tests.asmdef.meta deleted file mode 100644 index 365fd86..0000000 --- a/Jolt.Tests/Jolt.Tests.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 795cd987791b6af4f975e25e794dc219 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt.Unity.meta b/Jolt.Unity.meta deleted file mode 100644 index 3f066ed..0000000 --- a/Jolt.Unity.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2809a8150fef46a18614390df7d2dee5 -timeCreated: 1717425461 \ No newline at end of file diff --git a/Jolt.Unity/Jolt.Unity.asmdef b/Jolt.Unity~/Jolt.Unity.asmdef similarity index 100% rename from Jolt.Unity/Jolt.Unity.asmdef rename to Jolt.Unity~/Jolt.Unity.asmdef diff --git a/Jolt.Unity/Jolt.Unity.asmdef.meta b/Jolt.Unity~/Jolt.Unity.asmdef.meta similarity index 100% rename from Jolt.Unity/Jolt.Unity.asmdef.meta rename to Jolt.Unity~/Jolt.Unity.asmdef.meta diff --git a/Jolt.Unity/JoltEditorInitialization.cs b/Jolt.Unity~/JoltEditorInitialization.cs similarity index 95% rename from Jolt.Unity/JoltEditorInitialization.cs rename to Jolt.Unity~/JoltEditorInitialization.cs index ba65a97..b148922 100644 --- a/Jolt.Unity/JoltEditorInitialization.cs +++ b/Jolt.Unity~/JoltEditorInitialization.cs @@ -27,7 +27,6 @@ private static void OnPlayModeStateChanged(PlayModeStateChange change) private static void OnEnteredEditMode() { Jolt.Shutdown(); - NativeSafetyHandle.Dispose(); } } } diff --git a/Jolt.Unity/JoltEditorInitialization.cs.meta b/Jolt.Unity~/JoltEditorInitialization.cs.meta similarity index 100% rename from Jolt.Unity/JoltEditorInitialization.cs.meta rename to Jolt.Unity~/JoltEditorInitialization.cs.meta diff --git a/Jolt.Unity/JoltRuntimeInitialization.cs b/Jolt.Unity~/JoltRuntimeInitialization.cs similarity index 100% rename from Jolt.Unity/JoltRuntimeInitialization.cs rename to Jolt.Unity~/JoltRuntimeInitialization.cs diff --git a/Jolt.Unity/JoltRuntimeInitialization.cs.meta b/Jolt.Unity~/JoltRuntimeInitialization.cs.meta similarity index 100% rename from Jolt.Unity/JoltRuntimeInitialization.cs.meta rename to Jolt.Unity~/JoltRuntimeInitialization.cs.meta diff --git a/Jolt/Attributes.meta b/Jolt/Attributes.meta deleted file mode 100644 index 0b7ccb1..0000000 --- a/Jolt/Attributes.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 0bd0a39091094587b5156f1916682d4d -timeCreated: 1716841321 \ No newline at end of file diff --git a/Jolt/Attributes/ExpectedStructSizeAttribute.cs b/Jolt/Attributes/ExpectedStructSizeAttribute.cs deleted file mode 100644 index a24561f..0000000 --- a/Jolt/Attributes/ExpectedStructSizeAttribute.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; -using System.Runtime.CompilerServices; - -[assembly: InternalsVisibleTo("Jolt.Tests")] - -namespace Jolt -{ - /// - /// Indicates a struct should have the same size and layout as another struct. - /// - [AttributeUsage(AttributeTargets.Struct)] - internal class ExpectedStructSizeAttribute : Attribute - { - public Type Type; - - public ExpectedStructSizeAttribute(Type type) - { - Type = type; - } - } -} diff --git a/Jolt/Attributes/ExpectedStructSizeAttribute.cs.meta b/Jolt/Attributes/ExpectedStructSizeAttribute.cs.meta deleted file mode 100644 index 918f832..0000000 --- a/Jolt/Attributes/ExpectedStructSizeAttribute.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 84709fbb0649405196b6aa1193f66fd0 -timeCreated: 1739050103 \ No newline at end of file diff --git a/Jolt/Attributes/GenerateBindingsAttribute.cs b/Jolt/Attributes/GenerateBindingsAttribute.cs deleted file mode 100644 index 23c251a..0000000 --- a/Jolt/Attributes/GenerateBindingsAttribute.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System; - -namespace Jolt -{ - [AttributeUsage(AttributeTargets.Struct)] - internal class GenerateBindingsAttribute : Attribute - { - internal string[] NativeTypes; - - internal GenerateBindingsAttribute(params string[] types) - { - NativeTypes = types; - } - } -} diff --git a/Jolt/Attributes/GenerateBindingsAttribute.cs.meta b/Jolt/Attributes/GenerateBindingsAttribute.cs.meta deleted file mode 100644 index 0ef2fd7..0000000 --- a/Jolt/Attributes/GenerateBindingsAttribute.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: c2fc48704cd44616924b00203c622283 -timeCreated: 1716920132 \ No newline at end of file diff --git a/Jolt/Bindings.meta b/Jolt/Bindings.meta index 6c69647..a46e6d0 100644 --- a/Jolt/Bindings.meta +++ b/Jolt/Bindings.meta @@ -1,3 +1,8 @@ -fileFormatVersion: 2 +fileFormatVersion: 2 guid: 876712de4e0546ad98291e03035fe4b6 -timeCreated: 1704838615 \ No newline at end of file +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Jolt/Bindings/Bindings.cs b/Jolt/Bindings/Bindings.cs deleted file mode 100644 index f741885..0000000 --- a/Jolt/Bindings/Bindings.cs +++ /dev/null @@ -1,30 +0,0 @@ -using System; -using System.Runtime.CompilerServices; -using UnityEngine; - -[assembly: InternalsVisibleTo("Jolt.Tests")] - -namespace Jolt -{ - internal static partial class Bindings - { - [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.SubsystemRegistration)] - internal static void Initialize() - { - InitializeBodyActivationListeners(); - InitializeContactListeners(); - } - - #if JOLT_DISABLE_SAFETY_CHECKS - [Conditional("FALSE")] - #endif - [MethodImpl(MethodImplOptions.AggressiveInlining)] - private static void AssertInitialized() - { - if (!Jolt.Initialized) - { - throw new InvalidOperationException("The Jolt native plugin has not been initialized. You must call Jolt.Initialize() before using Jolt."); - } - } - } -} diff --git a/Jolt/Bindings/Bindings.cs.meta b/Jolt/Bindings/Bindings.cs.meta deleted file mode 100644 index 252877e..0000000 --- a/Jolt/Bindings/Bindings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2b852caed4d74e2b8e2f8a28117c736c -timeCreated: 1742441254 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_Handles.cs b/Jolt/Bindings/Bindings_Handles.cs deleted file mode 100644 index f4574ba..0000000 --- a/Jolt/Bindings/Bindings_Handles.cs +++ /dev/null @@ -1,34 +0,0 @@ -using System; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - private static NativeHandle CreateHandle(T* ptr) where T : unmanaged - { - return new NativeHandle(ptr); - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - private static NativeHandle CreateOwnedHandle(NativeHandle owner, U* ptr) where T : unmanaged where U : unmanaged - { - return owner.CreateOwnedHandle(ptr); - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - private static T* GetOptionalPointer(NativeHandle handle) where T : unmanaged - { - // avoid disposed exception for pointer conversion of optional handles - return handle.RawValue != 0 ? handle.IntoPointer() : null; - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal static nint GetDelegatePointer(Delegate @delegate) - { - return Marshal.GetFunctionPointerForDelegate(@delegate); - } - } -} diff --git a/Jolt/Bindings/Bindings_Handles.cs.meta b/Jolt/Bindings/Bindings_Handles.cs.meta deleted file mode 100644 index 7c1fcb7..0000000 --- a/Jolt/Bindings/Bindings_Handles.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 898df82ccff44e85996cd5cc4ec50079 -timeCreated: 1716746012 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH.cs b/Jolt/Bindings/Bindings_JPH.cs deleted file mode 100644 index 828646d..0000000 --- a/Jolt/Bindings/Bindings_JPH.cs +++ /dev/null @@ -1,37 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - /// - /// A delegate for receiving Jolt traces. - /// - public delegate void TraceHandler(string message); - - /// - /// A delegate for receiving Jolt assertion failures. - /// - public delegate bool AssertFailureHandler(string expr, string message, string file, uint line); - - internal static partial class Bindings - { - public static bool JPH_Init() - { - return UnsafeBindings.JPH_Init(); - } - - public static void JPH_Shutdown() - { - UnsafeBindings.JPH_Shutdown(); - } - - public static void JPH_SetTraceHandler(TraceHandler handler) - { - UnsafeBindings.JPH_SetTraceHandler(Marshal.GetFunctionPointerForDelegate(handler)); - } - - public static void JPH_SetAssertFailureHandler(AssertFailureHandler handler) - { - UnsafeBindings.JPH_SetAssertFailureHandler(Marshal.GetFunctionPointerForDelegate(handler)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH.cs.meta b/Jolt/Bindings/Bindings_JPH.cs.meta deleted file mode 100644 index a4724e0..0000000 --- a/Jolt/Bindings/Bindings_JPH.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7570468086efc5c4eb8d95c332d0694e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_Body.cs b/Jolt/Bindings/Bindings_JPH_Body.cs deleted file mode 100644 index 1eee958..0000000 --- a/Jolt/Bindings/Bindings_JPH_Body.cs +++ /dev/null @@ -1,381 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static BodyID JPH_Body_GetID(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_GetID(body); - } - - public static BodyType JPH_Body_GetBodyType(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_GetBodyType(body); - } - - public static bool JPH_Body_IsRigidBody(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_IsRigidBody(body); - } - - public static bool JPH_Body_IsSoftBody(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_IsSoftBody(body); - } - - public static bool JPH_Body_IsActive(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_IsActive(body); - } - - public static bool JPH_Body_IsStatic(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_IsStatic(body); - } - - public static bool JPH_Body_IsKinematic(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_IsKinematic(body); - } - - public static bool JPH_Body_IsDynamic(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_IsDynamic(body); - } - - public static bool JPH_Body_IsSensor(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_IsSensor(body); - } - - public static void JPH_Body_SetIsSensor(NativeHandle body, bool value) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_SetIsSensor(body, value); - } - - public static void JPH_Body_SetCollideKinematicVsNonDynamic(NativeHandle body, bool value) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_SetCollideKinematicVsNonDynamic(body, value); - } - - public static bool JPH_Body_GetCollideKinematicVsNonDynamic(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_GetCollideKinematicVsNonDynamic(body); - } - - public static void JPH_Body_SetUseManifoldReduction(NativeHandle body, bool value) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_SetUseManifoldReduction(body, value); - } - - public static bool JPH_Body_GetUseManifoldReduction(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_GetUseManifoldReduction(body); - } - - public static bool JPH_Body_GetUseManifoldReductionWithBody(NativeHandle body, NativeHandle other) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_GetUseManifoldReductionWithBody(body, other); - } - - public static void JPH_Body_SetApplyGyroscopicForce(NativeHandle body, bool value) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_SetApplyGyroscopicForce(body, value); - } - - public static bool JPH_Body_GetApplyGyroscopicForce(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_GetApplyGyroscopicForce(body); - } - - public static NativeHandle JPH_Body_GetMotionProperties(NativeHandle body) - { - AssertInitialized(); - - return CreateOwnedHandle(body, UnsafeBindings.JPH_Body_GetMotionProperties(body)); - } - - public static MotionType JPH_Body_GetMotionType(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_GetMotionType(body); - } - - public static void JPH_Body_SetMotionType(NativeHandle body, MotionType motion) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_SetMotionType(body, motion); - } - - public static bool JPH_Body_GetAllowSleeping(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_GetAllowSleeping(body); - } - - public static void JPH_Body_SetAllowSleeping(NativeHandle body, bool allowSleeping) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_SetAllowSleeping(body, allowSleeping); - } - - public static void JPH_Body_ResetSleepTimer(NativeHandle body) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_ResetSleepTimer(body); - } - - public static float JPH_Body_GetFriction(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_GetFriction(body); - } - - public static void JPH_Body_SetFriction(NativeHandle body, float friction) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_SetFriction(body, friction); - } - - public static float JPH_Body_GetRestitution(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_GetRestitution(body); - } - - public static void JPH_Body_SetRestitution(NativeHandle body, float restitution) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_SetRestitution(body, restitution); - } - - public static float3 JPH_Body_GetLinearVelocity(NativeHandle body) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_Body_GetLinearVelocity(body, &result); - return result; - } - - public static void JPH_Body_SetLinearVelocity(NativeHandle body, float3 velocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_SetLinearVelocity(body, &velocity); - } - - public static float3 JPH_Body_GetAngularVelocity(NativeHandle body) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_Body_GetAngularVelocity(body, &result); - return result; - } - - public static void JPH_Body_SetAngularVelocity(NativeHandle body, float3 velocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_SetAngularVelocity(body, &velocity); - } - - public static void JPH_Body_AddForce(NativeHandle body, float3 force) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_AddForce(body, &force); - } - - public static void JPH_Body_AddForceAtPosition(NativeHandle body, float3 force, rvec3 position) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_AddForceAtPosition(body, &force, &position); - } - - public static void JPH_Body_AddTorque(NativeHandle body, float3 force) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_AddTorque(body, &force); - } - - public static float3 JPH_Body_GetAccumulatedForce(NativeHandle body) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_Body_GetAccumulatedForce(body, &result); - return result; - } - - public static float3 JPH_Body_GetAccumulatedTorque(NativeHandle body) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_Body_GetAccumulatedTorque(body, &result); - return result; - } - - public static void JPH_Body_AddImpulse(NativeHandle body, float3 impulse) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_AddImpulse(body, &impulse); - } - - public static void JPH_Body_AddImpulseAtPosition(NativeHandle body, float3 impulse, rvec3 position) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_AddImpulseAtPosition(body, &impulse, &position); - } - - public static void JPH_Body_AddAngularImpulse(NativeHandle body, float3 angularImpulse) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_AddAngularImpulse(body, &angularImpulse); - } - - public static rvec3 JPH_Body_GetPosition(NativeHandle body) - { - AssertInitialized(); - - rvec3 result; - UnsafeBindings.JPH_Body_GetPosition(body, &result); - return result; - } - - public static quaternion JPH_Body_GetRotation(NativeHandle body) - { - AssertInitialized(); - - quaternion result; - UnsafeBindings.JPH_Body_GetRotation(body, &result); - return result; - } - - public static rmatrix4x4 JPH_Body_GetWorldTransform(NativeHandle body) - { - AssertInitialized(); - - rmatrix4x4 result; - UnsafeBindings.JPH_Body_GetWorldTransform(body, &result); - return result; - } - - public static rvec3 JPH_Body_GetCenterOfMassPosition(NativeHandle body) - { - AssertInitialized(); - - rvec3 result; - UnsafeBindings.JPH_Body_GetCenterOfMassPosition(body, &result); - return result; - } - - public static rmatrix4x4 JPH_Body_GetCenterOfMassTransform(NativeHandle body) - { - AssertInitialized(); - - rmatrix4x4 result; - UnsafeBindings.JPH_Body_GetCenterOfMassTransform(body, &result); - return result; - } - - public static rmatrix4x4 JPH_Body_GetInverseCenterOfMassTransform(NativeHandle body) - { - AssertInitialized(); - - rmatrix4x4 result; - UnsafeBindings.JPH_Body_GetInverseCenterOfMassTransform(body, &result); - return result; - } - - public static AABox JPH_Body_GetWorldSpaceBounds(NativeHandle body) - { - AssertInitialized(); - - AABox result; - UnsafeBindings.JPH_Body_GetWorldSpaceBounds(body, (JPH_AABox*)&result); - return result; - } - - public static float3 JPH_Body_GetWorldSpaceSurfaceNormal(NativeHandle body, SubShapeID subShapeID, rvec3 position) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_Body_GetWorldSpaceSurfaceNormal(body, subShapeID.Value, &position, &result); - return result; - } - - public static void JPH_Body_SetUserData(NativeHandle body, ulong userData) - { - AssertInitialized(); - - UnsafeBindings.JPH_Body_SetUserData(body, userData); - } - - public static ulong JPH_Body_GetUserData(NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Body_GetUserData(body); - } - - public static NativeHandle JPH_Body_GetFixedToWorldBody() - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_Body_GetFixedToWorldBody()); // TODO use single static safety handle? - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_Body.cs.meta b/Jolt/Bindings/Bindings_JPH_Body.cs.meta deleted file mode 100644 index e099fc2..0000000 --- a/Jolt/Bindings/Bindings_JPH_Body.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 63c787fe101949fe85cc3e2d7f50ca70 -timeCreated: 1716744140 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_BodyActivationListener.cs b/Jolt/Bindings/Bindings_JPH_BodyActivationListener.cs deleted file mode 100644 index d200e26..0000000 --- a/Jolt/Bindings/Bindings_JPH_BodyActivationListener.cs +++ /dev/null @@ -1,98 +0,0 @@ -using System; -using System.Runtime.InteropServices; -using UnityEngine; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_BodyActivationListener_Create(IBodyActivationListener listener) - { - AssertInitialized(); - - // See Bindings_JPH_ContactListener for comments. - - var gch = GCHandle.Alloc(listener); - var ptr = GCHandle.ToIntPtr(gch); - var handle = CreateHandle(UnsafeBindings.JPH_BodyActivationListener_Create(ptr)); - - ManagedReference.Add(handle, gch); - - return handle; - } - - public static void JPH_BodyActivationListener_Destroy(NativeHandle listener) - { - AssertInitialized(); - - if (ManagedReference.Remove(listener, out var gch)) - { - gch.Free(); - } - else - { - Debug.LogError("Missing GCHandle for managed body listener!"); - } - - UnsafeBindings.JPH_BodyActivationListener_Destroy(listener); - - listener.Dispose(); - } - - private static void InitializeBodyActivationListeners() - { - fixed (JPH_BodyActivationListener_Procs* ptr = &UnsafeBodyActivationListenerProcs) - { - UnsafeBindings.JPH_BodyActivationListener_SetProcs(ptr); - } - } - - /// - /// Static procs for marshalling; the lookup from static to instance context happens in each method. - /// - private static readonly JPH_BodyActivationListener_Procs UnsafeBodyActivationListenerProcs = new () { - OnBodyActivated = GetDelegatePointer((UnsafeBodyActivated) UnsafeBodyActivatedCallback), - OnBodyDeactivated = GetDelegatePointer((UnsafeBodyDeactivated) UnsafeBodyDeactivatedCallback), - }; - - /// - /// Unsafe static delegate for OnBodyActivated. - /// - private delegate void UnsafeBodyActivated(IntPtr udata, BodyID bodyID, ulong bodyUserData); - - /// - /// Unsafe static delegate for OnBodyDeactivated. - /// - private delegate void UnsafeBodyDeactivated(IntPtr udata, BodyID bodyID, ulong bodyUserData); - - /// - /// Unsafe static implementation for OnBodyActivated. - /// - private static void UnsafeBodyActivatedCallback(IntPtr udata, BodyID bodyID, ulong bodyUserData) - { - try - { - ManagedReference.Deref(udata).OnBodyActivated(bodyID, bodyUserData); - } - catch (Exception e) - { - Debug.LogException(e); - } - } - - /// - /// Unsafe static implementation for OnBodyDeactivated. - /// - private static void UnsafeBodyDeactivatedCallback(IntPtr udata, BodyID bodyID, ulong bodyUserData) - { - try - { - ManagedReference.Deref(udata).OnBodyDeactivated(bodyID, bodyUserData); - } - catch (Exception e) - { - Debug.LogException(e); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_BodyActivationListener.cs.meta b/Jolt/Bindings/Bindings_JPH_BodyActivationListener.cs.meta deleted file mode 100644 index 0e8d8f2..0000000 --- a/Jolt/Bindings/Bindings_JPH_BodyActivationListener.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 3e92ddd965c64172b157351787bf5e1a -timeCreated: 1716742230 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_BodyCreationSettings.cs b/Jolt/Bindings/Bindings_JPH_BodyCreationSettings.cs deleted file mode 100644 index 867ca47..0000000 --- a/Jolt/Bindings/Bindings_JPH_BodyCreationSettings.cs +++ /dev/null @@ -1,128 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_BodyCreationSettings_Create() - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BodyCreationSettings_Create()); - } - - public static NativeHandle JPH_BodyCreationSettings_Create(NativeHandle settings, rvec3 position, quaternion rotation, MotionType motion, ObjectLayer layer) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BodyCreationSettings_Create2(settings, &position, &rotation, motion, layer)); - } - - public static NativeHandle JPH_BodyCreationSettings_Create(NativeHandle shape, rvec3 position, quaternion rotation, MotionType motion, ObjectLayer layer) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BodyCreationSettings_Create3(shape, &position, &rotation, motion, layer)); - } - - public static void JPH_BodyCreationSettings_Destroy(ref NativeHandle settings) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyCreationSettings_Destroy(settings); - settings.Dispose(); - } - - public static rvec3 JPH_BodyCreationSettings_GetPosition(NativeHandle settings) - { - AssertInitialized(); - - rvec3 result; - UnsafeBindings.JPH_BodyCreationSettings_GetPosition(settings, &result); - return result; - } - - public static void JPH_BodyCreationSettings_SetPosition(NativeHandle settings, rvec3 value) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyCreationSettings_SetPosition(settings, &value); - } - - public static quaternion JPH_BodyCreationSettings_GetRotation(NativeHandle settings) - { - AssertInitialized(); - - quaternion result; - UnsafeBindings.JPH_BodyCreationSettings_GetRotation(settings, &result); - return result; - } - - public static void JPH_BodyCreationSettings_SetRotation(NativeHandle settings, quaternion value) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyCreationSettings_SetRotation(settings, &value); - } - - public static float3 JPH_BodyCreationSettings_GetLinearVelocity(NativeHandle settings) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_BodyCreationSettings_GetLinearVelocity(settings, &result); - return result; - } - - public static void JPH_BodyCreationSettings_SetLinearVelocity(NativeHandle settings, float3 velocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyCreationSettings_SetLinearVelocity(settings, &velocity); - } - - public static float3 JPH_BodyCreationSettings_GetAngularVelocity(NativeHandle settings) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_BodyCreationSettings_GetAngularVelocity(settings, &result); - return result; - } - - public static void JPH_BodyCreationSettings_SetAngularVelocity(NativeHandle settings, float3 velocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyCreationSettings_SetAngularVelocity(settings, &velocity); - } - - public static MotionType JPH_BodyCreationSettings_GetMotionType(NativeHandle settings) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyCreationSettings_GetMotionType(settings); - } - - public static void JPH_BodyCreationSettings_SetMotionType(NativeHandle settings, MotionType value) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyCreationSettings_SetMotionType(settings, value); - } - - public static AllowedDOFs JPH_BodyCreationSettings_GetAllowedDOFs(NativeHandle settings) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyCreationSettings_GetAllowedDOFs(settings); - } - - public static void JPH_BodyCreationSettings_SetAllowedDOFs(NativeHandle settings, AllowedDOFs value) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyCreationSettings_SetAllowedDOFs(settings, value); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_BodyCreationSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_BodyCreationSettings.cs.meta deleted file mode 100644 index 33440e3..0000000 --- a/Jolt/Bindings/Bindings_JPH_BodyCreationSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 161652f8471f48a44af73b970661f9e4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_BodyFilter.cs b/Jolt/Bindings/Bindings_JPH_BodyFilter.cs deleted file mode 100644 index 5df5820..0000000 --- a/Jolt/Bindings/Bindings_JPH_BodyFilter.cs +++ /dev/null @@ -1,28 +0,0 @@ -using System; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_BodyFilter_SetProcs(NativeHandle filter) - { - AssertInitialized(); - - throw new NotImplementedException(); - } - - public static NativeHandle JPH_BodyFilter_Create() - { - AssertInitialized(); - - throw new NotImplementedException(); - } - - public static void JPH_BodyFilter_Destroy(NativeHandle filter) - { - AssertInitialized(); - - throw new NotImplementedException(); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_BodyFilter.cs.meta b/Jolt/Bindings/Bindings_JPH_BodyFilter.cs.meta deleted file mode 100644 index 20a4e2a..0000000 --- a/Jolt/Bindings/Bindings_JPH_BodyFilter.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ef99e81c205943e3860904fcb7e26728 -timeCreated: 1726415308 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_BodyInterface.cs b/Jolt/Bindings/Bindings_JPH_BodyInterface.cs deleted file mode 100644 index 20a5e46..0000000 --- a/Jolt/Bindings/Bindings_JPH_BodyInterface.cs +++ /dev/null @@ -1,527 +0,0 @@ -using System; -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_BodyInterface_DestroyBody(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_DestroyBody(@interface, bodyID); - - // TODO mark any active body handles for this bodyID as disposed - } - - public static BodyID JPH_BodyInterface_CreateAndAddBody(NativeHandle @interface, NativeHandle settings, Activation activation) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_CreateAndAddBody(@interface, settings, activation); - } - - public static NativeHandle JPH_BodyInterface_CreateBody(NativeHandle @interface, NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BodyInterface_CreateBody(@interface, settings)); - } - - public static NativeHandle JPH_BodyInterface_CreateBodyWithID(NativeHandle @interface, BodyID bodyID, NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BodyInterface_CreateBodyWithID(@interface, bodyID, settings)); - } - - public static NativeHandle JPH_BodyInterface_CreateBodyWithoutID(NativeHandle @interface, NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BodyInterface_CreateBodyWithoutID(@interface, settings)); - } - - public static void JPH_BodyInterface_DestroyBodyWithoutID(NativeHandle @interface, NativeHandle body) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_DestroyBodyWithoutID(@interface, body); - } - - public static bool JPH_BodyInterface_AssignBodyID(NativeHandle @interface, NativeHandle body) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_AssignBodyID(@interface, body); - } - - public static bool JPH_BodyInterface_AssignBodyID(NativeHandle @interface, NativeHandle body, BodyID bodyID) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_AssignBodyID2(@interface, body, bodyID); - } - - public static NativeHandle JPH_BodyInterface_UnassignBodyID(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - // TODO is CreateHandle correct? Does that create a duplicate pointer to the body? - - // return CreateHandle(UnsafeBindings.JPH_BodyInterface_UnassignBodyID(GetPointer(@interface), bodyID)); - - throw new NotImplementedException(); - } - - public static NativeHandle JPH_BodyInterface_CreateSoftBody(NativeHandle @interface, NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BodyInterface_CreateSoftBody(@interface, settings)); - } - - public static NativeHandle JPH_BodyInterface_CreateSoftBodyWithID(NativeHandle @interface, BodyID bodyID, NativeHandle settings) - { - return CreateHandle(UnsafeBindings.JPH_BodyInterface_CreateSoftBodyWithID(@interface, bodyID, settings)); - } - - public static NativeHandle JPH_BodyInterface_CreateSoftBodyWithoutID(NativeHandle @interface, NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BodyInterface_CreateSoftBodyWithoutID(@interface, settings)); - } - - public static BodyID JPH_BodyInterface_CreateAndAddSoftBody(NativeHandle @interface, NativeHandle settings, Activation activation) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_CreateAndAddSoftBody(@interface, settings, activation); - } - - public static void JPH_BodyInterface_AddBody(NativeHandle @interface, BodyID bodyID, Activation activation) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_AddBody(@interface, bodyID, activation); - } - - public static void JPH_BodyInterface_RemoveBody(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_RemoveBody(@interface, bodyID); - } - - public static void JPH_BodyInterface_RemoveAndDestroyBody(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_RemoveAndDestroyBody(@interface, bodyID); - } - - public static bool JPH_BodyInterface_IsActive(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_IsActive(@interface, bodyID); - } - - public static bool JPH_BodyInterface_IsAdded(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_IsAdded(@interface, bodyID); - } - - public static bool JPH_BodyInterface_GetBodyType(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_IsAdded(@interface, bodyID); - } - - public static void JPH_BodyInterface_SetLinearVelocity(NativeHandle @interface, BodyID bodyID, float3 velocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetLinearVelocity(@interface, bodyID, &velocity); - } - - public static float3 JPH_BodyInterface_GetLinearVelocity(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_BodyInterface_GetLinearVelocity(@interface, bodyID, &result); - return result; - } - - public static rvec3 JPH_BodyInterface_GetCenterOfMassPosition(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - rvec3 result; - UnsafeBindings.JPH_BodyInterface_GetCenterOfMassPosition(@interface, bodyID, &result); - return result; - } - - public static MotionType JPH_BodyInterface_GetMotionType(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_GetMotionType(@interface, bodyID); - } - - public static void JPH_BodyInterface_SetMotionType(NativeHandle @interface, BodyID bodyID, MotionType motion, Activation activation) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetMotionType(@interface, bodyID, motion, activation); - } - - public static float JPH_BodyInterface_GetRestitution(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_GetRestitution(@interface, bodyID); - } - - public static void JPH_BodyInterface_SetRestitution(NativeHandle @interface, BodyID bodyID, float restitution) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetRestitution(@interface, bodyID, restitution); - } - - public static float JPH_BodyInterface_GetFriction(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_GetFriction(@interface, bodyID); - } - - public static void JPH_BodyInterface_SetFriction(NativeHandle @interface, BodyID bodyID, float friction) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetFriction(@interface, bodyID, friction); - } - - public static void JPH_BodyInterface_SetPosition(NativeHandle @interface, BodyID bodyID, rvec3 position, Activation activation) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetPosition(@interface, bodyID, &position, activation); - } - - public static rvec3 JPH_BodyInterface_GetPosition(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - rvec3 result; - UnsafeBindings.JPH_BodyInterface_GetPosition(@interface, bodyID, &result); - return result; - } - - public static void JPH_BodyInterface_SetRotation(NativeHandle @interface, BodyID bodyID, quaternion rotation, Activation activation) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetRotation(@interface, bodyID, &rotation, activation); - } - - public static quaternion JPH_BodyInterface_GetRotation(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - quaternion result; - UnsafeBindings.JPH_BodyInterface_GetRotation(@interface, bodyID, &result); - return result; - } - - public static void JPH_BodyInterface_SetPositionAndRotation(NativeHandle @interface, BodyID bodyID, rvec3 position, quaternion rotation, Activation activation) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetPositionAndRotation(@interface, bodyID, &position, &rotation, activation); - } - - public static void JPH_BodyInterface_SetPositionAndRotationWhenChanged(NativeHandle @interface, BodyID bodyID, rvec3 position, quaternion rotation, Activation activation) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetPositionAndRotationWhenChanged(@interface, bodyID, &position, &rotation, activation); - } - - public static void JPH_BodyInterface_GetPositionAndRotation(NativeHandle @interface, BodyID bodyID, out rvec3 position, out quaternion rotation) - { - AssertInitialized(); - - position = default; - rotation = default; - - fixed (rvec3* positionPtr = &position) - fixed (quaternion* rotationPtr = &rotation) - { - UnsafeBindings.JPH_BodyInterface_GetPositionAndRotation(@interface, bodyID, positionPtr, rotationPtr); - } - } - - public static void JPH_BodyInterface_SetPositionRotationAndVelocity(NativeHandle @interface, BodyID bodyID, rvec3 position, quaternion rotation, float3 linearVelocity, float3 angularVelocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetPositionRotationAndVelocity(@interface, bodyID, &position, &rotation, &linearVelocity, &angularVelocity); - } - - public static NativeHandle JPH_BodyInterface_GetShape(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BodyInterface_GetShape(@interface, bodyID)); // TODO reuse existing shape handle - } - - public static void JPH_BodyInterface_SetShape(NativeHandle @interface, BodyID bodyID, NativeHandle shape, bool updateMassProperties, Activation activation) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetShape(@interface, bodyID, shape, updateMassProperties, activation); - } - - public static void JPH_BodyInterface_NotifyShapeChanged(NativeHandle @interface, BodyID bodyID, float3 previousCenterOfMass, bool updateMassProperties, Activation activation) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_NotifyShapeChanged(@interface, bodyID, &previousCenterOfMass, updateMassProperties, activation); - } - - public static void JPH_BodyInterface_ActivateBody(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_ActivateBody(@interface, bodyID); - } - - public static void JPH_BodyInterface_DeactivateBody(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_DeactivateBody(@interface, bodyID); - } - - public static void JPH_BodyInterface_SetObjectLayer(NativeHandle @interface, BodyID bodyID, ObjectLayer layer) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetObjectLayer(@interface, bodyID, layer); - } - - public static ObjectLayer JPH_BodyInterface_GetObjectLayer(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_GetObjectLayer(@interface, bodyID); - } - - public static rmatrix4x4 JPH_BodyInterface_GetWorldTransform(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - rmatrix4x4 result; - UnsafeBindings.JPH_BodyInterface_GetWorldTransform(@interface, bodyID, &result); - return result; - } - - public static rmatrix4x4 JPH_BodyInterface_GetCenterOfMassTransform(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - rmatrix4x4 result; - UnsafeBindings.JPH_BodyInterface_GetCenterOfMassTransform(@interface, bodyID, &result); - return result; - } - - public static void JPH_BodyInterface_MoveKinematic(NativeHandle @interface, BodyID bodyID, rvec3 targetPosition, quaternion targetRotation, float deltaTime) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_MoveKinematic(@interface, bodyID, &targetPosition, &targetRotation, deltaTime); - } - - public static bool JPH_BodyInterface_ApplyBuoyancyImpulse(NativeHandle @interface, BodyID bodyID, rvec3 surfacePosition, float3 surfaceNormal, float buoyancy, float linearDrag, float angularDrag, float3 fluidVelocity, float3 gravity, float deltaTime) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_ApplyBuoyancyImpulse(@interface, bodyID, &surfacePosition, &surfaceNormal, buoyancy, linearDrag, angularDrag, &fluidVelocity, &gravity, deltaTime); - } - - public static void JPH_BodyInterface_SetLinearAndAngularVelocity(NativeHandle @interface, BodyID bodyID, float3 linearVelocity, float3 angularVelocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetLinearAndAngularVelocity(@interface, bodyID, &linearVelocity, &angularVelocity); - } - - public static void JPH_BodyInterface_GetLinearAndAngularVelocity(NativeHandle @interface, BodyID bodyID, out float3 linearVelocity, out float3 angularVelocity) - { - AssertInitialized(); - - linearVelocity = default; - angularVelocity = default; - - fixed (float3* linearVelocityPtr = &linearVelocity) - fixed (float3* angularVelocityPtr = &angularVelocity) - { - UnsafeBindings.JPH_BodyInterface_GetLinearAndAngularVelocity(@interface, bodyID, linearVelocityPtr, angularVelocityPtr); - } - } - - public static void JPH_BodyInterface_AddLinearVelocity(NativeHandle @interface, BodyID bodyID, float3 linearVelocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_AddLinearVelocity(@interface, bodyID, &linearVelocity); - } - - public static void JPH_BodyInterface_AddLinearAndAngularVelocity(NativeHandle @interface, BodyID bodyID, float3 linearVelocity, float3 angularVelocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_AddLinearAndAngularVelocity(@interface, bodyID, &linearVelocity, &angularVelocity); - } - - public static void JPH_BodyInterface_SetAngularVelocity(NativeHandle @interface, BodyID bodyID, float3 angularVelocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetAngularVelocity(@interface, bodyID, &angularVelocity); - } - - public static float3 JPH_BodyInterface_GetAngularVelocity(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_BodyInterface_GetAngularVelocity(@interface, bodyID, &result); - return result; - } - - public static float3 JPH_BodyInterface_GetPointVelocity(NativeHandle @interface, BodyID bodyID, rvec3 point) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_BodyInterface_GetPointVelocity(@interface, bodyID, &point, &result); - return result; - } - - public static void JPH_BodyInterface_AddForce(NativeHandle @interface, BodyID bodyID, float3 force) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_AddForce(@interface, bodyID, &force); - } - - public static void JPH_BodyInterface_AddForce(NativeHandle @interface, BodyID bodyID, float3 force, rvec3 point) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_AddForce2(@interface, bodyID, &force, &point); - } - - public static void JPH_BodyInterface_AddTorque(NativeHandle @interface, BodyID bodyID, float3 torque) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_AddTorque(@interface, bodyID, &torque); - } - - public static void JPH_BodyInterface_AddForceAndTorque(NativeHandle @interface, BodyID bodyID, float3 force, float3 torque) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_AddForceAndTorque(@interface, bodyID, &force, &torque); - } - - public static void JPH_BodyInterface_AddImpulse(NativeHandle @interface, BodyID bodyID, float3 impulse) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_AddImpulse(@interface, bodyID, &impulse); - } - - public static void JPH_BodyInterface_AddImpulse(NativeHandle @interface, BodyID bodyID, float3 impulse, rvec3 point) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_AddImpulse2(@interface, bodyID, &impulse, &point); - } - - public static void JPH_BodyInterface_AddAngularImpulse(NativeHandle @interface, BodyID bodyID, float3 angularImpulse) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_AddAngularImpulse(@interface, bodyID, &angularImpulse); - } - - public static void JPH_BodyInterface_SetMotionQuality(NativeHandle @interface, BodyID bodyID, MotionQuality quality) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetMotionQuality(@interface, bodyID, quality); - } - - public static MotionQuality JPH_BodyInterface_GetMotionQuality(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_GetMotionQuality(@interface, bodyID); - } - - public static float4x4 JPH_BodyInterface_GetInverseInertia(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - float4x4 result; - UnsafeBindings.JPH_BodyInterface_GetInverseInertia(@interface, bodyID, &result); - return result; - } - - public static void JPH_BodyInterface_SetGravityFactor(NativeHandle @interface, BodyID bodyID, float gravityFactor) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetGravityFactor(@interface, bodyID, gravityFactor); - } - - public static float JPH_BodyInterface_GetGravityFactor(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_GetGravityFactor(@interface, bodyID); - } - - public static void JPH_BodyInterface_InvalidateContactCache(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_InvalidateContactCache(@interface, bodyID); - } - - public static void JPH_BodyInterface_SetUserData(NativeHandle @interface, BodyID bodyID, ulong data) - { - AssertInitialized(); - - UnsafeBindings.JPH_BodyInterface_SetUserData(@interface, bodyID, data); - } - - public static ulong JPH_BodyInterface_GetUserData(NativeHandle @interface, BodyID bodyID) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BodyInterface_GetUserData(@interface, bodyID); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_BodyInterface.cs.meta b/Jolt/Bindings/Bindings_JPH_BodyInterface.cs.meta deleted file mode 100644 index cc792f1..0000000 --- a/Jolt/Bindings/Bindings_JPH_BodyInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 429e741e01bbd5946a733cb5e120529c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_BoxShape.cs b/Jolt/Bindings/Bindings_JPH_BoxShape.cs deleted file mode 100644 index 8374c68..0000000 --- a/Jolt/Bindings/Bindings_JPH_BoxShape.cs +++ /dev/null @@ -1,30 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_BoxShape_Create(float3 halfExtent, float convexRadius) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BoxShape_Create(&halfExtent, convexRadius)); - } - - public static float3 JPH_BoxShape_GetHalfExtent(NativeHandle shape) - { - AssertInitialized(); - - float3 result = default; - UnsafeBindings.JPH_BoxShape_GetHalfExtent(shape, &result); - return result; - } - - public static float JPH_BoxShape_GetConvexRadius(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BoxShape_GetConvexRadius(shape); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_BoxShape.cs.meta b/Jolt/Bindings/Bindings_JPH_BoxShape.cs.meta deleted file mode 100644 index 5695932..0000000 --- a/Jolt/Bindings/Bindings_JPH_BoxShape.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 99547448e88beb14382cf558985dfbfe -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_BoxShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_BoxShapeSettings.cs deleted file mode 100644 index 0fa66a4..0000000 --- a/Jolt/Bindings/Bindings_JPH_BoxShapeSettings.cs +++ /dev/null @@ -1,21 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_BoxShapeSettings_Create(float3 halfExtent, float convexRadius) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BoxShapeSettings_Create(&halfExtent, convexRadius)); - } - - public static NativeHandle JPH_BoxShapeSettings_CreateShape(NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BoxShapeSettings_CreateShape(settings)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_BoxShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_BoxShapeSettings.cs.meta deleted file mode 100644 index b92c710..0000000 --- a/Jolt/Bindings/Bindings_JPH_BoxShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f48caade9eb262f40ac321aeb2703b21 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerFilter.cs b/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerFilter.cs deleted file mode 100644 index 9a753d6..0000000 --- a/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerFilter.cs +++ /dev/null @@ -1,28 +0,0 @@ -using System; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_BroadPhaseLayerFilter_SetProcs(NativeHandle filter) - { - AssertInitialized(); - - throw new NotImplementedException(); - } - - public static NativeHandle JPH_BroadPhaseLayerFilter_Create() - { - AssertInitialized(); - - throw new NotImplementedException(); - } - - public static void JPH_BroadPhaseLayerFilter_Destroy(NativeHandle filter) - { - AssertInitialized(); - - throw new NotImplementedException(); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerFilter.cs.meta b/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerFilter.cs.meta deleted file mode 100644 index 6eb0ae8..0000000 --- a/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerFilter.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: c7254c6a18164707bc42da468a73e634 -timeCreated: 1726414097 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerInterfaceMask.cs b/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerInterfaceMask.cs deleted file mode 100644 index 92ac660..0000000 --- a/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerInterfaceMask.cs +++ /dev/null @@ -1,19 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_BroadPhaseLayerInterfaceMask_Create(uint numBroadPhaseLayers) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BroadPhaseLayerInterfaceMask_Create(numBroadPhaseLayers)); - } - - public static void JPH_BroadPhaseLayerInterfaceMask_ConfigureLayer(NativeHandle @interface, BroadPhaseLayer broadPhaseLayer, uint groupsToInclude, uint groupsToExclude) - { - AssertInitialized(); - - UnsafeBindings.JPH_BroadPhaseLayerInterfaceMask_ConfigureLayer(@interface, broadPhaseLayer, groupsToInclude, groupsToExclude); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerInterfaceMask.cs.meta b/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerInterfaceMask.cs.meta deleted file mode 100644 index 451667a..0000000 --- a/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerInterfaceMask.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3dcd7bd1e17ac5e4e8fe87730d3f75d0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerInterfaceTable.cs b/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerInterfaceTable.cs deleted file mode 100644 index e43f911..0000000 --- a/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerInterfaceTable.cs +++ /dev/null @@ -1,19 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_BroadPhaseLayerInterfaceTable_Create(uint numObjectLayers, uint numBroadPhaseLayers) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_BroadPhaseLayerInterfaceTable_Create(numObjectLayers, numBroadPhaseLayers)); - } - - public static void JPH_BroadPhaseLayerInterfaceTable_MapObjectToBroadPhaseLayer(NativeHandle @interface, ObjectLayer objectLayer, BroadPhaseLayer broadPhaseLayer) - { - AssertInitialized(); - - UnsafeBindings.JPH_BroadPhaseLayerInterfaceTable_MapObjectToBroadPhaseLayer(@interface, objectLayer, broadPhaseLayer); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerInterfaceTable.cs.meta b/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerInterfaceTable.cs.meta deleted file mode 100644 index 0cd6251..0000000 --- a/Jolt/Bindings/Bindings_JPH_BroadPhaseLayerInterfaceTable.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 13f44f6135577c642865f5d1b98b1d68 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_BroadPhaseQuery.cs b/Jolt/Bindings/Bindings_JPH_BroadPhaseQuery.cs deleted file mode 100644 index 4a47942..0000000 --- a/Jolt/Bindings/Bindings_JPH_BroadPhaseQuery.cs +++ /dev/null @@ -1,149 +0,0 @@ -using System; -using System.Runtime.InteropServices; -using Unity.Collections.LowLevel.Unsafe; -using Unity.Mathematics; -using UnityEngine; - -namespace Jolt -{ - public partial struct BroadPhaseQuery - { - /// - /// Callback signature for CastRay. - /// - public delegate void CastRayCallback(ref BroadPhaseCastResult result); - - /// - /// Callback signature for CollideAABox, CollideSphere, and CollidePoint. - /// - public delegate void CollideCallback(BodyID result); - } - - internal static unsafe partial class Bindings - { - public static bool JPH_BroadPhaseQuery_CastRay( - NativeHandle query, float3 origin, float3 direction, BroadPhaseQuery.CastRayCallback callback, - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BroadPhaseQuery_CastRay( - query, &origin, &direction, - callback: UnsafeBroadPhaseQueryCallbacks.UnsafeCastRayCallbackPointer, - userData: GetDelegatePointer(callback), - GetOptionalPointer(broadPhaseLayerFilter), - GetOptionalPointer(objectLayerFilter) - ); - } - - public static bool JPH_BroadPhaseQuery_CastRay( - NativeHandle query, float3 origin, float3 direction, - CollisionCollectorType collisionCollectorType, BroadPhaseQuery.CastRayCallback callback, - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BroadPhaseQuery_CastRay2( - query, &origin, &direction, collisionCollectorType, - callback: UnsafeBroadPhaseQueryCallbacks.UnsafeCastRayCallbackPointer, - userData: GetDelegatePointer(callback), - GetOptionalPointer(broadPhaseLayerFilter), - GetOptionalPointer(objectLayerFilter) - ); - } - - public static bool JPH_BroadPhaseQuery_CollideAABox( - NativeHandle query, AABox box, BroadPhaseQuery.CollideCallback callback, - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BroadPhaseQuery_CollideAABox( - query, (JPH_AABox*)&box, - callback: UnsafeBroadPhaseQueryCallbacks.UnsafeCollideCallbackPointer, - userData: GetDelegatePointer(callback), - GetOptionalPointer(broadPhaseLayerFilter), - GetOptionalPointer(objectLayerFilter) - ); - } - - public static bool JPH_BroadPhaseQuery_CollideSphere( - NativeHandle query, float3 center, float radius, BroadPhaseQuery.CollideCallback callback, - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BroadPhaseQuery_CollideSphere( - query, ¢er, radius, - callback: UnsafeBroadPhaseQueryCallbacks.UnsafeCollideCallbackPointer, - userData: GetDelegatePointer(callback), - broadPhaseLayerFilter, objectLayerFilter - ); - } - - public static bool JPH_BroadPhaseQuery_CollidePoint( - NativeHandle query, float3 point, BroadPhaseQuery.CollideCallback callback, - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_BroadPhaseQuery_CollidePoint( - query, &point, - callback: UnsafeBroadPhaseQueryCallbacks.UnsafeCollideCallbackPointer, - userData: GetDelegatePointer(callback), - broadPhaseLayerFilter, objectLayerFilter - ); - } - } - - /// - /// Static function pointers for JPH_BroadPhaseQuery queries; the individual callback pointers are passed via the user data. - /// - internal static unsafe class UnsafeBroadPhaseQueryCallbacks - { - private delegate void UnsafeCastRayDelegate(nint udata, BroadPhaseCastResult* result); - private delegate void UnsafeCollideDelegate(nint udata, BodyID result); - - public static nint UnsafeCastRayCallbackPointer = Marshal.GetFunctionPointerForDelegate( - (UnsafeCastRayDelegate)UnsafeCastRayCallback - ); - - public static nint UnsafeCollideCallbackPointer = Marshal.GetFunctionPointerForDelegate( - (UnsafeCollideDelegate)UnsafeCollideCallback - ); - - private static void UnsafeCastRayCallback(nint udata, BroadPhaseCastResult* result) - { - try - { - Marshal.GetDelegateForFunctionPointer(udata).Invoke(ref UnsafeUtility.AsRef(result)); - } - catch (Exception e) - { - Debug.LogException(e); - } - } - - private static void UnsafeCollideCallback(nint udata, BodyID result) - { - try - { - Marshal.GetDelegateForFunctionPointer(udata).Invoke(result); - } - catch (Exception e) - { - Debug.LogException(e); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_BroadPhaseQuery.cs.meta b/Jolt/Bindings/Bindings_JPH_BroadPhaseQuery.cs.meta deleted file mode 100644 index 32cfd61..0000000 --- a/Jolt/Bindings/Bindings_JPH_BroadPhaseQuery.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2b60840053954f1c8424e131420750ef -timeCreated: 1740965068 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_CapsuleShape.cs b/Jolt/Bindings/Bindings_JPH_CapsuleShape.cs deleted file mode 100644 index a0e3104..0000000 --- a/Jolt/Bindings/Bindings_JPH_CapsuleShape.cs +++ /dev/null @@ -1,26 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_CapsuleShape_Create(float halfHeightOfCylinder, float radius) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_CapsuleShape_Create(halfHeightOfCylinder, radius)); - } - - public static float JPH_CapsuleShape_GetRadius(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_CapsuleShape_GetRadius(shape); - } - - public static float JPH_CapsuleShape_GetHalfHeightOfCylinder(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_CapsuleShape_GetHalfHeightOfCylinder(shape); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_CapsuleShape.cs.meta b/Jolt/Bindings/Bindings_JPH_CapsuleShape.cs.meta deleted file mode 100644 index e2f6390..0000000 --- a/Jolt/Bindings/Bindings_JPH_CapsuleShape.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b54d968e217829b4981d5fc579b84a3f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_CapsuleShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_CapsuleShapeSettings.cs deleted file mode 100644 index d3e02d1..0000000 --- a/Jolt/Bindings/Bindings_JPH_CapsuleShapeSettings.cs +++ /dev/null @@ -1,19 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_CapsuleShapeSettings_Create(float halfHeightOfCylinder, float radius) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_CapsuleShapeSettings_Create(halfHeightOfCylinder, radius)); - } - - public static NativeHandle JPH_CapsuleShapeSettings_CreateShape(NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_CapsuleShapeSettings_CreateShape(settings)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_CapsuleShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_CapsuleShapeSettings.cs.meta deleted file mode 100644 index 1b036e0..0000000 --- a/Jolt/Bindings/Bindings_JPH_CapsuleShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f5af3fec04fff3a418ff5385634b589a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_CollideShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_CollideShapeSettings.cs deleted file mode 100644 index 28eb716..0000000 --- a/Jolt/Bindings/Bindings_JPH_CollideShapeSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_CollideShapeSettings_Init(ref CollideShapeSettings settings) - { - AssertInitialized(); - - fixed (CollideShapeSettings* ptr = &settings) - { - UnsafeBindings.JPH_CollideShapeSettings_Init((JPH_CollideShapeSettings*)ptr); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_CollideShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_CollideShapeSettings.cs.meta deleted file mode 100644 index e44dfd7..0000000 --- a/Jolt/Bindings/Bindings_JPH_CollideShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ccd647e9d11c4979b45453aef799c950 -timeCreated: 1741874888 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_CompoundShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_CompoundShapeSettings.cs deleted file mode 100644 index fd561c4..0000000 --- a/Jolt/Bindings/Bindings_JPH_CompoundShapeSettings.cs +++ /dev/null @@ -1,42 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_CompoundShapeSettings_AddShape(NativeHandle handle, float3 position, quaternion rotation, NativeHandle settings, uint userData = 0) - { - AssertInitialized(); - - UnsafeBindings.JPH_CompoundShapeSettings_AddShape(handle, &position, &rotation, settings, userData); - } - - public static void JPH_CompoundShapeSettings_AddShape(NativeHandle settings, float3 position, quaternion rotation, NativeHandle shape, uint userData = 0) - { - AssertInitialized(); - - UnsafeBindings.JPH_CompoundShapeSettings_AddShape2(settings, &position, &rotation, shape, userData); - } - - public static NativeHandle JPH_StaticCompoundShapeSettings_Create() - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_StaticCompoundShapeSettings_Create()); - } - - public static NativeHandle JPH_MutableCompoundShapeSettings_Create() - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_MutableCompoundShapeSettings_Create()); - } - - public static NativeHandle JPH_MutableCompoundShape_Create(NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_MutableCompoundShape_Create(settings)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_CompoundShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_CompoundShapeSettings.cs.meta deleted file mode 100644 index 7bdc00a..0000000 --- a/Jolt/Bindings/Bindings_JPH_CompoundShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ba6ebe75c99109846bc0af9e83c70190 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_ConeConstraint.cs b/Jolt/Bindings/Bindings_JPH_ConeConstraint.cs deleted file mode 100644 index 36edd52..0000000 --- a/Jolt/Bindings/Bindings_JPH_ConeConstraint.cs +++ /dev/null @@ -1,57 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_ConeConstraint_Create(ref ConeConstraintSettings settings, NativeHandle body1, NativeHandle body2) - { - AssertInitialized(); - - fixed (ConeConstraintSettings* ptr = &settings) - { - return CreateHandle(UnsafeBindings.JPH_ConeConstraint_Create((JPH_ConeConstraintSettings*)ptr, body1, body2)); - } - } - - public static ConeConstraintSettings JPH_ConeConstraint_GetSettings(NativeHandle constraint) - { - AssertInitialized(); - - ConeConstraintSettings result; - UnsafeBindings.JPH_ConeConstraint_GetSettings(constraint, (JPH_ConeConstraintSettings*)&result); - return result; - } - - public static void JPH_ConeConstraint_SetHalfConeAngle(NativeHandle constraint, float halfConeAngle) - { - AssertInitialized(); - - UnsafeBindings.JPH_ConeConstraint_SetHalfConeAngle(constraint, halfConeAngle); - } - - public static float JPH_ConeConstraint_GetCosHalfConeAngle(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ConeConstraint_GetCosHalfConeAngle(constraint); - } - - public static float3 JPH_ConeConstraint_GetTotalLambdaPosition(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_ConeConstraint_GetTotalLambdaPosition(constraint, &result); - return result; - } - - public static float JPH_ConeConstraint_GetTotalLambdaRotation(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ConeConstraint_GetTotalLambdaRotation(constraint); - } - - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ConeConstraint.cs.meta b/Jolt/Bindings/Bindings_JPH_ConeConstraint.cs.meta deleted file mode 100644 index 2f4efae..0000000 --- a/Jolt/Bindings/Bindings_JPH_ConeConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 51884118f9e6462da7acded6103410ce -timeCreated: 1726410736 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_ConeConstraintSettings.cs b/Jolt/Bindings/Bindings_JPH_ConeConstraintSettings.cs deleted file mode 100644 index 03049cb..0000000 --- a/Jolt/Bindings/Bindings_JPH_ConeConstraintSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_ConeConstraintSettings_Init(ref ConeConstraintSettings settings) - { - AssertInitialized(); - - fixed (ConeConstraintSettings* ptr = &settings) - { - UnsafeBindings.JPH_ConeConstraintSettings_Init((JPH_ConeConstraintSettings*)ptr); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ConeConstraintSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_ConeConstraintSettings.cs.meta deleted file mode 100644 index 8fe716b..0000000 --- a/Jolt/Bindings/Bindings_JPH_ConeConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: fa20125f82a64b4a961681f67ac51a3c -timeCreated: 1726410362 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_Constraint.cs b/Jolt/Bindings/Bindings_JPH_Constraint.cs deleted file mode 100644 index 09737b2..0000000 --- a/Jolt/Bindings/Bindings_JPH_Constraint.cs +++ /dev/null @@ -1,148 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_Constraint_Destroy(NativeHandle constraint) - { - AssertInitialized(); - - UnsafeBindings.JPH_Constraint_Destroy(constraint); - constraint.Dispose(); - } - - public static ConstraintType JPH_Constraint_GetType(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Constraint_GetType(constraint); - } - - public static ConstraintSubType JPH_Constraint_GetSubType(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Constraint_GetSubType(constraint); - } - - public static uint JPH_Constraint_GetConstraintPriority(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Constraint_GetConstraintPriority(constraint); - } - - public static void JPH_Constraint_SetConstraintPriority(NativeHandle constraint, uint priority) - { - AssertInitialized(); - - UnsafeBindings.JPH_Constraint_SetConstraintPriority(constraint, priority); - } - - public static uint JPH_Constraint_GetNumVelocityStepsOverride(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Constraint_GetNumVelocityStepsOverride(constraint); - } - - public static void JPH_Constraint_SetNumVelocityStepsOverride(NativeHandle constraint, uint value) - { - AssertInitialized(); - - UnsafeBindings.JPH_Constraint_SetNumVelocityStepsOverride(constraint, value); - } - - public static uint JPH_Constraint_GetNumPositionStepsOverride(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Constraint_GetNumPositionStepsOverride(constraint); - } - - public static void JPH_Constraint_SetNumPositionStepsOverride(NativeHandle constraint, uint value) - { - AssertInitialized(); - - UnsafeBindings.JPH_Constraint_SetNumPositionStepsOverride(constraint, value); - } - - public static bool JPH_Constraint_GetEnabled(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Constraint_GetEnabled(constraint); - } - - public static void JPH_Constraint_SetEnabled(NativeHandle constraint, bool enabled) - { - AssertInitialized(); - - UnsafeBindings.JPH_Constraint_SetEnabled(constraint, enabled); - } - - public static ulong JPH_Constraint_GetUserData(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Constraint_GetUserData(constraint); - } - - public static void JPH_Constraint_SetUserData(NativeHandle constraint, ulong userData) - { - AssertInitialized(); - - UnsafeBindings.JPH_Constraint_SetUserData(constraint, userData); - } - - public static void JPH_Constraint_NotifyShapeChanged(NativeHandle constraint, BodyID bodyID, float3 deltaCOM) - { - AssertInitialized(); - - UnsafeBindings.JPH_Constraint_NotifyShapeChanged(constraint, bodyID, &deltaCOM); - } - - public static void JPH_Constraint_ResetWarmStart(NativeHandle constraint) - { - AssertInitialized(); - - UnsafeBindings.JPH_Constraint_ResetWarmStart(constraint); - } - - public static bool JPH_Constraint_IsActive(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Constraint_IsActive(constraint); - } - - public static void JPH_Constraint_SetupVelocityConstraint(NativeHandle constraint, float deltaTime) - { - AssertInitialized(); - - UnsafeBindings.JPH_Constraint_SetupVelocityConstraint(constraint, deltaTime); - } - - public static void JPH_Constraint_WarmStartVelocityConstraint(NativeHandle constraint, float warmStartImpulseRatio) - { - AssertInitialized(); - - UnsafeBindings.JPH_Constraint_WarmStartVelocityConstraint(constraint, warmStartImpulseRatio); - } - - public static bool JPH_Constraint_SolveVelocityConstraint(NativeHandle constraint, float deltaTime) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Constraint_SolveVelocityConstraint(constraint, deltaTime); - } - - public static bool JPH_Constraint_SolvePositionConstraint(NativeHandle constraint, float deltaTime, float baumgarte) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Constraint_SolvePositionConstraint(constraint, deltaTime, baumgarte); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_Constraint.cs.meta b/Jolt/Bindings/Bindings_JPH_Constraint.cs.meta deleted file mode 100644 index 54462ca..0000000 --- a/Jolt/Bindings/Bindings_JPH_Constraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a98fd24ae6a54522a526862fd7f27c40 -timeCreated: 1716837129 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_ContactListener.cs b/Jolt/Bindings/Bindings_JPH_ContactListener.cs deleted file mode 100644 index 7108fe4..0000000 --- a/Jolt/Bindings/Bindings_JPH_ContactListener.cs +++ /dev/null @@ -1,158 +0,0 @@ -using System; -using System.Runtime.InteropServices; -using Unity.Mathematics; -using UnityEngine; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_ContactListener_Create(IContactListener listener) - { - AssertInitialized(); - - // Getting the listeners to work requires a lot of indirection, because the listeners are represented as - // heap objects in the native plugin with their own lifetimes. The joltc constructor for the listener takes - // a "user data" parameter that lets us provide context to the callbacks when they are invoked. - // - // During initialization, we provide static callbacks to joltc. When we construct a new native listener, we - // also create a GCHandle for the associated managed listener. These are tracked in the ManagedReference - // static class. When Jolt invokes the native listener, it invokes the joltc static listener, which invokes - // our own static listeners with the GCHandle parameter, which we dereference to obtain the user listener. - - var gch = GCHandle.Alloc(listener); - var ptr = GCHandle.ToIntPtr(gch); - - var handle = CreateHandle(UnsafeBindings.JPH_ContactListener_Create(ptr)); - - ManagedReference.Add(handle, gch); - - return handle; - } - - public static void JPH_ContactListener_Destroy(NativeHandle listener) - { - AssertInitialized(); - - if (ManagedReference.Remove(listener, out var gch)) - { - gch.Free(); - } - else - { - Debug.LogError("Missing GCHandle for managed contact listener!"); - } - - UnsafeBindings.JPH_ContactListener_Destroy(listener); - - listener.Dispose(); - } - - /// - /// Set the static callback pointers for JPH_ContactListener. - /// - private static void InitializeContactListeners() - { - fixed (JPH_ContactListener_Procs* ptr = &UnsafeContactListenerProcs) - { - UnsafeBindings.JPH_ContactListener_SetProcs(ptr); - } - } - - /// - /// Static procs for marshalling; the lookup from static to instance listener happens in each method. - /// - private static readonly JPH_ContactListener_Procs UnsafeContactListenerProcs = new JPH_ContactListener_Procs { - OnContactValidate = GetDelegatePointer((UnsafeContactValidate) UnsafeContactValidateCallback), - OnContactAdded = GetDelegatePointer((UnsafeContactAdded) UnsafeContactAddedCallback), - OnContactRemoved = GetDelegatePointer((UnsafeContactRemoved) UnsafeContactRemovedCallback), - OnContactPersisted = GetDelegatePointer((UnsafeContactPersisted) UnsafeContactPersistedCallback), - }; - - /// - /// Unsafe static delegate for OnContactValidate. - /// - [UnmanagedFunctionPointer(CallingConvention.Cdecl, CharSet = CharSet.Unicode)] - private delegate ValidateResult UnsafeContactValidate(IntPtr udata, JPH_Body* bodyA, JPH_Body* bodyB, double3* offset, CollideShapeResult* result); - - /// - /// Unsafe static delegate for OnContactAdded. - /// - [UnmanagedFunctionPointer(CallingConvention.Cdecl, CharSet = CharSet.Unicode)] - private delegate void UnsafeContactAdded(IntPtr udata, JPH_Body* bodyA, JPH_Body* bodyB); - - /// - /// Unsafe static delegate for OnContactRemoved. - /// - [UnmanagedFunctionPointer(CallingConvention.Cdecl, CharSet = CharSet.Unicode)] - private delegate void UnsafeContactRemoved(IntPtr udata, SubShapeIDPair* pair); - - /// - /// Unsafe static delegate for OnContactPersisted. - /// - [UnmanagedFunctionPointer(CallingConvention.Cdecl, CharSet = CharSet.Unicode)] - private delegate void UnsafeContactPersisted(IntPtr udata, JPH_Body* bodyA, JPH_Body* bodyB); - - /// - /// Unsafe static implementation for OnContactValidate. - /// - private static ValidateResult UnsafeContactValidateCallback(IntPtr udata, JPH_Body* bodyA, JPH_Body* bodyB, double3* offset, CollideShapeResult* result) - { - try - { - return ManagedReference.Deref(udata).OnContactValidate(); // TODO forward args - } - catch (Exception e) - { - Debug.LogException(e); - } - - return ValidateResult.AcceptContact; - } - - /// - /// Unsafe static implementation for OnContactAdded. - /// - private static void UnsafeContactAddedCallback(IntPtr udata, JPH_Body* bodyA, JPH_Body* bodyB) - { - try - { - ManagedReference.Deref(udata).OnContactAdded(); // TODO forward args - } - catch (Exception e) - { - Debug.LogException(e); - } - } - - /// - /// Unsafe static implementation for OnContactRemoved. - /// - private static void UnsafeContactRemovedCallback(IntPtr udata, SubShapeIDPair* pair) - { - try - { - ManagedReference.Deref(udata).OnContactRemoved(); // TODO forward args - } - catch (Exception e) - { - Debug.LogException(e); - } - } - - /// - /// Unsafe static implementation for OnContactPersisted. - /// - private static void UnsafeContactPersistedCallback(IntPtr udata, JPH_Body* bodyA, JPH_Body* bodyB) // TODO forward args - { - try - { - ManagedReference.Deref(udata).OnContactPersisted(); - } - catch (Exception e) - { - Debug.LogException(e); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ContactListener.cs.meta b/Jolt/Bindings/Bindings_JPH_ContactListener.cs.meta deleted file mode 100644 index 85da601..0000000 --- a/Jolt/Bindings/Bindings_JPH_ContactListener.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: eca9aec02c4e4c558bbb5254c99a6cfa -timeCreated: 1716737176 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_ContactManifold.cs b/Jolt/Bindings/Bindings_JPH_ContactManifold.cs deleted file mode 100644 index 3f6cf6e..0000000 --- a/Jolt/Bindings/Bindings_JPH_ContactManifold.cs +++ /dev/null @@ -1,62 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static float3 JPH_ContactManifold_GetWorldSpaceNormal(NativeHandle manifold) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_ContactManifold_GetWorldSpaceNormal(manifold, &result); - return result; - } - - public static float JPH_ContactManifold_GetPenetrationDepth(NativeHandle manifold) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ContactManifold_GetPenetrationDepth(manifold); - } - - public static SubShapeID JPH_ContactManifold_GetSubShapeID1(NativeHandle manifold) - { - AssertInitialized(); - - return new SubShapeID(UnsafeBindings.JPH_ContactManifold_GetSubShapeID1(manifold)); - } - - public static SubShapeID JPH_ContactManifold_GetSubShapeID2(NativeHandle manifold) - { - AssertInitialized(); - - return new SubShapeID(UnsafeBindings.JPH_ContactManifold_GetSubShapeID2(manifold)); - } - - public static uint JPH_ContactManifold_GetPointCount(NativeHandle manifold) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ContactManifold_GetPointCount(manifold); - } - - public static rvec3 JPH_ContactManifold_GetWorldSpaceContactPointOn1(NativeHandle manifold, uint index) - { - AssertInitialized(); - - rvec3 result; - UnsafeBindings.JPH_ContactManifold_GetWorldSpaceContactPointOn1(manifold, index, &result); - return result; - } - - public static rvec3 JPH_ContactManifold_GetWorldSpaceContactPointOn2(NativeHandle manifold, uint index) - { - AssertInitialized(); - - rvec3 result; - UnsafeBindings.JPH_ContactManifold_GetWorldSpaceContactPointOn1(manifold, index, &result); - return result; - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ContactManifold.cs.meta b/Jolt/Bindings/Bindings_JPH_ContactManifold.cs.meta deleted file mode 100644 index ea09ff6..0000000 --- a/Jolt/Bindings/Bindings_JPH_ContactManifold.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 450c577f8cf94d4aa345b4d7f2c31ff0 -timeCreated: 1726415399 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_ContactSettings.cs b/Jolt/Bindings/Bindings_JPH_ContactSettings.cs deleted file mode 100644 index c1b2135..0000000 --- a/Jolt/Bindings/Bindings_JPH_ContactSettings.cs +++ /dev/null @@ -1,137 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static float JPH_ContactSettings_GetFriction(NativeHandle settings) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ContactSettings_GetFriction(settings); - } - - public static void JPH_ContactSettings_SetFriction(NativeHandle settings, float friction) - { - AssertInitialized(); - - UnsafeBindings.JPH_ContactSettings_SetFriction(settings, friction); - } - - public static float JPH_ContactSettings_GetRestitution(NativeHandle settings) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ContactSettings_GetRestitution(settings); - } - - public static void JPH_ContactSettings_SetRestitution(NativeHandle settings, float restitution) - { - AssertInitialized(); - - UnsafeBindings.JPH_ContactSettings_SetRestitution(settings, restitution); - } - - public static float JPH_ContactSettings_GetInvMassScale1(NativeHandle settings) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ContactSettings_GetInvMassScale1(settings); - } - - public static void JPH_ContactSettings_SetInvMassScale1(NativeHandle settings, float scale) - { - AssertInitialized(); - - UnsafeBindings.JPH_ContactSettings_SetInvMassScale1(settings, scale); - } - - public static float JPH_ContactSettings_GetInvInertiaScale1(NativeHandle settings) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ContactSettings_GetInvInertiaScale1(settings); - } - - public static void JPH_ContactSettings_SetInvInertiaScale1(NativeHandle settings, float scale) - { - AssertInitialized(); - - UnsafeBindings.JPH_ContactSettings_SetInvInertiaScale1(settings, scale); - } - - public static float JPH_ContactSettings_GetInvMassScale2(NativeHandle settings) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ContactSettings_GetInvMassScale2(settings); - } - - public static void JPH_ContactSettings_SetInvMassScale2(NativeHandle settings, float scale) - { - AssertInitialized(); - - UnsafeBindings.JPH_ContactSettings_SetInvMassScale2(settings, scale); - } - - public static float JPH_ContactSettings_GetInvInertiaScale2(NativeHandle settings) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ContactSettings_GetInvInertiaScale2(settings); - } - - public static void JPH_ContactSettings_SetInvInertiaScale2(NativeHandle settings, float scale) - { - AssertInitialized(); - - UnsafeBindings.JPH_ContactSettings_SetInvInertiaScale2(settings, scale); - } - - public static bool JPH_ContactSettings_GetIsSensor(NativeHandle settings) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ContactSettings_GetIsSensor(settings); - } - - public static void JPH_ContactSettings_SetIsSensor(NativeHandle settings, bool sensor) - { - AssertInitialized(); - - UnsafeBindings.JPH_ContactSettings_SetIsSensor(settings, sensor); - } - - public static float3 JPH_ContactSettings_GetRelativeLinearSurfaceVelocity(NativeHandle settings) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_ContactSettings_GetRelativeLinearSurfaceVelocity(settings, &result); - return result; - } - - public static void JPH_ContactSettings_SetRelativeLinearSurfaceVelocity(NativeHandle settings, float3 velocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_ContactSettings_SetRelativeLinearSurfaceVelocity(settings, &velocity); - } - - public static float3 JPH_ContactSettings_GetRelativeAngularSurfaceVelocity(NativeHandle settings) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_ContactSettings_GetRelativeAngularSurfaceVelocity(settings, &result); - return result; - } - - public static void JPH_ContactSettings_SetRelativeAngularSurfaceVelocity(NativeHandle settings, float3 velocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_ContactSettings_SetRelativeAngularSurfaceVelocity(settings, &velocity); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ContactSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_ContactSettings.cs.meta deleted file mode 100644 index 65270b0..0000000 --- a/Jolt/Bindings/Bindings_JPH_ContactSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 9db105d55a154773966a3ec947538711 -timeCreated: 1726415845 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_ConvexHullShape.cs b/Jolt/Bindings/Bindings_JPH_ConvexHullShape.cs deleted file mode 100644 index 2d1adbc..0000000 --- a/Jolt/Bindings/Bindings_JPH_ConvexHullShape.cs +++ /dev/null @@ -1,52 +0,0 @@ -using Unity.Collections; -using Unity.Collections.LowLevel.Unsafe; -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static uint JPH_ConvexHullShape_GetNumPoints(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ConvexHullShape_GetNumPoints(shape); - } - - public static float3 JPH_ConvexHullShape_GetPoint(NativeHandle shape, uint index) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_ConvexHullShape_GetPoint(shape, index, &result); - return result; - } - - public static uint JPH_ConvexHullShape_GetNumFaces(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ConvexHullShape_GetNumFaces(shape); - } - - public static uint JPH_ConvexHullShape_GetNumVerticesInFace(NativeHandle shape, uint faceIndex) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ConvexHullShape_GetNumVerticesInFace(shape, faceIndex); - } - - /// - /// Fill the buffer with the indices of the face vertices of the . - /// - /// - /// The number of vertices in the face. If this is bigger than the buffer length, not all vertices were retrieved. - /// - public static uint JPH_ConvexHullShape_GetFaceVertices(NativeHandle shape, uint faceIndex, NativeArray vertices) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ConvexHullShape_GetFaceVertices(shape, faceIndex, (uint)vertices.Length, (uint*)vertices.GetUnsafePtr()); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ConvexHullShape.cs.meta b/Jolt/Bindings/Bindings_JPH_ConvexHullShape.cs.meta deleted file mode 100644 index 2a7f05b..0000000 --- a/Jolt/Bindings/Bindings_JPH_ConvexHullShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 93c84faf23f443b985588eaaa3bb65a9 -timeCreated: 1742567315 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_ConvexHullShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_ConvexHullShapeSettings.cs deleted file mode 100644 index 5fd0214..0000000 --- a/Jolt/Bindings/Bindings_JPH_ConvexHullShapeSettings.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System; -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_ConvexHullShapeSettings_Create(ReadOnlySpan points, float maxConvexRadius) - { - AssertInitialized(); - - fixed (float3* pointsPtr = points) - { - return CreateHandle(UnsafeBindings.JPH_ConvexHullShapeSettings_Create(pointsPtr, (uint)points.Length, maxConvexRadius)); - } - } - - public static NativeHandle JPH_ConvexHullShapeSettings_CreateShape(NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_ConvexHullShapeSettings_CreateShape(settings)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ConvexHullShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_ConvexHullShapeSettings.cs.meta deleted file mode 100644 index 80884bf..0000000 --- a/Jolt/Bindings/Bindings_JPH_ConvexHullShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 53d51498bd8da1543a23b01d64e560ca -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_ConvexShape.cs b/Jolt/Bindings/Bindings_JPH_ConvexShape.cs deleted file mode 100644 index 630c314..0000000 --- a/Jolt/Bindings/Bindings_JPH_ConvexShape.cs +++ /dev/null @@ -1,19 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static float JPH_ConvexShape_GetDensity(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ConvexShape_GetDensity(shape); - } - - public static void JPH_ConvexShape_SetDensity(NativeHandle shape, float density) - { - AssertInitialized(); - - UnsafeBindings.JPH_ConvexShape_SetDensity(shape, density); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ConvexShape.cs.meta b/Jolt/Bindings/Bindings_JPH_ConvexShape.cs.meta deleted file mode 100644 index cb0c960..0000000 --- a/Jolt/Bindings/Bindings_JPH_ConvexShape.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ff57d56e4dac2af4c9e6cc00aa819464 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_ConvexShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_ConvexShapeSettings.cs deleted file mode 100644 index b735a5a..0000000 --- a/Jolt/Bindings/Bindings_JPH_ConvexShapeSettings.cs +++ /dev/null @@ -1,19 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static float JPH_ConvexShapeSettings_GetDensity(NativeHandle settings) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ConvexShapeSettings_GetDensity(settings); - } - - public static void JPH_ConvexShapeSettings_SetDensity(NativeHandle settings, float density) - { - AssertInitialized(); - - UnsafeBindings.JPH_ConvexShapeSettings_SetDensity(settings, density); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ConvexShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_ConvexShapeSettings.cs.meta deleted file mode 100644 index 96e03b7..0000000 --- a/Jolt/Bindings/Bindings_JPH_ConvexShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2fbe0b4fed81e854b96c5e74094e7c79 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_CylinderShape.cs b/Jolt/Bindings/Bindings_JPH_CylinderShape.cs deleted file mode 100644 index 671579a..0000000 --- a/Jolt/Bindings/Bindings_JPH_CylinderShape.cs +++ /dev/null @@ -1,26 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_CylinderShape_Create(float halfHeight, float radius) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_CylinderShape_Create(halfHeight, radius)); - } - - public static float JPH_CylinderShape_GetRadius(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_CylinderShape_GetRadius(shape); - } - - public static float JPH_CylinderShape_GetHalfHeight(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_CylinderShape_GetHalfHeight(shape); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_CylinderShape.cs.meta b/Jolt/Bindings/Bindings_JPH_CylinderShape.cs.meta deleted file mode 100644 index 395c284..0000000 --- a/Jolt/Bindings/Bindings_JPH_CylinderShape.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 83d079e3f90ea52478ed4699311e3a9a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_CylinderShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_CylinderShapeSettings.cs deleted file mode 100644 index e93f25e..0000000 --- a/Jolt/Bindings/Bindings_JPH_CylinderShapeSettings.cs +++ /dev/null @@ -1,12 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_CylinderShapeSettings_Create(float halfHeight, float radius, float convexRadius) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_CylinderShapeSettings_Create(halfHeight, radius, convexRadius)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_CylinderShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_CylinderShapeSettings.cs.meta deleted file mode 100644 index 3eadb9a..0000000 --- a/Jolt/Bindings/Bindings_JPH_CylinderShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: edc879847e4f1c2478fcc418e882a841 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_DistanceConstraint.cs b/Jolt/Bindings/Bindings_JPH_DistanceConstraint.cs deleted file mode 100644 index 731bc5a..0000000 --- a/Jolt/Bindings/Bindings_JPH_DistanceConstraint.cs +++ /dev/null @@ -1,69 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_DistanceConstraint_Create(ref DistanceConstraintSettings settings, NativeHandle body1, NativeHandle body2) - { - AssertInitialized(); - - fixed (DistanceConstraintSettings* ptr = &settings) - { - return CreateHandle(UnsafeBindings.JPH_DistanceConstraint_Create((JPH_DistanceConstraintSettings*)ptr, body1, body2)); - } - } - - public static void JPH_DistanceConstraint_GetSettings(NativeHandle constraint, ref DistanceConstraintSettings settings) - { - AssertInitialized(); - - fixed (DistanceConstraintSettings* ptr = &settings) - { - UnsafeBindings.JPH_DistanceConstraint_GetSettings(constraint, (JPH_DistanceConstraintSettings*)ptr); - } - } - - public static void JPH_DistanceConstraint_SetDistance(NativeHandle constraint, float minDistance, float maxDistance) - { - AssertInitialized(); - - UnsafeBindings.JPH_DistanceConstraint_SetDistance(constraint, minDistance, maxDistance); - } - - public static float JPH_DistanceConstraint_GetMinDistance(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_DistanceConstraint_GetMinDistance(constraint); - } - - public static float JPH_DistanceConstraint_GetMaxDistance(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_DistanceConstraint_GetMaxDistance(constraint); - } - - public static SpringSettings JPH_DistanceConstraint_GetLimitsSpringSettings(NativeHandle constraint) - { - AssertInitialized(); - - SpringSettings settings; - UnsafeBindings.JPH_DistanceConstraint_GetLimitsSpringSettings(constraint, (JPH_SpringSettings*)&settings); - return settings; - } - - public static void JPH_DistanceConstraint_SetLimitsSpringSettings(NativeHandle constraint, SpringSettings settings) - { - AssertInitialized(); - - UnsafeBindings.JPH_DistanceConstraint_SetLimitsSpringSettings(constraint, (JPH_SpringSettings*)&settings); - } - - public static float JPH_DistanceConstraint_GetTotalLambdaPosition(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_DistanceConstraint_GetTotalLambdaPosition(constraint); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_DistanceConstraint.cs.meta b/Jolt/Bindings/Bindings_JPH_DistanceConstraint.cs.meta deleted file mode 100644 index 737fd42..0000000 --- a/Jolt/Bindings/Bindings_JPH_DistanceConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 66e65d15a05e4cbeb14e31961bed3869 -timeCreated: 1718301545 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_DistanceConstraintSettings.cs b/Jolt/Bindings/Bindings_JPH_DistanceConstraintSettings.cs deleted file mode 100644 index 13cb824..0000000 --- a/Jolt/Bindings/Bindings_JPH_DistanceConstraintSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_DistanceConstraintSettings_Init(ref DistanceConstraintSettings settings) - { - AssertInitialized(); - - fixed (DistanceConstraintSettings* ptr = &settings) - { - UnsafeBindings.JPH_DistanceConstraintSettings_Init((JPH_DistanceConstraintSettings*)ptr); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_DistanceConstraintSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_DistanceConstraintSettings.cs.meta deleted file mode 100644 index 9f17ad2..0000000 --- a/Jolt/Bindings/Bindings_JPH_DistanceConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: c84f989c08d24d8bad74b42c484400bb -timeCreated: 1718301220 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_FixedConstraint.cs b/Jolt/Bindings/Bindings_JPH_FixedConstraint.cs deleted file mode 100644 index 70f7801..0000000 --- a/Jolt/Bindings/Bindings_JPH_FixedConstraint.cs +++ /dev/null @@ -1,45 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_FixedConstraint_Create(ref FixedConstraintSettings settings, NativeHandle body1, NativeHandle body2) - { - AssertInitialized(); - - fixed (FixedConstraintSettings* ptr = &settings) - { - return CreateHandle(UnsafeBindings.JPH_FixedConstraint_Create((JPH_FixedConstraintSettings*)ptr, body1, body2)); - } - } - - public static void JPH_FixedConstraint_GetSettings(NativeHandle constraint, ref FixedConstraintSettings settings) - { - AssertInitialized(); - - fixed (FixedConstraintSettings* ptr = &settings) - { - UnsafeBindings.JPH_FixedConstraint_GetSettings(constraint, (JPH_FixedConstraintSettings*)ptr); - } - } - - public static float3 JPH_FixedConstraint_GetTotalLambdaPosition(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_FixedConstraint_GetTotalLambdaPosition(constraint, &result); - return result; - } - - public static float3 JPH_FixedConstraint_GetTotalLambdaRotation(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_FixedConstraint_GetTotalLambdaPosition(constraint, &result); - return result; - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_FixedConstraint.cs.meta b/Jolt/Bindings/Bindings_JPH_FixedConstraint.cs.meta deleted file mode 100644 index 2229b41..0000000 --- a/Jolt/Bindings/Bindings_JPH_FixedConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ae92b09ecc744f75869273ee18ead23a -timeCreated: 1717860978 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_FixedConstraintSettings.cs b/Jolt/Bindings/Bindings_JPH_FixedConstraintSettings.cs deleted file mode 100644 index ec17620..0000000 --- a/Jolt/Bindings/Bindings_JPH_FixedConstraintSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_FixedConstraintSettings_Init(ref FixedConstraintSettings settings) - { - AssertInitialized(); - - fixed (FixedConstraintSettings* ptr = &settings) - { - UnsafeBindings.JPH_FixedConstraintSettings_Init((JPH_FixedConstraintSettings*)ptr); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_FixedConstraintSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_FixedConstraintSettings.cs.meta deleted file mode 100644 index 0f35858..0000000 --- a/Jolt/Bindings/Bindings_JPH_FixedConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 31414ea2706145f1a738429a88c3e327 -timeCreated: 1717860235 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_GearConstraintSettings.cs b/Jolt/Bindings/Bindings_JPH_GearConstraintSettings.cs deleted file mode 100644 index 5b388bc..0000000 --- a/Jolt/Bindings/Bindings_JPH_GearConstraintSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_GearConstraintSettings_Init(ref GearConstraintSettings settings) - { - AssertInitialized(); - - fixed (GearConstraintSettings* ptr = &settings) - { - UnsafeBindings.JPH_GearConstraintSettings_Init((JPH_GearConstraintSettings*)ptr); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_GearConstraintSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_GearConstraintSettings.cs.meta deleted file mode 100644 index 23d79d6..0000000 --- a/Jolt/Bindings/Bindings_JPH_GearConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 28ecaa7ae7b74998825ae1354eb8797d -timeCreated: 1741875330 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_HeightFieldShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_HeightFieldShapeSettings.cs deleted file mode 100644 index 4a940fd..0000000 --- a/Jolt/Bindings/Bindings_JPH_HeightFieldShapeSettings.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System; -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_HeightFieldShapeSettings_Create(ReadOnlySpan samples, ReadOnlySpan offset, ReadOnlySpan scale) - { - AssertInitialized(); - - fixed (float* samplesPtr = samples) - fixed (float3* offsetPtr = offset) - fixed (float3* scalePtr = scale) - { - return CreateHandle(UnsafeBindings.JPH_HeightFieldShapeSettings_Create(samplesPtr, offsetPtr, scalePtr, - (uint)samples.Length)); - } - } - - public static void JPH_HeightFieldShapeSettings_DetermineMinAndMaxSample(NativeHandle settings, out float min, out float max, out float quantization) - { - AssertInitialized(); - - fixed (float* minPtr = &min) - fixed (float* maxPtr = &max) - fixed (float* quantizationPtr = &quantization) - { - UnsafeBindings.JPH_HeightFieldShapeSettings_DetermineMinAndMaxSample(settings, minPtr, maxPtr, - quantizationPtr); - } - } - - public static uint JPH_HeightFieldShapeSettings_CalculateBitsPerSampleForError(NativeHandle settings, float maxError) - { - AssertInitialized(); - - return UnsafeBindings.JPH_HeightFieldShapeSettings_CalculateBitsPerSampleForError(settings, maxError); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_HeightFieldShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_HeightFieldShapeSettings.cs.meta deleted file mode 100644 index 3935c0a..0000000 --- a/Jolt/Bindings/Bindings_JPH_HeightFieldShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 74cbbb9ee28995c40a745dfaa25bc35d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_HingeConstraint.cs b/Jolt/Bindings/Bindings_JPH_HingeConstraint.cs deleted file mode 100644 index 5665626..0000000 --- a/Jolt/Bindings/Bindings_JPH_HingeConstraint.cs +++ /dev/null @@ -1,235 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_HingeConstraint_Create(ref HingeConstraintSettings settings, NativeHandle body1, NativeHandle body2) - { - AssertInitialized(); - - fixed (HingeConstraintSettings* ptr = &settings) - { - return CreateHandle(UnsafeBindings.JPH_HingeConstraint_Create((JPH_HingeConstraintSettings*)ptr, body1, body2)); - } - } - - public static HingeConstraintSettings JPH_HingeConstraint_GetSettings(NativeHandle constraint) - { - AssertInitialized(); - - HingeConstraintSettings result; - UnsafeBindings.JPH_HingeConstraint_GetSettings(constraint, (JPH_HingeConstraintSettings*)&result); - return result; - } - - public static float3 JPH_HingeConstraint_GetLocalSpacePoint1(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_HingeConstraint_GetLocalSpacePoint1(constraint, &result); - return result; - } - - public static float3 JPH_HingeConstraint_GetLocalSpacePoint2(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_HingeConstraint_GetLocalSpacePoint2(constraint, &result); - return result; - } - - public static float3 JPH_HingeConstraint_GetLocalSpaceHingeAxis1(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_HingeConstraint_GetLocalSpaceHingeAxis1(constraint, &result); - return result; - } - - public static float3 JPH_HingeConstraint_GetLocalSpaceHingeAxis2(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_HingeConstraint_GetLocalSpaceHingeAxis2(constraint, &result); - return result; - } - - public static float3 JPH_HingeConstraint_GetLocalSpaceNormalAxis1(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_HingeConstraint_GetLocalSpaceNormalAxis1(constraint, &result); - return result; - } - - public static float3 JPH_HingeConstraint_GetLocalSpaceNormalAxis2(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_HingeConstraint_GetLocalSpaceNormalAxis2(constraint, &result); - return result; - } - - public static float JPH_HingeConstraint_GetCurrentAngle(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_HingeConstraint_GetCurrentAngle(constraint); - } - - public static void JPH_HingeConstraint_SetMaxFrictionTorque(NativeHandle constraint, float frictionTorque) - { - AssertInitialized(); - - UnsafeBindings.JPH_HingeConstraint_SetMaxFrictionTorque(constraint, frictionTorque); - } - - public static float JPH_HingeConstraint_GetMaxFrictionTorque(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_HingeConstraint_GetMaxFrictionTorque(constraint); - } - - public static void JPH_HingeConstraint_SetMotorSettings(NativeHandle constraint, MotorSettings settings) - { - AssertInitialized(); - - UnsafeBindings.JPH_HingeConstraint_SetMotorSettings(constraint, (JPH_MotorSettings*)&settings); - } - - public static MotorSettings JPH_HingeConstraint_GetMotorSettings(NativeHandle constraint) - { - AssertInitialized(); - - MotorSettings settings; - UnsafeBindings.JPH_HingeConstraint_GetMotorSettings(constraint, (JPH_MotorSettings*)&settings); - return settings; - } - - public static void JPH_HingeConstraint_SetMotorState(NativeHandle constraint, MotorState state) - { - AssertInitialized(); - - UnsafeBindings.JPH_HingeConstraint_SetMotorState(constraint, state); - } - - public static MotorState JPH_HingeConstraint_GetMotorState(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_HingeConstraint_GetMotorState(constraint); - } - - public static void JPH_HingeConstraint_SetTargetAngularVelocity(NativeHandle constraint, float angularVelocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_HingeConstraint_SetTargetAngularVelocity(constraint, angularVelocity); - } - - public static float JPH_HingeConstraint_GetTargetAngularVelocity(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_HingeConstraint_GetTargetAngularVelocity(constraint); - } - - public static void JPH_HingeConstraint_SetTargetAngle(NativeHandle constraint, float angle) - { - AssertInitialized(); - - UnsafeBindings.JPH_HingeConstraint_SetTargetAngle(constraint, angle); - } - - public static float JPH_HingeConstraint_GetTargetAngle(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_HingeConstraint_GetTargetAngle(constraint); - } - - public static void JPH_HingeConstraint_SetLimits(NativeHandle constraint, float min, float max) - { - AssertInitialized(); - - UnsafeBindings.JPH_HingeConstraint_SetLimits(constraint, min, max); - } - - public static float JPH_HingeConstraint_GetLimitsMin(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_HingeConstraint_GetLimitsMin(constraint); - } - - public static float JPH_HingeConstraint_GetLimitsMax(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_HingeConstraint_GetLimitsMax(constraint); - } - - public static bool JPH_HingeConstraint_HasLimits(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_HingeConstraint_HasLimits(constraint); - } - - public static SpringSettings JPH_HingeConstraint_GetLimitsSpringSettings(NativeHandle constraint) - { - AssertInitialized(); - - SpringSettings settings; - UnsafeBindings.JPH_HingeConstraint_GetLimitsSpringSettings(constraint, (JPH_SpringSettings*)&settings); - return settings; - } - - public static void JPH_HingeConstraint_SetLimitsSpringSettings(NativeHandle constraint, SpringSettings settings) - { - AssertInitialized(); - - UnsafeBindings.JPH_HingeConstraint_SetLimitsSpringSettings(constraint, (JPH_SpringSettings*)&settings); - } - - public static float3 JPH_HingeConstraint_GetTotalLambdaPosition(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_HingeConstraint_GetTotalLambdaPosition(constraint, &result); - return result; - } - - public static float2 JPH_HingeConstraint_GetTotalLambdaRotation(NativeHandle constraint) - { - AssertInitialized(); - - float2 result; - UnsafeBindings.JPH_HingeConstraint_GetTotalLambdaRotation(constraint, &result); - return result; - } - - public static float JPH_HingeConstraint_GetTotalLambdaRotationLimits(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_HingeConstraint_GetTotalLambdaRotationLimits(constraint); - } - - public static float JPH_HingeConstraint_GetTotalLambdaMotor(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_HingeConstraint_GetTotalLambdaMotor(constraint); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_HingeConstraint.cs.meta b/Jolt/Bindings/Bindings_JPH_HingeConstraint.cs.meta deleted file mode 100644 index 3e7b68c..0000000 --- a/Jolt/Bindings/Bindings_JPH_HingeConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 1ead84bd56cb483fba1b481099832d5a -timeCreated: 1725316764 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_HingeConstraintSettings.cs b/Jolt/Bindings/Bindings_JPH_HingeConstraintSettings.cs deleted file mode 100644 index 1ae8c39..0000000 --- a/Jolt/Bindings/Bindings_JPH_HingeConstraintSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_HingeConstraintSettings_Init(ref HingeConstraintSettings settings) - { - AssertInitialized(); - - fixed (HingeConstraintSettings* ptr = &settings) - { - UnsafeBindings.JPH_HingeConstraintSettings_Init((JPH_HingeConstraintSettings*)ptr); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_HingeConstraintSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_HingeConstraintSettings.cs.meta deleted file mode 100644 index 8e30b8c..0000000 --- a/Jolt/Bindings/Bindings_JPH_HingeConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 8ae4cf1572e44865aaf101278ed050cf -timeCreated: 1725316788 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_JobSystem.cs b/Jolt/Bindings/Bindings_JPH_JobSystem.cs deleted file mode 100644 index 1109545..0000000 --- a/Jolt/Bindings/Bindings_JPH_JobSystem.cs +++ /dev/null @@ -1,12 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_JobSystem_Destroy(NativeHandle system) - { - AssertInitialized(); - - UnsafeBindings.JPH_JobSystem_Destroy(system); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_JobSystem.cs.meta b/Jolt/Bindings/Bindings_JPH_JobSystem.cs.meta deleted file mode 100644 index 07bf46b..0000000 --- a/Jolt/Bindings/Bindings_JPH_JobSystem.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 00d47ab0d8aa4277a6b77d1260982587 -timeCreated: 1739057057 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_JobSystemCallback.cs b/Jolt/Bindings/Bindings_JPH_JobSystemCallback.cs deleted file mode 100644 index f92117c..0000000 --- a/Jolt/Bindings/Bindings_JPH_JobSystemCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_JobSystemCallback_Create(JobSystemConfig config) - { - AssertInitialized(); - - throw new NotImplementedException(); // TODO JobSystemConfig requires unmanaged function pointers - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_JobSystemCallback.cs.meta b/Jolt/Bindings/Bindings_JPH_JobSystemCallback.cs.meta deleted file mode 100644 index 3b22f57..0000000 --- a/Jolt/Bindings/Bindings_JPH_JobSystemCallback.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: c2243a2766aa445a818bf7f6153170d7 -timeCreated: 1739057180 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_JobSystemThreadPool.cs b/Jolt/Bindings/Bindings_JPH_JobSystemThreadPool.cs deleted file mode 100644 index bc88194..0000000 --- a/Jolt/Bindings/Bindings_JPH_JobSystemThreadPool.cs +++ /dev/null @@ -1,12 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_JobSystemThreadPool_Create(JobSystemThreadPoolConfig config) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_JobSystemThreadPool_Create((JPH_JobSystemThreadPoolConfig*)&config)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_JobSystemThreadPool.cs.meta b/Jolt/Bindings/Bindings_JPH_JobSystemThreadPool.cs.meta deleted file mode 100644 index 3935ac8..0000000 --- a/Jolt/Bindings/Bindings_JPH_JobSystemThreadPool.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 99d0a2cd80114ca1a3c57206060ea1ca -timeCreated: 1739057189 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_MassProperties.cs b/Jolt/Bindings/Bindings_JPH_MassProperties.cs deleted file mode 100644 index 57487a2..0000000 --- a/Jolt/Bindings/Bindings_JPH_MassProperties.cs +++ /dev/null @@ -1,29 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_MassProperties_DecomposePrincipalMomentsOfInertia(ref MassProperties properties, out float4x4 rotation, out float3 diagonal) - { - AssertInitialized(); - - fixed (MassProperties* propertiesPtr = &properties) - fixed (float4x4* rotationPtr = &rotation) - fixed (float3* diagonalPtr = &diagonal) - { - UnsafeBindings.JPH_MassProperties_DecomposePrincipalMomentsOfInertia((JPH_MassProperties*)propertiesPtr, rotationPtr, diagonalPtr); - } - } - - public static void JPH_MassProperties_ScaleToMass(ref MassProperties properties, float mass) - { - AssertInitialized(); - - fixed (MassProperties* propertiesPtr = &properties) - { - UnsafeBindings.JPH_MassProperties_ScaleToMass((JPH_MassProperties*)propertiesPtr, mass); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_MassProperties.cs.meta b/Jolt/Bindings/Bindings_JPH_MassProperties.cs.meta deleted file mode 100644 index e6c25fa..0000000 --- a/Jolt/Bindings/Bindings_JPH_MassProperties.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 7857a379dbf943f48b2a46a6a4fe5c83 -timeCreated: 1726413506 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_MeshShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_MeshShapeSettings.cs deleted file mode 100644 index 0c2545f..0000000 --- a/Jolt/Bindings/Bindings_JPH_MeshShapeSettings.cs +++ /dev/null @@ -1,43 +0,0 @@ -using System; -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_MeshShapeSettings_Create(ReadOnlySpan triangles) - { - AssertInitialized(); - - fixed (Triangle* trianglesPtr = triangles) - { - return CreateHandle(UnsafeBindings.JPH_MeshShapeSettings_Create((JPH_Triangle*)trianglesPtr, (uint)triangles.Length)); - } - } - - public static NativeHandle JPH_MeshShapeSettings_Create(ReadOnlySpan vertices, ReadOnlySpan triangles) - { - AssertInitialized(); - - fixed (float3* verticesPtr = vertices) - fixed (IndexedTriangle* trianglesPtr = triangles) - { - return CreateHandle(UnsafeBindings.JPH_MeshShapeSettings_Create2(verticesPtr, (uint)vertices.Length, (JPH_IndexedTriangle*)trianglesPtr, (uint)triangles.Length)); - } - } - - public static void JPH_MeshShapeSettings_Sanitize(NativeHandle settings) - { - AssertInitialized(); - - UnsafeBindings.JPH_MeshShapeSettings_Sanitize(settings); - } - - public static NativeHandle JPH_MeshShapeSettings_CreateShape(NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_MeshShapeSettings_CreateShape(settings)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_MeshShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_MeshShapeSettings.cs.meta deleted file mode 100644 index 2a8185b..0000000 --- a/Jolt/Bindings/Bindings_JPH_MeshShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d563a2284ed63c844b201b1583036896 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_MotionProperties.cs b/Jolt/Bindings/Bindings_JPH_MotionProperties.cs deleted file mode 100644 index f198c66..0000000 --- a/Jolt/Bindings/Bindings_JPH_MotionProperties.cs +++ /dev/null @@ -1,88 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static AllowedDOFs JPH_MotionProperties_GetAllowedDOFs(NativeHandle properties) - { - AssertInitialized(); - - return UnsafeBindings.JPH_MotionProperties_GetAllowedDOFs(properties); - } - - public static void JPH_MotionProperties_SetLinearDamping(NativeHandle properties, float damping) - { - AssertInitialized(); - - UnsafeBindings.JPH_MotionProperties_SetLinearDamping(properties, damping); - } - - public static float JPH_MotionProperties_GetLinearDamping(NativeHandle properties) - { - AssertInitialized(); - - return UnsafeBindings.JPH_MotionProperties_GetLinearDamping(properties); - } - - public static void JPH_MotionProperties_SetAngularDamping(NativeHandle properties, float damping) - { - AssertInitialized(); - - UnsafeBindings.JPH_MotionProperties_SetAngularDamping(properties, damping); - } - - public static float JPH_MotionProperties_GetAngularDamping(NativeHandle properties) - { - AssertInitialized(); - - return UnsafeBindings.JPH_MotionProperties_GetAngularDamping(properties); - } - - public static void JPH_MotionProperties_SetMassProperties(NativeHandle properties, AllowedDOFs allowedDOFs, MassProperties massProperties) - { - AssertInitialized(); - - UnsafeBindings.JPH_MotionProperties_SetMassProperties(properties, allowedDOFs, (JPH_MassProperties*)&massProperties); - } - - public static float JPH_MotionProperties_GetInverseMassUnchecked(NativeHandle properties) - { - AssertInitialized(); - - return UnsafeBindings.JPH_MotionProperties_GetInverseMassUnchecked(properties); - } - - public static void JPH_MotionProperties_SetInverseMass(NativeHandle properties, float inverseMass) - { - AssertInitialized(); - - UnsafeBindings.JPH_MotionProperties_SetInverseMass(properties, inverseMass); - } - - public static float3 JPH_MotionProperties_GetInverseInertiaDiagonal(NativeHandle properties) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_MotionProperties_GetInverseInertiaDiagonal(properties, &result); - return result; - } - - public static quaternion JPH_MotionProperties_GetInertiaRotation(NativeHandle properties) - { - AssertInitialized(); - - quaternion result; - UnsafeBindings.JPH_MotionProperties_GetInertiaRotation(properties, &result); - return result; - } - - public static void JPH_MotionProperties_SetInverseInertia(NativeHandle properties, float3 diagonal, quaternion rotation) - { - AssertInitialized(); - - UnsafeBindings.JPH_MotionProperties_SetInverseInertia(properties, &diagonal, &rotation); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_MotionProperties.cs.meta b/Jolt/Bindings/Bindings_JPH_MotionProperties.cs.meta deleted file mode 100644 index eb436ea..0000000 --- a/Jolt/Bindings/Bindings_JPH_MotionProperties.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 4a516f7c9b9f47988f455d7088d4651e -timeCreated: 1726413148 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_NarrowPhaseQuery.cs b/Jolt/Bindings/Bindings_JPH_NarrowPhaseQuery.cs deleted file mode 100644 index ed6fa19..0000000 --- a/Jolt/Bindings/Bindings_JPH_NarrowPhaseQuery.cs +++ /dev/null @@ -1,320 +0,0 @@ -using System; -using System.Runtime.InteropServices; -using Unity.Collections.LowLevel.Unsafe; -using Unity.Mathematics; -using UnityEngine; - -namespace Jolt -{ - public partial struct NarrowPhaseQuery - { - /// - /// Callback signature for CastRay. - /// - public delegate void CastRayCallback(ref RayCastResult result); - - /// - /// Callback signature for ... - /// - public delegate void CollidePointCallback(ref CollidePointResult result); - - /// - /// Callback signature for ... - /// - public delegate void CollideShapeCallback(ref CollideShapeResult result); - } - - internal static unsafe partial class Bindings - { - public static bool JPH_NarrowPhaseQuery_CastRay( - NativeHandle query, - // query parameters - rvec3 origin, float3 direction, - // result - out RayCastResult hit, - // optional filters - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default, - NativeHandle bodyFilter = default - ) - { - AssertInitialized(); - - fixed (RayCastResult* ptr = &hit) - { - return UnsafeBindings.JPH_NarrowPhaseQuery_CastRay( - query, &origin, &direction, (JPH_RayCastResult*)ptr, - GetOptionalPointer(broadPhaseLayerFilter), - GetOptionalPointer(objectLayerFilter), - GetOptionalPointer(bodyFilter) - ); - } - } - - public static bool JPH_NarrowPhaseQuery_CastRay( - NativeHandle query, - // query parameters - rvec3 origin, float3 direction, RayCastSettings settings, - // callback - NarrowPhaseQuery.CastRayCallback callback, - // optional filters - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default, - NativeHandle bodyFilter = default, - NativeHandle shapeFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_NarrowPhaseQuery_CastRay2( - query, &origin, &direction, (JPH_RayCastSettings*)(&settings), - callback: UnsafeNarrowPhaseQueryCallbacks.UnsafeCastRayCallbackPointer, - userData: GetDelegatePointer(callback), - GetOptionalPointer(broadPhaseLayerFilter), - GetOptionalPointer(objectLayerFilter), - GetOptionalPointer(bodyFilter), - GetOptionalPointer(shapeFilter) - ); - } - - public static bool JPH_NarrowPhaseQuery_CastRay( - NativeHandle query, - // query parameters - rvec3 origin, float3 direction, RayCastSettings settings, CollisionCollectorType collector, - // callback - NarrowPhaseQuery.CastRayCallback callback, - // optional filters - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default, - NativeHandle bodyFilter = default, - NativeHandle shapeFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_NarrowPhaseQuery_CastRay3( - query, &origin, &direction, (JPH_RayCastSettings*)(&settings), collector, - callback: UnsafeNarrowPhaseQueryCallbacks.UnsafeCastRayCallbackPointer, - userData: GetDelegatePointer(callback), - GetOptionalPointer(broadPhaseLayerFilter), - GetOptionalPointer(objectLayerFilter), - GetOptionalPointer(bodyFilter), - GetOptionalPointer(shapeFilter) - ); - } - - public static bool JPH_NarrowPhaseQuery_CollidePoint( - NativeHandle query, - // query parameters - rvec3 point, - // callback - NarrowPhaseQuery.CollidePointCallback callback, - // optional filters - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default, - NativeHandle bodyFilter = default, - NativeHandle shapeFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_NarrowPhaseQuery_CollidePoint( - query, &point, - callback: UnsafeNarrowPhaseQueryCallbacks.UnsafeCollidePointCallbackPointer, - userData: GetDelegatePointer(callback), - GetOptionalPointer(broadPhaseLayerFilter), - GetOptionalPointer(objectLayerFilter), - GetOptionalPointer(bodyFilter), - GetOptionalPointer(shapeFilter) - ); - } - - public static bool JPH_NarrowPhaseQuery_CollidePoint2( - NativeHandle query, - // query parameters - rvec3 point, CollisionCollectorType collector, - // callback - NarrowPhaseQuery.CollidePointCallback callback, - // optional filters - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default, - NativeHandle bodyFilter = default, - NativeHandle shapeFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_NarrowPhaseQuery_CollidePoint2( - query, &point, collector, - callback: UnsafeNarrowPhaseQueryCallbacks.UnsafeCollidePointCallbackPointer, - userData: GetDelegatePointer(callback), - GetOptionalPointer(broadPhaseLayerFilter), - GetOptionalPointer(objectLayerFilter), - GetOptionalPointer(bodyFilter), - GetOptionalPointer(shapeFilter) - ); - } - - public static bool JPH_NarrowPhaseQuery_CollideShape( - NativeHandle query, - // query parameters - NativeHandle shape, float3 scale, rmatrix4x4 com, CollideShapeSettings settings, rvec3 offset, - // callback - NarrowPhaseQuery.CollideShapeCallback callback, - // optional filters - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default, - NativeHandle bodyFilter = default, - NativeHandle shapeFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_NarrowPhaseQuery_CollideShape( - query, shape, &scale, &com, (JPH_CollideShapeSettings*)&settings, &offset, - callback: UnsafeNarrowPhaseQueryCallbacks.UnsafeCollidePointCallbackPointer, - userData: GetDelegatePointer(callback), - GetOptionalPointer(broadPhaseLayerFilter), - GetOptionalPointer(objectLayerFilter), - GetOptionalPointer(bodyFilter), - GetOptionalPointer(shapeFilter) - ); - } - - public static bool JPH_NarrowPhaseQuery_CollideShape( - NativeHandle query, - // query parameters - NativeHandle shape, float3 scale, rmatrix4x4 com, CollideShapeSettings settings, rvec3 offset, CollisionCollectorType collector, - // callback - NarrowPhaseQuery.CollideShapeCallback callback, - // optional filters - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default, - NativeHandle bodyFilter = default, - NativeHandle shapeFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_NarrowPhaseQuery_CollideShape2( - query, shape, &scale, &com, (JPH_CollideShapeSettings*)&settings, &offset, collector, - callback: UnsafeNarrowPhaseQueryCallbacks.UnsafeCollidePointCallbackPointer, - userData: GetDelegatePointer(callback), - GetOptionalPointer(broadPhaseLayerFilter), - GetOptionalPointer(objectLayerFilter), - GetOptionalPointer(bodyFilter), - GetOptionalPointer(shapeFilter) - ); - } - - public static bool JPH_NarrowPhaseQuery_CastShape( - NativeHandle query, - // query parameters - NativeHandle shape, rmatrix4x4 worldTransform, float3 direction, ShapeCastSettings settings, rvec3 baseOffset, - // callback - NarrowPhaseQuery.CollideShapeCallback callback, - // optional filters - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default, - NativeHandle bodyFilter = default, - NativeHandle shapeFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_NarrowPhaseQuery_CastShape( - query, shape, &worldTransform, &direction, (JPH_ShapeCastSettings*)&settings, &baseOffset, - callback: UnsafeNarrowPhaseQueryCallbacks.UnsafeCollidePointCallbackPointer, - userData: GetDelegatePointer(callback), - GetOptionalPointer(broadPhaseLayerFilter), - GetOptionalPointer(objectLayerFilter), - GetOptionalPointer(bodyFilter), - GetOptionalPointer(shapeFilter) - ); - } - - public static bool JPH_NarrowPhaseQuery_CastShape( - NativeHandle query, NativeHandle shape, - // query parameters - rmatrix4x4 worldTransform, float3 direction, ShapeCastSettings settings, rvec3 baseOffset, CollisionCollectorType collector, - // callback - NarrowPhaseQuery.CollideShapeCallback callback, - // optional filters - NativeHandle broadPhaseLayerFilter = default, - NativeHandle objectLayerFilter = default, - NativeHandle bodyFilter = default, - NativeHandle shapeFilter = default - ) - { - AssertInitialized(); - - return UnsafeBindings.JPH_NarrowPhaseQuery_CastShape2( - query, shape, &worldTransform, &direction, (JPH_ShapeCastSettings*)&settings, &baseOffset, collector, - callback: UnsafeNarrowPhaseQueryCallbacks.UnsafeCollidePointCallbackPointer, - userData: GetDelegatePointer(callback), - GetOptionalPointer(broadPhaseLayerFilter), - GetOptionalPointer(objectLayerFilter), - GetOptionalPointer(bodyFilter), - GetOptionalPointer(shapeFilter) - ); - } - } - - /// - /// Static function pointers for JPH_NarrowPhaseQuery queries; the individual callback pointers are passed via the user data. - /// - internal static unsafe class UnsafeNarrowPhaseQueryCallbacks - { - private delegate void UnsafeCastRayDelegate(nint udata, RayCastResult* result); - private delegate void UnsafeCollideShapeDelegate(nint udata, CollideShapeResult* result); - private delegate void UnsafeCollidePointDelegate(nint udata, CollidePointResult* result); - - public static nint UnsafeCastRayCallbackPointer = Marshal.GetFunctionPointerForDelegate( - (UnsafeCastRayDelegate)UnsafeCastRayCallback - ); - - public static nint UnsafeCollideShapeCallbackPointer = Marshal.GetFunctionPointerForDelegate( - (UnsafeCollideShapeDelegate)UnsafeCollideShapeCallback - ); - - public static nint UnsafeCollidePointCallbackPointer = Marshal.GetFunctionPointerForDelegate( - (UnsafeCollidePointDelegate)UnsafeCollidePointCallback - ); - - private static void UnsafeCastRayCallback(nint udata, RayCastResult* result) - { - try - { - Marshal.GetDelegateForFunctionPointer(udata).Invoke(ref UnsafeUtility.AsRef(result)); - } - catch (Exception e) - { - Debug.LogException(e); - } - } - - private static void UnsafeCollideShapeCallback(nint udata, CollideShapeResult* result) - { - try - { - Marshal.GetDelegateForFunctionPointer(udata).Invoke(ref UnsafeUtility.AsRef(result)); - } - catch (Exception e) - { - Debug.LogException(e); - } - } - - private static void UnsafeCollidePointCallback(nint udata, CollidePointResult* result) - { - try - { - Marshal.GetDelegateForFunctionPointer(udata).Invoke(ref UnsafeUtility.AsRef(result)); - } - catch (Exception e) - { - Debug.LogException(e); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_NarrowPhaseQuery.cs.meta b/Jolt/Bindings/Bindings_JPH_NarrowPhaseQuery.cs.meta deleted file mode 100644 index 229822f..0000000 --- a/Jolt/Bindings/Bindings_JPH_NarrowPhaseQuery.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 4f9579f1228b4f16b1ecc1fd613f80c2 -timeCreated: 1741185343 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_ObjectLayerFilter.cs b/Jolt/Bindings/Bindings_JPH_ObjectLayerFilter.cs deleted file mode 100644 index b58292d..0000000 --- a/Jolt/Bindings/Bindings_JPH_ObjectLayerFilter.cs +++ /dev/null @@ -1,28 +0,0 @@ -using System; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_ObjectLayerFilter_SetProcs(NativeHandle filter) - { - AssertInitialized(); - - throw new NotImplementedException(); - } - - public static NativeHandle JPH_ObjectLayerFilter_Create() - { - AssertInitialized(); - - throw new NotImplementedException(); - } - - public static void JPH_ObjectLayerFilter_Destroy(NativeHandle filter) - { - AssertInitialized(); - - throw new NotImplementedException(); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ObjectLayerFilter.cs.meta b/Jolt/Bindings/Bindings_JPH_ObjectLayerFilter.cs.meta deleted file mode 100644 index 203e9d1..0000000 --- a/Jolt/Bindings/Bindings_JPH_ObjectLayerFilter.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: c385393e3f1e4d51b2d89fc6e2cebf2d -timeCreated: 1726414170 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_ObjectLayerPairFilterMask.cs b/Jolt/Bindings/Bindings_JPH_ObjectLayerPairFilterMask.cs deleted file mode 100644 index bfb52df..0000000 --- a/Jolt/Bindings/Bindings_JPH_ObjectLayerPairFilterMask.cs +++ /dev/null @@ -1,33 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_ObjectLayerPairFilterMask_Create() - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_ObjectLayerPairFilterMask_Create()); - } - - public static ObjectLayer JPH_ObjectLayerPairFilterMask_GetObjectLayer(uint group, uint mask) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ObjectLayerPairFilterMask_GetObjectLayer(group, mask); - } - - public static uint JPH_ObjectLayerPairFilterMask_GetGroup(ObjectLayer layer) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ObjectLayerPairFilterMask_GetGroup(layer); - } - - public static uint JPH_ObjectLayerPairFilterMask_GetMask(ObjectLayer layer) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ObjectLayerPairFilterMask_GetMask(layer); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ObjectLayerPairFilterMask.cs.meta b/Jolt/Bindings/Bindings_JPH_ObjectLayerPairFilterMask.cs.meta deleted file mode 100644 index 23c9358..0000000 --- a/Jolt/Bindings/Bindings_JPH_ObjectLayerPairFilterMask.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9803f89e8a91ae14b8ba93b1d6fdd09f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_ObjectLayerPairFilterTable.cs b/Jolt/Bindings/Bindings_JPH_ObjectLayerPairFilterTable.cs deleted file mode 100644 index 1c94fb9..0000000 --- a/Jolt/Bindings/Bindings_JPH_ObjectLayerPairFilterTable.cs +++ /dev/null @@ -1,33 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_ObjectLayerPairFilterTable_Create(uint numObjectLayers) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_ObjectLayerPairFilterTable_Create(numObjectLayers)); - } - - public static void JPH_ObjectLayerPairFilterTable_DisableCollision(NativeHandle filter, ObjectLayer layerA, ObjectLayer layerB) - { - AssertInitialized(); - - UnsafeBindings.JPH_ObjectLayerPairFilterTable_DisableCollision(filter, layerA, layerB); - } - - public static void JPH_ObjectLayerPairFilterTable_EnableCollision(NativeHandle filter, ObjectLayer layerA, ObjectLayer layerB) - { - AssertInitialized(); - - UnsafeBindings.JPH_ObjectLayerPairFilterTable_EnableCollision(filter, layerA, layerB); - } - - public static bool JPH_ObjectLayerPairFilterTable_ShouldCollide(NativeHandle filter, ObjectLayer layerA, ObjectLayer layerB) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ObjectLayerPairFilterTable_ShouldCollide(filter, layerA, layerB); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ObjectLayerPairFilterTable.cs.meta b/Jolt/Bindings/Bindings_JPH_ObjectLayerPairFilterTable.cs.meta deleted file mode 100644 index 35d6d6e..0000000 --- a/Jolt/Bindings/Bindings_JPH_ObjectLayerPairFilterTable.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 111672ffca0704345abd93f2626f7c0c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_ObjectVsBroadPhaseLayerFilterMask.cs b/Jolt/Bindings/Bindings_JPH_ObjectVsBroadPhaseLayerFilterMask.cs deleted file mode 100644 index 583a782..0000000 --- a/Jolt/Bindings/Bindings_JPH_ObjectVsBroadPhaseLayerFilterMask.cs +++ /dev/null @@ -1,12 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_ObjectVsBroadPhaseLayerFilterMask_Create(NativeHandle @interface) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_ObjectVsBroadPhaseLayerFilterMask_Create(@interface)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ObjectVsBroadPhaseLayerFilterMask.cs.meta b/Jolt/Bindings/Bindings_JPH_ObjectVsBroadPhaseLayerFilterMask.cs.meta deleted file mode 100644 index d79f309..0000000 --- a/Jolt/Bindings/Bindings_JPH_ObjectVsBroadPhaseLayerFilterMask.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d736216cffe09a245a96940aa873ecdf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_ObjectVsBroadPhaseLayerFilterTable.cs b/Jolt/Bindings/Bindings_JPH_ObjectVsBroadPhaseLayerFilterTable.cs deleted file mode 100644 index fc3bd29..0000000 --- a/Jolt/Bindings/Bindings_JPH_ObjectVsBroadPhaseLayerFilterTable.cs +++ /dev/null @@ -1,12 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_ObjectVsBroadPhaseLayerFilterTable_Create(NativeHandle @interface, uint numBroadPhaseLayers, NativeHandle filter, uint numObjectLayers) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_ObjectVsBroadPhaseLayerFilterTable_Create(@interface, numBroadPhaseLayers, filter, numObjectLayers)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ObjectVsBroadPhaseLayerFilterTable.cs.meta b/Jolt/Bindings/Bindings_JPH_ObjectVsBroadPhaseLayerFilterTable.cs.meta deleted file mode 100644 index b4e4250..0000000 --- a/Jolt/Bindings/Bindings_JPH_ObjectVsBroadPhaseLayerFilterTable.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1802b903821d06e42a1df6b3f836de80 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_PhysicsMaterial.cs b/Jolt/Bindings/Bindings_JPH_PhysicsMaterial.cs deleted file mode 100644 index e107aa9..0000000 --- a/Jolt/Bindings/Bindings_JPH_PhysicsMaterial.cs +++ /dev/null @@ -1,47 +0,0 @@ -using System; -using System.Runtime.InteropServices; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_PhysicsMaterial_Create(string name, uint color) - { - AssertInitialized(); - - nint nameptr = default; - - try - { - nameptr = Marshal.StringToHGlobalAnsi(name); // TODO look for a way to generate unsafe binding with marshalling attributes - return CreateHandle(UnsafeBindings.JPH_PhysicsMaterial_Create((sbyte*)nameptr, color)); - } - finally - { - Marshal.FreeHGlobal(nameptr); - } - } - - public static void JPH_PhysicsMaterial_Destroy(NativeHandle material) - { - AssertInitialized(); - - UnsafeBindings.JPH_PhysicsMaterial_Destroy(material); - material.Dispose(); - } - - public static string JPH_PhysicsMaterial_GetDebugName(NativeHandle material) - { - AssertInitialized(); - - throw new NotImplementedException(); // TODO marshal sbyte* pointer into string - } - - public static uint JPH_PhysicsMaterial_GetDebugColor(NativeHandle material) - { - AssertInitialized(); - - return UnsafeBindings.JPH_PhysicsMaterial_GetDebugColor(material); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_PhysicsMaterial.cs.meta b/Jolt/Bindings/Bindings_JPH_PhysicsMaterial.cs.meta deleted file mode 100644 index b52749b..0000000 --- a/Jolt/Bindings/Bindings_JPH_PhysicsMaterial.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: d44ebcaea85246b6b8ecbda951eddd3a -timeCreated: 1725315519 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_PhysicsSystem.cs b/Jolt/Bindings/Bindings_JPH_PhysicsSystem.cs deleted file mode 100644 index 1894583..0000000 --- a/Jolt/Bindings/Bindings_JPH_PhysicsSystem.cs +++ /dev/null @@ -1,214 +0,0 @@ -using System; -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_PhysicsSystem_Create(PhysicsSystemSettings settings) - { - AssertInitialized(); - - // TODO use marshalling instead of recreating native settings - - var nativeSettings = new JPH_PhysicsSystemSettings - { - maxBodies = settings.MaxBodies, - numBodyMutexes = settings.NumBodyMutexes, - maxBodyPairs = settings.MaxBodyPairs, - maxContactConstraints = settings.MaxContactConstraints, - objectLayerPairFilter = settings.ObjectLayerPairFilter.Handle, - broadPhaseLayerInterface = settings.BroadPhaseLayerInterface.Handle, - objectVsBroadPhaseLayerFilter = settings.ObjectVsBroadPhaseLayerFilter.Handle - }; - - return CreateHandle(UnsafeBindings.JPH_PhysicsSystem_Create(&nativeSettings)); - } - - public static void JPH_PhysicsSystem_Destroy(NativeHandle system) - { - AssertInitialized(); - - UnsafeBindings.JPH_PhysicsSystem_Destroy(system); - system.Dispose(); - } - - public static void JPH_PhysicsSystem_SetPhysicsSettings(NativeHandle system, ref PhysicsSettings settings) - { - AssertInitialized(); - - fixed (PhysicsSettings* ptr = &settings) - { - UnsafeBindings.JPH_PhysicsSystem_SetPhysicsSettings(system, (JPH_PhysicsSettings*)ptr); - } - } - - public static void JPH_PhysicsSystem_GetPhysicsSettings(NativeHandle system, ref PhysicsSettings settings) - { - AssertInitialized(); - - fixed (PhysicsSettings* ptr = &settings) - { - UnsafeBindings.JPH_PhysicsSystem_GetPhysicsSettings(system, (JPH_PhysicsSettings*)ptr); - } - } - - public static void JPH_PhysicsSystem_OptimizeBroadPhase(NativeHandle system) - { - AssertInitialized(); - - UnsafeBindings.JPH_PhysicsSystem_OptimizeBroadPhase(system); - } - - public static PhysicsUpdateError JPH_PhysicsSystem_Update(NativeHandle system, float deltaTime, int collisionSteps, NativeHandle jobSystem) - { - AssertInitialized(); - - return UnsafeBindings.JPH_PhysicsSystem_Update(system, deltaTime, collisionSteps, jobSystem); - } - - public static NativeHandle JPH_PhysicsSystem_GetBodyInterface(NativeHandle system) - { - AssertInitialized(); - - return CreateOwnedHandle(system, UnsafeBindings.JPH_PhysicsSystem_GetBodyInterface(system)); - } - - public static NativeHandle JPH_PhysicsSystem_GetBodyInterfaceNoLock(NativeHandle system) - { - AssertInitialized(); - - return CreateOwnedHandle(system, UnsafeBindings.JPH_PhysicsSystem_GetBodyInterfaceNoLock(system)); - } - - public static NativeHandle JPH_PhysicsSystem_GetBodyLockInterface(NativeHandle system) - { - AssertInitialized(); - - return CreateOwnedHandle(system, UnsafeBindings.JPH_PhysicsSystem_GetBodyLockInterface(system)); - } - - public static NativeHandle JPH_PhysicsSystem_GetBodyLockInterfaceNoLock(NativeHandle system) - { - AssertInitialized(); - - return CreateOwnedHandle(system, UnsafeBindings.JPH_PhysicsSystem_GetBodyLockInterfaceNoLock(system)); - } - - public static NativeHandle JPH_PhysicsSystem_GetBroadPhaseQuery(NativeHandle system) - { - AssertInitialized(); - - return CreateOwnedHandle(system, UnsafeBindings.JPH_PhysicsSystem_GetBroadPhaseQuery(system)); - } - - public static NativeHandle JPH_PhysicsSystem_GetNarrowPhaseQuery(NativeHandle system) - { - AssertInitialized(); - - return CreateOwnedHandle(system, UnsafeBindings.JPH_PhysicsSystem_GetNarrowPhaseQuery(system)); - } - - public static NativeHandle JPH_PhysicsSystem_GetNarrowPhaseQueryNoLock(NativeHandle system) - { - AssertInitialized(); - - return CreateOwnedHandle(system, UnsafeBindings.JPH_PhysicsSystem_GetNarrowPhaseQueryNoLock(system)); - } - - public static void JPH_PhysicsSystem_SetContactListener(NativeHandle system, NativeHandle listener) - { - AssertInitialized(); - - UnsafeBindings.JPH_PhysicsSystem_SetContactListener(system, listener); - } - - public static void JPH_PhysicsSystem_SetBodyActivationListener(NativeHandle system, NativeHandle listener) - { - AssertInitialized(); - - UnsafeBindings.JPH_PhysicsSystem_SetBodyActivationListener(system, listener); - } - - public static bool JPH_PhysicsSystem_WereBodiesInContact(NativeHandle system, BodyID a, BodyID b) - { - AssertInitialized(); - - return UnsafeBindings.JPH_PhysicsSystem_WereBodiesInContact(system, a, b); - } - - public static uint JPH_PhysicsSystem_GetNumBodies(NativeHandle system) - { - AssertInitialized(); - - return UnsafeBindings.JPH_PhysicsSystem_GetNumBodies(system); - } - - public static uint JPH_PhysicsSystem_GetNumActiveBodies(NativeHandle system, BodyType type) - { - AssertInitialized(); - - return UnsafeBindings.JPH_PhysicsSystem_GetNumActiveBodies(system, type); - } - - public static uint JPH_PhysicsSystem_GetMaxBodies(NativeHandle system) - { - AssertInitialized(); - - return UnsafeBindings.JPH_PhysicsSystem_GetMaxBodies(system); - } - - public static uint JPH_PhysicsSystem_GetNumConstraints(NativeHandle system) - { - AssertInitialized(); - - return UnsafeBindings.JPH_PhysicsSystem_GetMaxBodies(system); - } - - public static void JPH_PhysicsSystem_SetGravity(NativeHandle system, float3 gravity) - { - AssertInitialized(); - - UnsafeBindings.JPH_PhysicsSystem_SetGravity(system, &gravity); - } - - public static float3 JPH_PhysicsSystem_GetGravity(NativeHandle system) - { - AssertInitialized(); - - float3 gravity; - UnsafeBindings.JPH_PhysicsSystem_GetGravity(system, &gravity); - return gravity; - } - - public static void JPH_PhysicsSystem_AddConstraint(NativeHandle system, NativeHandle constraint) - { - AssertInitialized(); - - UnsafeBindings.JPH_PhysicsSystem_AddConstraint(system, constraint); - } - - public static void JPH_PhysicsSystem_RemoveConstraint(NativeHandle system, NativeHandle constraint) - { - AssertInitialized(); - - UnsafeBindings.JPH_PhysicsSystem_RemoveConstraint(system, constraint); - } - - // TODO JPH_PhysicsSystem_AddConstraints - - // TODO JPH_PhysicsSystem_RemoveConstraints - - // TODO JPH_PhysicsSystem_GetBodies - - // TODO JPH_PhysicsSystem_GetConstraints - - // TODO JPH_PhysicsSystem_DrawBodies - - // TODO JPH_PhysicsSystem_DrawConstraints - - // TODO JPH_PhysicsSystem_DrawConstraintLimits - - // TODO JPH_PhysicsSystem_DrawConstraintReferenceFrame - } -} diff --git a/Jolt/Bindings/Bindings_JPH_PhysicsSystem.cs.meta b/Jolt/Bindings/Bindings_JPH_PhysicsSystem.cs.meta deleted file mode 100644 index 6641650..0000000 --- a/Jolt/Bindings/Bindings_JPH_PhysicsSystem.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b58233318ef91074db8aa8d569678244 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_PlaneShape.cs b/Jolt/Bindings/Bindings_JPH_PlaneShape.cs deleted file mode 100644 index d6057ac..0000000 --- a/Jolt/Bindings/Bindings_JPH_PlaneShape.cs +++ /dev/null @@ -1,40 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - /// - /// Create a new plane shape. The negative space is infinite. The plane face is technically infinite but the - /// half extent restricts the bounding box to optimize collision checks. Planes cannot be on dynamic bodies. - /// - public static NativeHandle JPH_PlaneShape_Create(Plane plane, float halfExtent) - { - AssertInitialized(); - - // TODO include JPH_PhysicsMaterial argument - - return CreateHandle(UnsafeBindings.JPH_PlaneShape_Create((JPH_Plane*)&plane, default, halfExtent)); - } - - /// - /// Get the plane that defines the shape. - /// - public static Plane JPH_PlaneShape_GetPlane(NativeHandle shape) - { - AssertInitialized(); - - Plane result = default; - UnsafeBindings.JPH_PlaneShape_GetPlane(shape, (JPH_Plane*)&result); - return result; - } - - /// - /// Get the half extend that restricts the bounding box of the shape. - /// - public static float JPH_PlaneShape_GetHalfExtent(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_PlaneShape_GetHalfExtent(shape); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_PlaneShape.cs.meta b/Jolt/Bindings/Bindings_JPH_PlaneShape.cs.meta deleted file mode 100644 index 36cb84e..0000000 --- a/Jolt/Bindings/Bindings_JPH_PlaneShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 9626d5d892224ddbbc6b07d6f7ad1f16 -timeCreated: 1725089956 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_PlaneShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_PlaneShapeSettings.cs deleted file mode 100644 index 1de6aa3..0000000 --- a/Jolt/Bindings/Bindings_JPH_PlaneShapeSettings.cs +++ /dev/null @@ -1,21 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_PlaneShapeSettings_Create(Plane plane, float halfExtent) - { - AssertInitialized(); - - // TODO include JPH_PhysicsMaterial argument - - return CreateHandle(UnsafeBindings.JPH_PlaneShapeSettings_Create((JPH_Plane*)&plane, default, halfExtent)); - } - - public static NativeHandle JPH_PlaneShapeSettings_CreateShape(NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_PlaneShapeSettings_CreateShape(settings)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_PlaneShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_PlaneShapeSettings.cs.meta deleted file mode 100644 index bc1c1bf..0000000 --- a/Jolt/Bindings/Bindings_JPH_PlaneShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2ffe0390c3ad41289cd01b8c8a673853 -timeCreated: 1725089713 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_PointConstraint.cs b/Jolt/Bindings/Bindings_JPH_PointConstraint.cs deleted file mode 100644 index 92b8602..0000000 --- a/Jolt/Bindings/Bindings_JPH_PointConstraint.cs +++ /dev/null @@ -1,58 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_PointConstraint_Create(ref PointConstraintSettings settings, NativeHandle body1, NativeHandle body2) - { - AssertInitialized(); - - fixed (PointConstraintSettings* ptr = &settings) - { - return CreateHandle(UnsafeBindings.JPH_PointConstraint_Create((JPH_PointConstraintSettings*) ptr, body1, body2)); - } - } - - public static void JPH_PointConstraint_SetPoint1(NativeHandle constraint, ConstraintSpace space, rvec3 value) - { - AssertInitialized(); - - UnsafeBindings.JPH_PointConstraint_SetPoint1(constraint, space, &value); - } - - public static void JPH_PointConstraint_SetPoint2(NativeHandle constraint, ConstraintSpace space, rvec3 value) - { - AssertInitialized(); - - UnsafeBindings.JPH_PointConstraint_SetPoint2(constraint, space, &value); - } - - public static float3 JPH_PointConstraint_GetLocalSpacePoint1(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_PointConstraint_GetLocalSpacePoint1(constraint, &result); - return result; - } - - public static float3 JPH_PointConstraint_GetLocalSpacePoint2(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_PointConstraint_GetLocalSpacePoint2(constraint, &result); - return result; - } - - public static float3 JPH_PointConstraint_GetTotalLambdaPosition(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_PointConstraint_GetTotalLambdaPosition(constraint, &result); - return result; - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_PointConstraint.cs.meta b/Jolt/Bindings/Bindings_JPH_PointConstraint.cs.meta deleted file mode 100644 index 2a7708f..0000000 --- a/Jolt/Bindings/Bindings_JPH_PointConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 030d971c7a8b4d9cbd72e614e4144cee -timeCreated: 1725315892 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_PointConstraintSettings.cs b/Jolt/Bindings/Bindings_JPH_PointConstraintSettings.cs deleted file mode 100644 index 0fe8137..0000000 --- a/Jolt/Bindings/Bindings_JPH_PointConstraintSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_PointConstraintSettings_Init(ref PointConstraintSettings settings) - { - AssertInitialized(); - - fixed (PointConstraintSettings* ptr = &settings) - { - UnsafeBindings.JPH_PointConstraintSettings_Init((JPH_PointConstraintSettings*)ptr); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_PointConstraintSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_PointConstraintSettings.cs.meta deleted file mode 100644 index 2da2662..0000000 --- a/Jolt/Bindings/Bindings_JPH_PointConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 1f77becee0d04c90b691b4be7a7eef71 -timeCreated: 1725315878 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_RotatedTranslatedShape.cs b/Jolt/Bindings/Bindings_JPH_RotatedTranslatedShape.cs deleted file mode 100644 index 8ecfcf7..0000000 --- a/Jolt/Bindings/Bindings_JPH_RotatedTranslatedShape.cs +++ /dev/null @@ -1,14 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_RotatedTranslatedShape_Create(float3 position, quaternion rotation, NativeHandle shape) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_RotatedTranslatedShape_Create(&position, &rotation, shape)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_RotatedTranslatedShape.cs.meta b/Jolt/Bindings/Bindings_JPH_RotatedTranslatedShape.cs.meta deleted file mode 100644 index 4f623e8..0000000 --- a/Jolt/Bindings/Bindings_JPH_RotatedTranslatedShape.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 16a704a640ec1e443a27b6f8dd8d7e1a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_RotatedTranslatedShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_RotatedTranslatedShapeSettings.cs deleted file mode 100644 index 0d77acb..0000000 --- a/Jolt/Bindings/Bindings_JPH_RotatedTranslatedShapeSettings.cs +++ /dev/null @@ -1,28 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_RotatedTranslatedShapeSettings_Create(float3 position, quaternion rotation, NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_RotatedTranslatedShapeSettings_Create(&position, &rotation, settings)); - } - - public static NativeHandle JPH_RotatedTranslatedShapeSettings_Create(float3 position, quaternion rotation, NativeHandle shape) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_RotatedTranslatedShapeSettings_Create2(&position, &rotation, shape)); - } - - public static NativeHandle JPH_RotatedTranslatedShapeSettings_CreateShape(NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_RotatedTranslatedShapeSettings_CreateShape(settings)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_RotatedTranslatedShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_RotatedTranslatedShapeSettings.cs.meta deleted file mode 100644 index 050bc39..0000000 --- a/Jolt/Bindings/Bindings_JPH_RotatedTranslatedShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ecad7695f8a89f9439fcbee8d2484663 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_Shape.cs b/Jolt/Bindings/Bindings_JPH_Shape.cs deleted file mode 100644 index 60d7624..0000000 --- a/Jolt/Bindings/Bindings_JPH_Shape.cs +++ /dev/null @@ -1,167 +0,0 @@ -using System; -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_Shape_Destroy(NativeHandle shape) - { - AssertInitialized(); - - UnsafeBindings.JPH_Shape_Destroy(shape); - shape.Dispose(); - } - - public static ShapeType JPH_Shape_GetType(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Shape_GetType(shape); - } - - public static ShapeSubType JPH_Shape_GetSubType(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Shape_GetSubType(shape); - } - - public static ulong JPH_Shape_GetUserData(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Shape_GetUserData(shape); - } - - public static void JPH_Shape_SetUserData(NativeHandle shape, ulong userData) - { - AssertInitialized(); - - UnsafeBindings.JPH_Shape_SetUserData(shape, userData); - } - - public static bool JPH_Shape_MustBeStatic(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Shape_MustBeStatic(shape); - } - - public static float3 JPH_Shape_GetCenterOfMass(NativeHandle shape) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_Shape_GetCenterOfMass(shape, &result); - return result; - } - - public static AABox JPH_Shape_GetLocalBounds(NativeHandle shape) - { - AssertInitialized(); - - AABox result; - UnsafeBindings.JPH_Shape_GetLocalBounds(shape, (JPH_AABox*)&result); - return result; - } - - public static uint JPH_Shape_GetSubShapeIDBitsRecursive(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Shape_GetSubShapeIDBitsRecursive(shape); - } - - public static AABox JPH_Shape_GetWorldSpaceBounds(NativeHandle shape, rmatrix4x4 centerOfMassTransform, float3 scale) - { - AssertInitialized(); - - AABox result; - UnsafeBindings.JPH_Shape_GetWorldSpaceBounds(shape, ¢erOfMassTransform, &scale, (JPH_AABox*)&result); - return result; - } - - public static float JPH_Shape_GetInnerRadius(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Shape_GetInnerRadius(shape); - } - - public static MassProperties JPH_Shape_GetMassProperties(NativeHandle shape) - { - AssertInitialized(); - - MassProperties result; - UnsafeBindings.JPH_Shape_GetMassProperties(shape, (JPH_MassProperties*)&result); - return result; - } - - // TODO JPH_Shape_GetLeafShape - - public static NativeHandle JPH_Shape_GetMaterial(NativeHandle shape, SubShapeID subShapeID) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_Shape_GetMaterial(shape, subShapeID.Value)); - } - - public static float3 JPH_Shape_GetSurfaceNormal(NativeHandle shape, SubShapeID subShapeID, float3 localPosition) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_Shape_GetSurfaceNormal(shape, subShapeID.Value, &localPosition, &result); - return result; - } - - public static float JPH_Shape_GetVolume(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Shape_GetVolume(shape); - } - - public static bool JPH_Shape_IsValidScale(NativeHandle shape, float3 scale) - { - AssertInitialized(); - - return UnsafeBindings.JPH_Shape_IsValidScale(shape, &scale); - } - - public static float3 JPH_Shape_MakeScaleValid(NativeHandle shape, float3 scale) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_Shape_MakeScaleValid(shape, &scale, &result); - return result; - } - - public static NativeHandle JPH_Shape_ScaleShape(NativeHandle shape, float3 scale) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_Shape_ScaleShape(shape, &scale)); - } - - public static bool JPH_Shape_CastRay(NativeHandle shape, float3 origin, float3 direction, out RayCastResult result) - { - AssertInitialized(); - - result = default; - - fixed (RayCastResult* resultptr = &result) - { - return UnsafeBindings.JPH_Shape_CastRay(shape, &origin, &direction, (JPH_RayCastResult*)resultptr); - } - } - - // TODO JPH_Shape_CastRay2 - - // TODO JPH_Shape_CollidePoint - - // TODO JPH_Shape_CollidePoint2 - } -} diff --git a/Jolt/Bindings/Bindings_JPH_Shape.cs.meta b/Jolt/Bindings/Bindings_JPH_Shape.cs.meta deleted file mode 100644 index 831a742..0000000 --- a/Jolt/Bindings/Bindings_JPH_Shape.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cc93263971e467b479e3b860b5aa383f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_ShapeCastSettings.cs b/Jolt/Bindings/Bindings_JPH_ShapeCastSettings.cs deleted file mode 100644 index c2979a7..0000000 --- a/Jolt/Bindings/Bindings_JPH_ShapeCastSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_ShapeCastSettings_Init(ref ShapeCastSettings settings) - { - AssertInitialized(); - - fixed (ShapeCastSettings* ptr = &settings) - { - UnsafeBindings.JPH_ShapeCastSettings_Init((JPH_ShapeCastSettings*)ptr); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ShapeCastSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_ShapeCastSettings.cs.meta deleted file mode 100644 index b010533..0000000 --- a/Jolt/Bindings/Bindings_JPH_ShapeCastSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 30f26808e8a2424893148db4e02e5059 -timeCreated: 1741874585 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_ShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_ShapeSettings.cs deleted file mode 100644 index 38f0e55..0000000 --- a/Jolt/Bindings/Bindings_JPH_ShapeSettings.cs +++ /dev/null @@ -1,27 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_ShapeSettings_Destroy(NativeHandle settings) - { - AssertInitialized(); - - UnsafeBindings.JPH_ShapeSettings_Destroy(settings); - settings.Dispose(); - } - - public static ulong JPH_ShapeSettings_GetUserData(NativeHandle settings) - { - AssertInitialized(); - - return UnsafeBindings.JPH_ShapeSettings_GetUserData(settings); - } - - public static void JPH_ShapeSettings_SetUserData(NativeHandle settings, ulong data) - { - AssertInitialized(); - - UnsafeBindings.JPH_ShapeSettings_SetUserData(settings, data); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_ShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_ShapeSettings.cs.meta deleted file mode 100644 index fba0889..0000000 --- a/Jolt/Bindings/Bindings_JPH_ShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1721272f2179e5a48b24d03f3801eec8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_SixDOFConstraint.cs b/Jolt/Bindings/Bindings_JPH_SixDOFConstraint.cs deleted file mode 100644 index f4ddf1b..0000000 --- a/Jolt/Bindings/Bindings_JPH_SixDOFConstraint.cs +++ /dev/null @@ -1,76 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_SixDOFConstraint_Create(ref SixDOFConstraintSettings settings, NativeHandle body1, NativeHandle body2) - { - AssertInitialized(); - - fixed (SixDOFConstraintSettings* ptr = &settings) - { - return CreateHandle(UnsafeBindings.JPH_SixDOFConstraint_Create((JPH_SixDOFConstraintSettings*)ptr, body1, body2)); - } - } - - public static SixDOFConstraintSettings JPH_SixDOFConstraint_GetSettings(NativeHandle constraint) - { - AssertInitialized(); - - SixDOFConstraintSettings result; - UnsafeBindings.JPH_SixDOFConstraint_GetSettings(constraint, (JPH_SixDOFConstraintSettings*)&result); - return result; - } - - public static float JPH_SixDOFConstraint_GetLimitsMin(NativeHandle constraint, SixDOFConstraintAxis axis) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SixDOFConstraint_GetLimitsMin(constraint, axis); - } - - public static float JPH_SixDOFConstraint_GetLimitsMax(NativeHandle constraint, SixDOFConstraintAxis axis) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SixDOFConstraint_GetLimitsMax(constraint, axis); - } - - public static float3 JPH_SixDOFConstraint_GetTotalLambdaPosition(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_SixDOFConstraint_GetTotalLambdaPosition(constraint, &result); - return result; - } - - public static float3 JPH_SixDOFConstraint_GetTotalLambdaRotation(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_SixDOFConstraint_GetTotalLambdaRotation(constraint, &result); - return result; - } - - public static float3 JPH_SixDOFConstraint_GetTotalLambdaMotorTranslation(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_SixDOFConstraint_GetTotalLambdaMotorTranslation(constraint, &result); - return result; - } - - public static float3 JPH_SixDOFConstraint_GetTotalLambdaMotorRotation(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_SixDOFConstraint_GetTotalLambdaMotorRotation(constraint, &result); - return result; - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_SixDOFConstraint.cs.meta b/Jolt/Bindings/Bindings_JPH_SixDOFConstraint.cs.meta deleted file mode 100644 index 4f81ed8..0000000 --- a/Jolt/Bindings/Bindings_JPH_SixDOFConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: dadc76c4a241477d9a2675473e85d723 -timeCreated: 1726411692 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_SixDOFConstraintSettings.cs b/Jolt/Bindings/Bindings_JPH_SixDOFConstraintSettings.cs deleted file mode 100644 index eee59a2..0000000 --- a/Jolt/Bindings/Bindings_JPH_SixDOFConstraintSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_SixDOFConstraintSettings_Init(ref SixDOFConstraintSettings settings) - { - AssertInitialized(); - - fixed (SixDOFConstraintSettings* ptr = &settings) - { - UnsafeBindings.JPH_SixDOFConstraintSettings_Init((JPH_SixDOFConstraintSettings*)ptr); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_SixDOFConstraintSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_SixDOFConstraintSettings.cs.meta deleted file mode 100644 index 10d10e2..0000000 --- a/Jolt/Bindings/Bindings_JPH_SixDOFConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 4ee0e137b2d34ebc88eebd9c977de8ab -timeCreated: 1726411594 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_SliderConstraint.cs b/Jolt/Bindings/Bindings_JPH_SliderConstraint.cs deleted file mode 100644 index 54d86ad..0000000 --- a/Jolt/Bindings/Bindings_JPH_SliderConstraint.cs +++ /dev/null @@ -1,181 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_SliderConstraint_Create(ref SliderConstraintSettings settings, NativeHandle body1, NativeHandle body2) - { - AssertInitialized(); - - fixed (SliderConstraintSettings* ptr = &settings) - { - return CreateHandle(UnsafeBindings.JPH_SliderConstraint_Create((JPH_SliderConstraintSettings*)ptr, body1, body2)); - } - } - - public static SliderConstraintSettings JPH_SliderConstraint_GetSettings(NativeHandle constraint) - { - AssertInitialized(); - - SliderConstraintSettings result; - UnsafeBindings.JPH_SliderConstraint_GetSettings(constraint, (JPH_SliderConstraintSettings*)&result); - return result; - } - - public static float JPH_SliderConstraint_GetCurrentPosition(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SliderConstraint_GetCurrentPosition(constraint); - } - - public static void JPH_SliderConstraint_SetMaxFrictionForce(NativeHandle constraint, float force) - { - AssertInitialized(); - - UnsafeBindings.JPH_SliderConstraint_SetMaxFrictionForce(constraint, force); - } - - public static float JPH_SliderConstraint_GetMaxFrictionForce(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SliderConstraint_GetMaxFrictionForce(constraint); - } - - public static void JPH_SliderConstraint_SetMotorSettings(NativeHandle constraint, MotorSettings settings) - { - AssertInitialized(); - - UnsafeBindings.JPH_SliderConstraint_SetMotorSettings(constraint, (JPH_MotorSettings*)&settings); - } - - public static MotorSettings JPH_SliderConstraint_GetMotorSettings(NativeHandle constraint) - { - AssertInitialized(); - - MotorSettings result; - UnsafeBindings.JPH_SliderConstraint_GetMotorSettings(constraint, (JPH_MotorSettings*)&result); - return result; - } - - public static void JPH_SliderConstraint_SetMotorState(NativeHandle constraint, MotorState state) - { - AssertInitialized(); - - UnsafeBindings.JPH_SliderConstraint_SetMotorState(constraint, state); - } - - public static MotorState JPH_SliderConstraint_GetMotorState(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SliderConstraint_GetMotorState(constraint); - } - - public static void JPH_SliderConstraint_SetTargetVelocity(NativeHandle constraint, float velocity) - { - AssertInitialized(); - - UnsafeBindings.JPH_SliderConstraint_SetTargetVelocity(constraint, velocity); - } - - public static float JPH_SliderConstraint_GetTargetVelocity(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SliderConstraint_GetTargetVelocity(constraint); - } - - public static void JPH_SliderConstraint_SetTargetPosition(NativeHandle constraint, float position) - { - AssertInitialized(); - - UnsafeBindings.JPH_SliderConstraint_SetTargetPosition(constraint, position); - } - - public static float JPH_SliderConstraint_GetTargetPosition(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SliderConstraint_GetTargetPosition(constraint); - } - - public static void JPH_SliderConstraint_SetLimits(NativeHandle constraint, float min, float max) - { - AssertInitialized(); - - UnsafeBindings.JPH_SliderConstraint_SetLimits(constraint, min, max); - } - - public static float JPH_SliderConstraint_GetLimitsMin(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SliderConstraint_GetLimitsMin(constraint); - } - - public static float JPH_SliderConstraint_GetLimitsMax(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SliderConstraint_GetLimitsMax(constraint); - } - - public static bool JPH_SliderConstraint_HasLimits(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SliderConstraint_HasLimits(constraint); - } - - public static SpringSettings JPH_SliderConstraint_GetLimitsSpringSettings(NativeHandle constraint) - { - AssertInitialized(); - - SpringSettings result; - UnsafeBindings.JPH_SliderConstraint_GetLimitsSpringSettings(constraint, (JPH_SpringSettings*)&result); - return result; - } - - public static void JPH_SliderConstraint_SetLimitsSpringSettings(NativeHandle constraint, SpringSettings settings) - { - AssertInitialized(); - - UnsafeBindings.JPH_SliderConstraint_SetLimitsSpringSettings(constraint, (JPH_SpringSettings*)&settings); - } - - public static float2 JPH_SliderConstraint_GetTotalLambdaPosition(NativeHandle constraint) - { - AssertInitialized(); - - float2 result; - UnsafeBindings.JPH_SliderConstraint_GetTotalLambdaPosition(constraint, &result); - return result; - } - - public static float JPH_SliderConstraint_GetTotalLambdaPositionLimits(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SliderConstraint_GetTotalLambdaPositionLimits(constraint); - } - - public static float3 JPH_SliderConstraint_GetTotalLambdaRotation(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_SliderConstraint_GetTotalLambdaRotation(constraint, &result); - return result; - } - - public static float JPH_SliderConstraint_GetTotalLambdaMotor(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SliderConstraint_GetTotalLambdaMotor(constraint); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_SliderConstraint.cs.meta b/Jolt/Bindings/Bindings_JPH_SliderConstraint.cs.meta deleted file mode 100644 index 59e494b..0000000 --- a/Jolt/Bindings/Bindings_JPH_SliderConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 9ce21f38dce847fca91fcc9219521221 -timeCreated: 1725728498 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_SliderConstraintSettings.cs b/Jolt/Bindings/Bindings_JPH_SliderConstraintSettings.cs deleted file mode 100644 index 9570081..0000000 --- a/Jolt/Bindings/Bindings_JPH_SliderConstraintSettings.cs +++ /dev/null @@ -1,27 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_SliderConstraintSettings_Init(ref SliderConstraintSettings settings) - { - AssertInitialized(); - - fixed (SliderConstraintSettings* ptr = &settings) - { - UnsafeBindings.JPH_SliderConstraintSettings_Init((JPH_SliderConstraintSettings*)ptr); - } - } - - public static void JPH_SliderConstraintSettings_SetSliderAxis(ref SliderConstraintSettings settings, float3 axis) - { - AssertInitialized(); - - fixed (SliderConstraintSettings* ptr = &settings) - { - UnsafeBindings.JPH_SliderConstraintSettings_SetSliderAxis((JPH_SliderConstraintSettings*)ptr, &axis); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_SliderConstraintSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_SliderConstraintSettings.cs.meta deleted file mode 100644 index 8cdfc06..0000000 --- a/Jolt/Bindings/Bindings_JPH_SliderConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 639aa38b19724b1b8d274bafd0b6212b -timeCreated: 1725728007 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_SoftBodyCreationSettings.cs b/Jolt/Bindings/Bindings_JPH_SoftBodyCreationSettings.cs deleted file mode 100644 index 5ad7d34..0000000 --- a/Jolt/Bindings/Bindings_JPH_SoftBodyCreationSettings.cs +++ /dev/null @@ -1,12 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_SoftBodyCreationSettings() - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_SoftBodyCreationSettings_Create()); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_SoftBodyCreationSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_SoftBodyCreationSettings.cs.meta deleted file mode 100644 index c71b586..0000000 --- a/Jolt/Bindings/Bindings_JPH_SoftBodyCreationSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fcb6dc805e3cfbe45bd72e16c8b15e6e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_SphereShape.cs b/Jolt/Bindings/Bindings_JPH_SphereShape.cs deleted file mode 100644 index cf6753b..0000000 --- a/Jolt/Bindings/Bindings_JPH_SphereShape.cs +++ /dev/null @@ -1,19 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_SphereShape_Create(float radius) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_SphereShape_Create(radius)); - } - - public static float JPH_SphereShape_GetRadius(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SphereShape_GetRadius(shape); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_SphereShape.cs.meta b/Jolt/Bindings/Bindings_JPH_SphereShape.cs.meta deleted file mode 100644 index 50f48a9..0000000 --- a/Jolt/Bindings/Bindings_JPH_SphereShape.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ed8752dcf41339342a7b1e03687889a5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_SphereShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_SphereShapeSettings.cs deleted file mode 100644 index c9b3444..0000000 --- a/Jolt/Bindings/Bindings_JPH_SphereShapeSettings.cs +++ /dev/null @@ -1,33 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_SphereShapeSettings_Create(float radius) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_SphereShapeSettings_Create(radius)); - } - - public static NativeHandle JPH_SphereShapeSettings_CreateShape(NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_SphereShapeSettings_CreateShape(settings)); - } - - public static float JPH_SphereShapeSettings_GetRadius(NativeHandle settings) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SphereShapeSettings_GetRadius(settings); - } - - public static void JPH_SphereShapeSettings_SetRadius(NativeHandle settings, float radius) - { - AssertInitialized(); - - UnsafeBindings.JPH_SphereShapeSettings_SetRadius(settings, radius); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_SphereShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_SphereShapeSettings.cs.meta deleted file mode 100644 index e8cc932..0000000 --- a/Jolt/Bindings/Bindings_JPH_SphereShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4472ecf9f21070041a5b5d0ddbb27c72 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_SwingTwistConstraint.cs b/Jolt/Bindings/Bindings_JPH_SwingTwistConstraint.cs deleted file mode 100644 index c24c690..0000000 --- a/Jolt/Bindings/Bindings_JPH_SwingTwistConstraint.cs +++ /dev/null @@ -1,63 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_SwingTwistConstraint_Create(ref SwingTwistConstraintSettings settings, NativeHandle body1, NativeHandle body2) - { - AssertInitialized(); - - fixed (SwingTwistConstraintSettings* ptr = &settings) - { - return CreateHandle(UnsafeBindings.JPH_SwingTwistConstraint_Create((JPH_SwingTwistConstraintSettings*)ptr, body1, body2)); - } - } - - public static float JPH_SwingTwistConstraint_GetNormalHalfConeAngle(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SwingTwistConstraint_GetNormalHalfConeAngle(constraint); - } - - public static float3 JPH_SwingTwistConstraint_GetTotalLambdaPosition(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_SwingTwistConstraint_GetTotalLambdaPosition(constraint, &result); - return result; - } - - public static float JPH_SwingTwistConstraint_GetTotalLambdaTwist(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SwingTwistConstraint_GetTotalLambdaTwist(constraint); - } - - public static float JPH_SwingTwistConstraint_GetTotalLambdaSwingY(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SwingTwistConstraint_GetTotalLambdaSwingY(constraint); - } - - public static float JPH_SwingTwistConstraint_GetTotalLambdaSwingZ(NativeHandle constraint) - { - AssertInitialized(); - - return UnsafeBindings.JPH_SwingTwistConstraint_GetTotalLambdaSwingZ(constraint); - } - - public static float3 JPH_SwingTwistConstraint_GetTotalLambdaMotor(NativeHandle constraint) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_SwingTwistConstraint_GetTotalLambdaMotor(constraint, &result); - return result; - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_SwingTwistConstraint.cs.meta b/Jolt/Bindings/Bindings_JPH_SwingTwistConstraint.cs.meta deleted file mode 100644 index 9c550b4..0000000 --- a/Jolt/Bindings/Bindings_JPH_SwingTwistConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a39284d73c834a05892ac0e14500cb54 -timeCreated: 1726411280 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_SwingTwistConstraintSettings.cs b/Jolt/Bindings/Bindings_JPH_SwingTwistConstraintSettings.cs deleted file mode 100644 index 3644eec..0000000 --- a/Jolt/Bindings/Bindings_JPH_SwingTwistConstraintSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static void JPH_SwingTwistConstraintSettings_Init(ref SwingTwistConstraintSettings settings) - { - AssertInitialized(); - - fixed (SwingTwistConstraintSettings* ptr = &settings) - { - UnsafeBindings.JPH_SwingTwistConstraintSettings_Init((JPH_SwingTwistConstraintSettings*)ptr); - } - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_SwingTwistConstraintSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_SwingTwistConstraintSettings.cs.meta deleted file mode 100644 index 8da9cad..0000000 --- a/Jolt/Bindings/Bindings_JPH_SwingTwistConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 57fe7ee2aaa04cbaae1f9ad9273db80e -timeCreated: 1726411153 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_TaperedCapsuleShape.cs b/Jolt/Bindings/Bindings_JPH_TaperedCapsuleShape.cs deleted file mode 100644 index 673180b..0000000 --- a/Jolt/Bindings/Bindings_JPH_TaperedCapsuleShape.cs +++ /dev/null @@ -1,26 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static float JPH_TaperedCapsuleShape_GetTopRadius(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_TaperedCapsuleShape_GetTopRadius(shape); - } - - public static float JPH_TaperedCapsuleShape_GetBottomRadius(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_TaperedCapsuleShape_GetBottomRadius(shape); - } - - public static float JPH_TaperedCapsuleShape_GetHalfHeight(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_TaperedCapsuleShape_GetHalfHeight(shape); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_TaperedCapsuleShape.cs.meta b/Jolt/Bindings/Bindings_JPH_TaperedCapsuleShape.cs.meta deleted file mode 100644 index 8d95cca..0000000 --- a/Jolt/Bindings/Bindings_JPH_TaperedCapsuleShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b0404e6516c94ccdafaac0e2a7b1c3b1 -timeCreated: 1726339250 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_TaperedCapsuleShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_TaperedCapsuleShapeSettings.cs deleted file mode 100644 index fa20858..0000000 --- a/Jolt/Bindings/Bindings_JPH_TaperedCapsuleShapeSettings.cs +++ /dev/null @@ -1,19 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_TaperedCapsuleShapeSettings_Create(float halfHeightOfTaperedCylinder, float topRadius, float bottomRadius) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_TaperedCapsuleShapeSettings_Create(halfHeightOfTaperedCylinder, topRadius, bottomRadius)); - } - - public static NativeHandle JPH_TaperedCapsuleShapeSettings_CreateShape(NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_TaperedCapsuleShapeSettings_CreateShape(settings)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_TaperedCapsuleShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_TaperedCapsuleShapeSettings.cs.meta deleted file mode 100644 index ea65da9..0000000 --- a/Jolt/Bindings/Bindings_JPH_TaperedCapsuleShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0dbc34e19517f39429242cce1d0e5640 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_TaperedCylinderShape.cs b/Jolt/Bindings/Bindings_JPH_TaperedCylinderShape.cs deleted file mode 100644 index 62235e1..0000000 --- a/Jolt/Bindings/Bindings_JPH_TaperedCylinderShape.cs +++ /dev/null @@ -1,33 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static float JPH_TaperedCylinderShape_GetTopRadius(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_TaperedCylinderShape_GetTopRadius(shape); - } - - public static float JPH_TaperedCylinderShape_GetBottomRadius(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_TaperedCylinderShape_GetBottomRadius(shape); - } - - public static float JPH_TaperedCylinderShape_GetConvexRadius(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_TaperedCylinderShape_GetConvexRadius(shape); - } - - public static float JPH_TaperedCylinderShape_GetHalfHeight(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_TaperedCylinderShape_GetHalfHeight(shape); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_TaperedCylinderShape.cs.meta b/Jolt/Bindings/Bindings_JPH_TaperedCylinderShape.cs.meta deleted file mode 100644 index a1b7a69..0000000 --- a/Jolt/Bindings/Bindings_JPH_TaperedCylinderShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: df2dddeacda640eaab6929173d9f39b4 -timeCreated: 1742520824 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_TaperedCylinderShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_TaperedCylinderShapeSettings.cs deleted file mode 100644 index c0313e1..0000000 --- a/Jolt/Bindings/Bindings_JPH_TaperedCylinderShapeSettings.cs +++ /dev/null @@ -1,19 +0,0 @@ -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_TaperedCylinderShapeSettings_Create(float halfHeightOfTaperedCylinder, float topRadius, float bottomRadius, float convexRadius, NativeHandle material) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_TaperedCylinderShapeSettings_Create(halfHeightOfTaperedCylinder, topRadius, bottomRadius, convexRadius, material)); - } - - public static NativeHandle JPH_TaperedCylinderShapeSettings_CreateShape(NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_TaperedCylinderShapeSettings_CreateShape(settings)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_TaperedCylinderShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_TaperedCylinderShapeSettings.cs.meta deleted file mode 100644 index b6437cc..0000000 --- a/Jolt/Bindings/Bindings_JPH_TaperedCylinderShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a96250d8dd34402d8d500a5b81bc1310 -timeCreated: 1742520729 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_TriangleShape.cs b/Jolt/Bindings/Bindings_JPH_TriangleShape.cs deleted file mode 100644 index e0f5d73..0000000 --- a/Jolt/Bindings/Bindings_JPH_TriangleShape.cs +++ /dev/null @@ -1,48 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_TriangleShape_Create(float3 va, float3 vb, float3 vc, float convexRadius) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_TriangleShape_Create(&va, &vb, &vc, convexRadius)); - } - - public static float JPH_TriangleShape_GetConvexRadius(NativeHandle shape) - { - AssertInitialized(); - - return UnsafeBindings.JPH_TriangleShape_GetConvexRadius(shape); - } - - public static float3 JPH_TriangleShape_GetVertex1(NativeHandle shape) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_TriangleShape_GetVertex1(shape, &result); - return result; - } - - public static float3 JPH_TriangleShape_GetVertex2(NativeHandle shape) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_TriangleShape_GetVertex2(shape, &result); - return result; - } - - public static float3 JPH_TriangleShape_GetVertex3(NativeHandle shape) - { - AssertInitialized(); - - float3 result; - UnsafeBindings.JPH_TriangleShape_GetVertex3(shape, &result); - return result; - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_TriangleShape.cs.meta b/Jolt/Bindings/Bindings_JPH_TriangleShape.cs.meta deleted file mode 100644 index ffcca1c..0000000 --- a/Jolt/Bindings/Bindings_JPH_TriangleShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 6ed6e9a0342b46b88b3d0e32e8986117 -timeCreated: 1726341797 \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_TriangleShapeSettings.cs b/Jolt/Bindings/Bindings_JPH_TriangleShapeSettings.cs deleted file mode 100644 index ca4ce1d..0000000 --- a/Jolt/Bindings/Bindings_JPH_TriangleShapeSettings.cs +++ /dev/null @@ -1,21 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_TriangleShapeSettings_Create(float3 va, float3 vb, float3 vc, float convexRadius) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_TriangleShapeSettings_Create(&va, &vb, &vc, convexRadius)); - } - - public static NativeHandle JPH_TriangleShapeSettings_CreateShape(NativeHandle settings) - { - AssertInitialized(); - - return CreateHandle(UnsafeBindings.JPH_TriangleShapeSettings_CreateShape(settings)); - } - } -} diff --git a/Jolt/Bindings/Bindings_JPH_TriangleShapeSettings.cs.meta b/Jolt/Bindings/Bindings_JPH_TriangleShapeSettings.cs.meta deleted file mode 100644 index 87d38e9..0000000 --- a/Jolt/Bindings/Bindings_JPH_TriangleShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 194321128bf6b404e84aeb4756034fee -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Bindings/Bindings_JPH_TwoBodyConstraint.cs b/Jolt/Bindings/Bindings_JPH_TwoBodyConstraint.cs deleted file mode 100644 index eb8f4be..0000000 --- a/Jolt/Bindings/Bindings_JPH_TwoBodyConstraint.cs +++ /dev/null @@ -1,31 +0,0 @@ -using Unity.Mathematics; - -namespace Jolt -{ - internal static unsafe partial class Bindings - { - public static NativeHandle JPH_TwoBodyConstraint_GetBody1(NativeHandle constraint) - { - return CreateHandle(UnsafeBindings.JPH_TwoBodyConstraint_GetBody1(constraint)); - } - - public static NativeHandle JPH_TwoBodyConstraint_GetBody2(NativeHandle constraint) - { - return CreateHandle(UnsafeBindings.JPH_TwoBodyConstraint_GetBody2(constraint)); - } - - public static float4x4 JPH_TwoBodyConstraint_GetConstraintToBody1Matrix(NativeHandle constraint) - { - float4x4 result; - UnsafeBindings.JPH_TwoBodyConstraint_GetConstraintToBody1Matrix(constraint, &result); - return result; - } - - public static float4x4 JPH_TwoBodyConstraint_GetConstraintToBody2Matrix(NativeHandle constraint) - { - float4x4 result; - UnsafeBindings.JPH_TwoBodyConstraint_GetConstraintToBody2Matrix(constraint, &result); - return result; - } - } -} \ No newline at end of file diff --git a/Jolt/Bindings/Bindings_JPH_TwoBodyConstraint.cs.meta b/Jolt/Bindings/Bindings_JPH_TwoBodyConstraint.cs.meta deleted file mode 100644 index 73627c7..0000000 --- a/Jolt/Bindings/Bindings_JPH_TwoBodyConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 22f9da483829404d9614e4bcb81eae18 -timeCreated: 1726412693 \ No newline at end of file diff --git a/Jolt/Bindings/JPH_AllowedDOFs.cs b/Jolt/Bindings/JPH_AllowedDOFs.cs new file mode 100644 index 0000000..595ac4f --- /dev/null +++ b/Jolt/Bindings/JPH_AllowedDOFs.cs @@ -0,0 +1,7 @@ +namespace Jolt +{ + public struct JPH_AllowedDOFs + { + + } +} diff --git a/Jolt/Bindings/JPH_AllowedDOFs.cs.meta b/Jolt/Bindings/JPH_AllowedDOFs.cs.meta new file mode 100644 index 0000000..15d4d5b --- /dev/null +++ b/Jolt/Bindings/JPH_AllowedDOFs.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 930443e209aa4b73b43d0bcfe03168af \ No newline at end of file diff --git a/Jolt/Bindings/JPH_Color.cs b/Jolt/Bindings/JPH_Color.cs new file mode 100644 index 0000000..908067c --- /dev/null +++ b/Jolt/Bindings/JPH_Color.cs @@ -0,0 +1,36 @@ +using System.Runtime.InteropServices; +using UnityEngine; + +namespace Jolt +{ + [StructLayout(LayoutKind.Explicit)] + public struct JPH_Color + { + [FieldOffset(0)] + public uint Value; + [FieldOffset(0)] + public byte R; + [FieldOffset(1)] + public byte G; + [FieldOffset(2)] + public byte B; + [FieldOffset(3)] + public byte A; + + public static implicit operator Color(JPH_Color source) + { + return new Color(source.R / 255f, source.G / 255f, source.B / 255f, source.A / 255f); + } + + public static implicit operator JPH_Color(Color source) + { + return new JPH_Color + { + R = (byte)(source.r * 255), + G = (byte)(source.r * 255), + B = (byte)(source.r * 255), + A = (byte)(source.r * 255) + }; + } + } +} diff --git a/Jolt/Bindings/JPH_Color.cs.meta b/Jolt/Bindings/JPH_Color.cs.meta new file mode 100644 index 0000000..6fc8815 --- /dev/null +++ b/Jolt/Bindings/JPH_Color.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: f663809e4b03430bb779d7e04fb1d1e2 +timeCreated: 1757872672 \ No newline at end of file diff --git a/Jolt/Bindings/JPH_SixDOFConstraintAxis.cs b/Jolt/Bindings/JPH_SixDOFConstraintAxis.cs new file mode 100644 index 0000000..f6df40d --- /dev/null +++ b/Jolt/Bindings/JPH_SixDOFConstraintAxis.cs @@ -0,0 +1,7 @@ +namespace Jolt +{ + public struct JPH_SixDOFConstraintAxis + { + + } +} diff --git a/Jolt/Bindings/JPH_SixDOFConstraintAxis.cs.meta b/Jolt/Bindings/JPH_SixDOFConstraintAxis.cs.meta new file mode 100644 index 0000000..971f2c1 --- /dev/null +++ b/Jolt/Bindings/JPH_SixDOFConstraintAxis.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: b6718d49518a49b89e50c95fbbb5bff1 \ No newline at end of file diff --git a/Jolt/Bindings/ManagedReference.cs b/Jolt/Bindings/ManagedReference.cs deleted file mode 100644 index bab8c8e..0000000 --- a/Jolt/Bindings/ManagedReference.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Runtime.InteropServices; - -namespace Jolt -{ - internal static class ManagedReference - { - private static readonly Dictionary lookup = new (); - - public static void Add(NativeHandle context, GCHandle handle) where T : unmanaged - { - lock (lookup) - { - lookup.Add(context.RawValue, handle); - } - } - - public static bool Remove(NativeHandle context, out GCHandle handle) where T : unmanaged - { - lock (lookup) - { - return lookup.Remove(context.RawValue, out handle); - } - } - - public static T Deref(IntPtr ptr) - { - return (T)GCHandle.FromIntPtr(ptr).Target; - } - } -} diff --git a/Jolt/Bindings/ManagedReference.cs.meta b/Jolt/Bindings/ManagedReference.cs.meta deleted file mode 100644 index e769301..0000000 --- a/Jolt/Bindings/ManagedReference.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 860d1878f4e2423188ffeca50f7a78c4 -timeCreated: 1739635482 \ No newline at end of file diff --git a/Jolt/Bindings/MeshShapeSettings.cs b/Jolt/Bindings/MeshShapeSettings.cs new file mode 100644 index 0000000..b54f6b9 --- /dev/null +++ b/Jolt/Bindings/MeshShapeSettings.cs @@ -0,0 +1,27 @@ +using System; +using Unity.Mathematics; + +namespace Jolt +{ + public partial struct MeshShapeSettings + { + public static unsafe MeshShapeSettings Create(ReadOnlySpan triangles) + { + fixed (JPH_Triangle* ptr = triangles) + { + var returnValue = UnsafeBindings.JPH_MeshShapeSettings_Create(ptr, (uint)triangles.Length); + return new MeshShapeSettings{ Ptr = returnValue }; + } + } + + public static unsafe MeshShapeSettings Create2(ReadOnlySpan vertices, ReadOnlySpan triangles) + { + fixed (float3* vptr = vertices) + fixed (JPH_IndexedTriangle* tptr = triangles) + { + var returnValue = UnsafeBindings.JPH_MeshShapeSettings_Create2(vptr, (uint)vertices.Length, tptr, (uint)triangles.Length); + return new MeshShapeSettings{ Ptr = returnValue }; + } + } + } +} diff --git a/Jolt/Bindings/MeshShapeSettings.cs.meta b/Jolt/Bindings/MeshShapeSettings.cs.meta new file mode 100644 index 0000000..4954b4e --- /dev/null +++ b/Jolt/Bindings/MeshShapeSettings.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: fd5e9a9ba5e443acba9ad75d446edc3a +timeCreated: 1757571158 \ No newline at end of file diff --git a/Jolt/Bindings/NativeTypeNameAttribute.cs b/Jolt/Bindings/NativeTypeNameAttribute.cs new file mode 100644 index 0000000..5ce0815 --- /dev/null +++ b/Jolt/Bindings/NativeTypeNameAttribute.cs @@ -0,0 +1,15 @@ +using System; +using System.Threading; + +namespace Jolt +{ + public class NativeTypeNameAttribute : Attribute + { + public readonly string Value; + + public NativeTypeNameAttribute(string value) + { + Value = value; + } + } +} diff --git a/Jolt/Bindings/NativeTypeNameAttribute.cs.meta b/Jolt/Bindings/NativeTypeNameAttribute.cs.meta new file mode 100644 index 0000000..c8458e6 --- /dev/null +++ b/Jolt/Bindings/NativeTypeNameAttribute.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: c785b14f67f414fdaa50d89bb265e638 \ No newline at end of file diff --git a/Jolt/Bindings/UnsafeBindings.cs b/Jolt/Bindings/UnsafeBindings.cs new file mode 100644 index 0000000..36a4c5f --- /dev/null +++ b/Jolt/Bindings/UnsafeBindings.cs @@ -0,0 +1,5519 @@ +using System; +using System.Runtime.InteropServices; +using Unity.Mathematics; + +namespace Jolt +{ + public partial struct JPH_BroadPhaseLayerInterface + { + } + + public partial struct JPH_ObjectVsBroadPhaseLayerFilter + { + } + + public partial struct JPH_ObjectLayerPairFilter + { + } + + public partial struct JPH_BroadPhaseLayerFilter + { + } + + public partial struct JPH_ObjectLayerFilter + { + } + + public partial struct JPH_BodyFilter + { + } + + public partial struct JPH_ShapeFilter + { + } + + public partial struct JPH_SimShapeFilter + { + } + + public partial struct JPH_PhysicsStepListener + { + } + + public partial struct JPH_PhysicsSystem + { + } + + public partial struct JPH_PhysicsMaterial + { + } + + public partial struct JPH_ShapeSettings + { + } + + public partial struct JPH_ConvexShapeSettings + { + } + + public partial struct JPH_SphereShapeSettings + { + } + + public partial struct JPH_BoxShapeSettings + { + } + + public partial struct JPH_PlaneShapeSettings + { + } + + public partial struct JPH_TriangleShapeSettings + { + } + + public partial struct JPH_CapsuleShapeSettings + { + } + + public partial struct JPH_TaperedCapsuleShapeSettings + { + } + + public partial struct JPH_CylinderShapeSettings + { + } + + public partial struct JPH_TaperedCylinderShapeSettings + { + } + + public partial struct JPH_ConvexHullShapeSettings + { + } + + public partial struct JPH_CompoundShapeSettings + { + } + + public partial struct JPH_StaticCompoundShapeSettings + { + } + + public partial struct JPH_MutableCompoundShapeSettings + { + } + + public partial struct JPH_MeshShapeSettings + { + } + + public partial struct JPH_HeightFieldShapeSettings + { + } + + public partial struct JPH_RotatedTranslatedShapeSettings + { + } + + public partial struct JPH_ScaledShapeSettings + { + } + + public partial struct JPH_OffsetCenterOfMassShapeSettings + { + } + + public partial struct JPH_EmptyShapeSettings + { + } + + public partial struct JPH_Shape + { + } + + public partial struct JPH_ConvexShape + { + } + + public partial struct JPH_SphereShape + { + } + + public partial struct JPH_BoxShape + { + } + + public partial struct JPH_PlaneShape + { + } + + public partial struct JPH_CapsuleShape + { + } + + public partial struct JPH_CylinderShape + { + } + + public partial struct JPH_TaperedCylinderShape + { + } + + public partial struct JPH_TriangleShape + { + } + + public partial struct JPH_TaperedCapsuleShape + { + } + + public partial struct JPH_ConvexHullShape + { + } + + public partial struct JPH_CompoundShape + { + } + + public partial struct JPH_StaticCompoundShape + { + } + + public partial struct JPH_MutableCompoundShape + { + } + + public partial struct JPH_MeshShape + { + } + + public partial struct JPH_HeightFieldShape + { + } + + public partial struct JPH_DecoratedShape + { + } + + public partial struct JPH_RotatedTranslatedShape + { + } + + public partial struct JPH_ScaledShape + { + } + + public partial struct JPH_OffsetCenterOfMassShape + { + } + + public partial struct JPH_EmptyShape + { + } + + public partial struct JPH_BodyCreationSettings + { + } + + public partial struct JPH_SoftBodyCreationSettings + { + } + + public partial struct JPH_BodyInterface + { + } + + public partial struct JPH_BodyLockInterface + { + } + + public partial struct JPH_BroadPhaseQuery + { + } + + public partial struct JPH_NarrowPhaseQuery + { + } + + public partial struct JPH_MotionProperties + { + } + + public partial struct JPH_Body + { + } + + public partial struct JPH_ContactListener + { + } + + public partial struct JPH_ContactManifold + { + } + + public partial struct JPH_GroupFilter + { + } + + public partial struct JPH_GroupFilterTable + { + } + + public partial struct JPH_StateRecorderImpl + { + } + + public partial struct JPH_StateRecorderFilter + { + } + + [NativeTypeName("unsigned int")] + public enum JPH_PhysicsUpdateError : uint + { + None = 0, + ManifoldCacheFull = 1 << 0, + BodyPairCacheFull = 1 << 1, + ContactConstraintsFull = 1 << 2, + _JPH_PhysicsUpdateError_Count, + _JPH_PhysicsUpdateError_Force32 = 0x7fffffff, + } + + [NativeTypeName("unsigned int")] + public enum JPH_BodyType : uint + { + Rigid = 0, + Soft = 1, + _JPH_BodyType_Count, + _JPH_BodyType_Force32 = 0x7fffffff, + } + + [NativeTypeName("unsigned int")] + public enum JPH_MotionType : uint + { + Static = 0, + Kinematic = 1, + Dynamic = 2, + _JPH_MotionType_Count, + _JPH_MotionType_Force32 = 0x7fffffff, + } + + [NativeTypeName("unsigned int")] + public enum JPH_Activation : uint + { + Activate = 0, + DontActivate = 1, + _JPH_Activation_Count, + _JPH_Activation_Force32 = 0x7fffffff, + } + + [NativeTypeName("unsigned int")] + public enum JPH_ValidateResult : uint + { + AcceptAllContactsForThisBodyPair = 0, + AcceptContact = 1, + RejectContact = 2, + RejectAllContactsForThisBodyPair = 3, + _JPH_ValidateResult_Count, + _JPH_ValidateResult_Force32 = 0x7fffffff, + } + + [NativeTypeName("unsigned int")] + public enum JPH_ShapeType : uint + { + Convex = 0, + Compound = 1, + Decorated = 2, + Mesh = 3, + HeightField = 4, + SoftBody = 5, + User1 = 6, + User2 = 7, + User3 = 8, + User4 = 9, + _JPH_ShapeType_Count, + _JPH_ShapeType_Force32 = 0x7fffffff, + } + + [NativeTypeName("unsigned int")] + public enum JPH_ShapeSubType : uint + { + Sphere = 0, + Box = 1, + Triangle = 2, + Capsule = 3, + TaperedCapsule = 4, + Cylinder = 5, + ConvexHull = 6, + StaticCompound = 7, + MutableCompound = 8, + RotatedTranslated = 9, + Scaled = 10, + OffsetCenterOfMass = 11, + Mesh = 12, + HeightField = 13, + SoftBody = 14, + _JPH_ShapeSubType_Count, + _JPH_ShapeSubType_Force32 = 0x7fffffff, + } + + [NativeTypeName("unsigned int")] + public enum JPH_ConstraintType : uint + { + Constraint = 0, + TwoBodyConstraint = 1, + _JPH_ConstraintType_Count, + _JPH_ConstraintType_Force32 = 0x7fffffff, + } + + [NativeTypeName("unsigned int")] + public enum JPH_ConstraintSubType : uint + { + Fixed = 0, + Point = 1, + Hinge = 2, + Slider = 3, + Distance = 4, + Cone = 5, + SwingTwist = 6, + SixDOF = 7, + Path = 8, + Vehicle = 9, + RackAndPinion = 10, + Gear = 11, + Pulley = 12, + User1 = 13, + User2 = 14, + User3 = 15, + User4 = 16, + _JPH_ConstraintSubType_Count, + _JPH_ConstraintSubType_Force32 = 0x7fffffff, + } + + [NativeTypeName("unsigned int")] + public enum JPH_ConstraintSpace : uint + { + LocalToBodyCOM = 0, + WorldSpace = 1, + _JPH_ConstraintSpace_Count, + _JPH_ConstraintSpace_Force32 = 0x7fffffff, + } + + [NativeTypeName("unsigned int")] + public enum JPH_MotionQuality : uint + { + Discrete = 0, + LinearCast = 1, + _JPH_MotionQuality_Count, + _JPH_MotionQuality_Force32 = 0x7fffffff, + } + + [NativeTypeName("unsigned int")] + public enum JPH_OverrideMassProperties : uint + { + CalculateMassAndInertia, + CalculateInertia, + MassAndInertiaProvided, + _JPH_JPH_OverrideMassProperties_Count, + _JPH_JPH_OverrideMassProperties_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_GroundState : uint + { + OnGround = 0, + OnSteepGround = 1, + NotSupported = 2, + InAir = 3, + _JPH_GroundState_Count, + _JPH_GroundState_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_BackFaceMode : uint + { + IgnoreBackFaces, + CollideWithBackFaces, + _JPH_BackFaceMode_Count, + _JPH_BackFaceMode_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_ActiveEdgeMode : uint + { + CollideOnlyWithActive, + CollideWithAll, + _JPH_ActiveEdgeMode_Count, + _JPH_ActiveEdgeMode_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_CollectFacesMode : uint + { + CollectFaces, + NoFaces, + _JPH_CollectFacesMode_Count, + _JPH_CollectFacesMode_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_MotorState : uint + { + Off = 0, + Velocity = 1, + Position = 2, + _JPH_MotorState_Count, + _JPH_MotorState_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_CollisionCollectorType : uint + { + AllHit = 0, + AllHitSorted = 1, + ClosestHit = 2, + AnyHit = 3, + _JPH_CollisionCollectorType_Count, + _JPH_CollisionCollectorType_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_SwingType : uint + { + Cone, + Pyramid, + _JPH_SwingType_Count, + _JPH_SwingType_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_SpringMode : uint + { + FrequencyAndDamping = 0, + StiffnessAndDamping = 1, + _JPH_SpringMode_Count, + _JPH_SpringMode_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_SoftBodyConstraintColor : uint + { + ConstraintType, + ConstraintGroup, + ConstraintOrder, + _JPH_SoftBodyConstraintColor_Count, + _JPH_SoftBodyConstraintColor_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_BodyManager_ShapeColor : uint + { + InstanceColor, + ShapeTypeColor, + MotionTypeColor, + SleepColor, + IslandColor, + MaterialColor, + _JPH_BodyManager_ShapeColor_Count, + _JPH_BodyManager_ShapeColor_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_DebugRenderer_CastShadow : uint + { + On = 0, + Off = 1, + _JPH_DebugRenderer_CastShadow_Count, + _JPH_DebugRenderer_CastShadow_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_DebugRenderer_DrawMode : uint + { + Solid = 0, + Wireframe = 1, + _JPH_DebugRenderer_DrawMode_Count, + _JPH_DebugRenderer_DrawMode_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_Mesh_Shape_BuildQuality : uint + { + FavorRuntimePerformance = 0, + FavorBuildSpeed = 1, + _JPH_Mesh_Shape_BuildQuality_Count, + _JPH_Mesh_Shape_BuildQuality_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_TransmissionMode : uint + { + Auto = 0, + Manual = 1, + _JPH_TransmissionMode_Count, + _JPH_TransmissionMode_Force32 = 0x7FFFFFFF, + } + + [NativeTypeName("unsigned int")] + public enum JPH_StateRecorderState : uint + { + None = 0, + Global = 1, + Bodies = 2, + Contacts = 4, + Constraints = 8, + All = Global | Bodies | Contacts | Constraints, + } + + public partial struct JPH_Plane + { + [NativeTypeName("JPH_Vec3")] + public float3 normal; + + public float distance; + } + + public partial struct JPH_AABox + { + [NativeTypeName("JPH_Vec3")] + public float3 min; + + [NativeTypeName("JPH_Vec3")] + public float3 max; + } + + public partial struct JPH_Triangle + { + [NativeTypeName("JPH_Vec3")] + public float3 v1; + + [NativeTypeName("JPH_Vec3")] + public float3 v2; + + [NativeTypeName("JPH_Vec3")] + public float3 v3; + + [NativeTypeName("uint32_t")] + public uint materialIndex; + } + + public partial struct JPH_IndexedTriangleNoMaterial + { + [NativeTypeName("uint32_t")] + public uint i1; + + [NativeTypeName("uint32_t")] + public uint i2; + + [NativeTypeName("uint32_t")] + public uint i3; + } + + public partial struct JPH_IndexedTriangle + { + [NativeTypeName("uint32_t")] + public uint i1; + + [NativeTypeName("uint32_t")] + public uint i2; + + [NativeTypeName("uint32_t")] + public uint i3; + + [NativeTypeName("uint32_t")] + public uint materialIndex; + + [NativeTypeName("uint32_t")] + public uint userData; + } + + public partial struct JPH_MassProperties + { + public float mass; + + [NativeTypeName("JPH_Matrix4x4")] + public float4x4 inertia; + } + + public partial struct JPH_ContactSettings + { + public float combinedFriction; + + public float combinedRestitution; + + public float invMassScale1; + + public float invInertiaScale1; + + public float invMassScale2; + + public float invInertiaScale2; + + [NativeTypeName("JPH_Bool")] + public uint isSensor; + + [NativeTypeName("JPH_Vec3")] + public float3 relativeLinearSurfaceVelocity; + + [NativeTypeName("JPH_Vec3")] + public float3 relativeAngularSurfaceVelocity; + } + + public partial struct JPH_CollideSettingsBase + { + public JPH_ActiveEdgeMode activeEdgeMode; + + public JPH_CollectFacesMode collectFacesMode; + + public float collisionTolerance; + + public float penetrationTolerance; + + [NativeTypeName("JPH_Vec3")] + public float3 activeEdgeMovementDirection; + } + + public partial struct JPH_CollideShapeSettings + { + public JPH_CollideSettingsBase @base; + + public float maxSeparationDistance; + + public JPH_BackFaceMode backFaceMode; + } + + public partial struct JPH_ShapeCastSettings + { + public JPH_CollideSettingsBase @base; + + public JPH_BackFaceMode backFaceModeTriangles; + + public JPH_BackFaceMode backFaceModeConvex; + + [NativeTypeName("bool")] + public byte useShrunkenShapeAndConvexRadius; + + [NativeTypeName("bool")] + public byte returnDeepestPoint; + } + + public partial struct JPH_RayCastSettings + { + public JPH_BackFaceMode backFaceModeTriangles; + + public JPH_BackFaceMode backFaceModeConvex; + + [NativeTypeName("bool")] + public byte treatConvexAsSolid; + } + + public partial struct JPH_SpringSettings + { + public JPH_SpringMode mode; + + public float frequencyOrStiffness; + + public float damping; + } + + public partial struct JPH_MotorSettings + { + public JPH_SpringSettings springSettings; + + public float minForceLimit; + + public float maxForceLimit; + + public float minTorqueLimit; + + public float maxTorqueLimit; + } + + public partial struct JPH_SubShapeIDPair + { + [NativeTypeName("JPH_BodyID")] + public uint Body1ID; + + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID1; + + [NativeTypeName("JPH_BodyID")] + public uint Body2ID; + + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID2; + } + + public partial struct JPH_BroadPhaseCastResult + { + [NativeTypeName("JPH_BodyID")] + public uint bodyID; + + public float fraction; + } + + public partial struct JPH_RayCastResult + { + [NativeTypeName("JPH_BodyID")] + public uint bodyID; + + public float fraction; + + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID2; + } + + public partial struct JPH_CollidePointResult + { + [NativeTypeName("JPH_BodyID")] + public uint bodyID; + + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID2; + } + + public unsafe partial struct JPH_CollideShapeResult + { + [NativeTypeName("JPH_Vec3")] + public float3 contactPointOn1; + + [NativeTypeName("JPH_Vec3")] + public float3 contactPointOn2; + + [NativeTypeName("JPH_Vec3")] + public float3 penetrationAxis; + + public float penetrationDepth; + + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID1; + + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID2; + + [NativeTypeName("JPH_BodyID")] + public uint bodyID2; + + [NativeTypeName("uint32_t")] + public uint shape1FaceCount; + + [NativeTypeName("JPH_Vec3 *")] + public float3* shape1Faces; + + [NativeTypeName("uint32_t")] + public uint shape2FaceCount; + + [NativeTypeName("JPH_Vec3 *")] + public float3* shape2Faces; + } + + public partial struct JPH_ShapeCastResult + { + [NativeTypeName("JPH_Vec3")] + public float3 contactPointOn1; + + [NativeTypeName("JPH_Vec3")] + public float3 contactPointOn2; + + [NativeTypeName("JPH_Vec3")] + public float3 penetrationAxis; + + public float penetrationDepth; + + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID1; + + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeID2; + + [NativeTypeName("JPH_BodyID")] + public uint bodyID2; + + public float fraction; + + [NativeTypeName("bool")] + public byte isBackFaceHit; + } + + public partial struct JPH_DrawSettings + { + [NativeTypeName("bool")] + public byte drawGetSupportFunction; + + [NativeTypeName("bool")] + public byte drawSupportDirection; + + [NativeTypeName("bool")] + public byte drawGetSupportingFace; + + [NativeTypeName("bool")] + public byte drawShape; + + [NativeTypeName("bool")] + public byte drawShapeWireframe; + + public JPH_BodyManager_ShapeColor drawShapeColor; + + [NativeTypeName("bool")] + public byte drawBoundingBox; + + [NativeTypeName("bool")] + public byte drawCenterOfMassTransform; + + [NativeTypeName("bool")] + public byte drawWorldTransform; + + [NativeTypeName("bool")] + public byte drawVelocity; + + [NativeTypeName("bool")] + public byte drawMassAndInertia; + + [NativeTypeName("bool")] + public byte drawSleepStats; + + [NativeTypeName("bool")] + public byte drawSoftBodyVertices; + + [NativeTypeName("bool")] + public byte drawSoftBodyVertexVelocities; + + [NativeTypeName("bool")] + public byte drawSoftBodyEdgeConstraints; + + [NativeTypeName("bool")] + public byte drawSoftBodyBendConstraints; + + [NativeTypeName("bool")] + public byte drawSoftBodyVolumeConstraints; + + [NativeTypeName("bool")] + public byte drawSoftBodySkinConstraints; + + [NativeTypeName("bool")] + public byte drawSoftBodyLRAConstraints; + + [NativeTypeName("bool")] + public byte drawSoftBodyPredictedBounds; + + public JPH_SoftBodyConstraintColor drawSoftBodyConstraintColor; + } + + public partial struct JPH_SupportingFace + { + [NativeTypeName("uint32_t")] + public uint count; + + [NativeTypeName("JPH_Vec3[32]")] + public _vertices_e__FixedBuffer vertices; + + public partial struct _vertices_e__FixedBuffer + { + public float3 e0; + public float3 e1; + public float3 e2; + public float3 e3; + public float3 e4; + public float3 e5; + public float3 e6; + public float3 e7; + public float3 e8; + public float3 e9; + public float3 e10; + public float3 e11; + public float3 e12; + public float3 e13; + public float3 e14; + public float3 e15; + public float3 e16; + public float3 e17; + public float3 e18; + public float3 e19; + public float3 e20; + public float3 e21; + public float3 e22; + public float3 e23; + public float3 e24; + public float3 e25; + public float3 e26; + public float3 e27; + public float3 e28; + public float3 e29; + public float3 e30; + public float3 e31; + + public unsafe ref float3 this[int index] + { + get + { + fixed (float3* pThis = &e0) + { + return ref pThis[index]; + } + } + } + } + } + + public unsafe partial struct JPH_CollisionGroup + { + [NativeTypeName("const JPH_GroupFilter *")] + public JPH_GroupFilter* groupFilter; + + [NativeTypeName("JPH_CollisionGroupID")] + public uint groupID; + + [NativeTypeName("JPH_CollisionSubGroupID")] + public uint subGroupID; + } + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_CastRayResultCallback(void* context, [NativeTypeName("const JPH_RayCastResult *")] JPH_RayCastResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_RayCastBodyResultCallback(void* context, [NativeTypeName("const JPH_BroadPhaseCastResult *")] JPH_BroadPhaseCastResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_CollideShapeBodyResultCallback(void* context, [NativeTypeName("const JPH_BodyID")] uint result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_CollidePointResultCallback(void* context, [NativeTypeName("const JPH_CollidePointResult *")] JPH_CollidePointResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_CollideShapeResultCallback(void* context, [NativeTypeName("const JPH_CollideShapeResult *")] JPH_CollideShapeResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_CastShapeResultCallback(void* context, [NativeTypeName("const JPH_ShapeCastResult *")] JPH_ShapeCastResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate float JPH_CastRayCollectorCallback(void* context, [NativeTypeName("const JPH_RayCastResult *")] JPH_RayCastResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate float JPH_RayCastBodyCollectorCallback(void* context, [NativeTypeName("const JPH_BroadPhaseCastResult *")] JPH_BroadPhaseCastResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate float JPH_CollideShapeBodyCollectorCallback(void* context, [NativeTypeName("const JPH_BodyID")] uint result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate float JPH_CollidePointCollectorCallback(void* context, [NativeTypeName("const JPH_CollidePointResult *")] JPH_CollidePointResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate float JPH_CollideShapeCollectorCallback(void* context, [NativeTypeName("const JPH_CollideShapeResult *")] JPH_CollideShapeResult* result); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate float JPH_CastShapeCollectorCallback(void* context, [NativeTypeName("const JPH_ShapeCastResult *")] JPH_ShapeCastResult* result); + + public partial struct JPH_CollisionEstimationResultImpulse + { + public float contactImpulse; + + public float frictionImpulse1; + + public float frictionImpulse2; + } + + public unsafe partial struct JPH_CollisionEstimationResult + { + [NativeTypeName("JPH_Vec3")] + public float3 linearVelocity1; + + [NativeTypeName("JPH_Vec3")] + public float3 angularVelocity1; + + [NativeTypeName("JPH_Vec3")] + public float3 linearVelocity2; + + [NativeTypeName("JPH_Vec3")] + public float3 angularVelocity2; + + [NativeTypeName("JPH_Vec3")] + public float3 tangent1; + + [NativeTypeName("JPH_Vec3")] + public float3 tangent2; + + [NativeTypeName("uint32_t")] + public uint impulseCount; + + public JPH_CollisionEstimationResultImpulse* impulses; + } + + public partial struct JPH_BodyActivationListener + { + } + + public partial struct JPH_BodyDrawFilter + { + } + + public partial struct JPH_SharedMutex + { + } + + public partial struct JPH_DebugRenderer + { + } + + public partial struct JPH_Constraint + { + } + + public partial struct JPH_TwoBodyConstraint + { + } + + public partial struct JPH_FixedConstraint + { + } + + public partial struct JPH_DistanceConstraint + { + } + + public partial struct JPH_PointConstraint + { + } + + public partial struct JPH_HingeConstraint + { + } + + public partial struct JPH_SliderConstraint + { + } + + public partial struct JPH_ConeConstraint + { + } + + public partial struct JPH_SwingTwistConstraint + { + } + + public partial struct JPH_SixDOFConstraint + { + } + + public partial struct JPH_GearConstraint + { + } + + public partial struct JPH_CharacterBase + { + } + + public partial struct JPH_Character + { + } + + public partial struct JPH_CharacterVirtual + { + } + + public partial struct JPH_CharacterContactListener + { + } + + public partial struct JPH_CharacterVsCharacterCollision + { + } + + public partial struct JPH_Skeleton + { + } + + public partial struct JPH_RagdollSettings + { + } + + public partial struct JPH_Ragdoll + { + } + + public partial struct JPH_ConstraintSettings + { + [NativeTypeName("bool")] + public byte enabled; + + [NativeTypeName("uint32_t")] + public uint constraintPriority; + + [NativeTypeName("uint32_t")] + public uint numVelocityStepsOverride; + + [NativeTypeName("uint32_t")] + public uint numPositionStepsOverride; + + public float drawConstraintSize; + + [NativeTypeName("uint64_t")] + public ulong userData; + } + + public partial struct JPH_FixedConstraintSettings + { + public JPH_ConstraintSettings @base; + + public JPH_ConstraintSpace space; + + [NativeTypeName("bool")] + public byte autoDetectPoint; + + [NativeTypeName("JPH_RVec3")] + public rvec3 point1; + + [NativeTypeName("JPH_Vec3")] + public float3 axisX1; + + [NativeTypeName("JPH_Vec3")] + public float3 axisY1; + + [NativeTypeName("JPH_RVec3")] + public rvec3 point2; + + [NativeTypeName("JPH_Vec3")] + public float3 axisX2; + + [NativeTypeName("JPH_Vec3")] + public float3 axisY2; + } + + public partial struct JPH_DistanceConstraintSettings + { + public JPH_ConstraintSettings @base; + + public JPH_ConstraintSpace space; + + [NativeTypeName("JPH_RVec3")] + public rvec3 point1; + + [NativeTypeName("JPH_RVec3")] + public rvec3 point2; + + public float minDistance; + + public float maxDistance; + + public JPH_SpringSettings limitsSpringSettings; + } + + public partial struct JPH_PointConstraintSettings + { + public JPH_ConstraintSettings @base; + + public JPH_ConstraintSpace space; + + [NativeTypeName("JPH_RVec3")] + public rvec3 point1; + + [NativeTypeName("JPH_RVec3")] + public rvec3 point2; + } + + public partial struct JPH_HingeConstraintSettings + { + public JPH_ConstraintSettings @base; + + public JPH_ConstraintSpace space; + + [NativeTypeName("JPH_RVec3")] + public rvec3 point1; + + [NativeTypeName("JPH_Vec3")] + public float3 hingeAxis1; + + [NativeTypeName("JPH_Vec3")] + public float3 normalAxis1; + + [NativeTypeName("JPH_RVec3")] + public rvec3 point2; + + [NativeTypeName("JPH_Vec3")] + public float3 hingeAxis2; + + [NativeTypeName("JPH_Vec3")] + public float3 normalAxis2; + + public float limitsMin; + + public float limitsMax; + + public JPH_SpringSettings limitsSpringSettings; + + public float maxFrictionTorque; + + public JPH_MotorSettings motorSettings; + } + + public partial struct JPH_SliderConstraintSettings + { + public JPH_ConstraintSettings @base; + + public JPH_ConstraintSpace space; + + [NativeTypeName("bool")] + public byte autoDetectPoint; + + [NativeTypeName("JPH_RVec3")] + public rvec3 point1; + + [NativeTypeName("JPH_Vec3")] + public float3 sliderAxis1; + + [NativeTypeName("JPH_Vec3")] + public float3 normalAxis1; + + [NativeTypeName("JPH_RVec3")] + public rvec3 point2; + + [NativeTypeName("JPH_Vec3")] + public float3 sliderAxis2; + + [NativeTypeName("JPH_Vec3")] + public float3 normalAxis2; + + public float limitsMin; + + public float limitsMax; + + public JPH_SpringSettings limitsSpringSettings; + + public float maxFrictionForce; + + public JPH_MotorSettings motorSettings; + } + + public partial struct JPH_ConeConstraintSettings + { + public JPH_ConstraintSettings @base; + + public JPH_ConstraintSpace space; + + [NativeTypeName("JPH_RVec3")] + public rvec3 point1; + + [NativeTypeName("JPH_Vec3")] + public float3 twistAxis1; + + [NativeTypeName("JPH_RVec3")] + public rvec3 point2; + + [NativeTypeName("JPH_Vec3")] + public float3 twistAxis2; + + public float halfConeAngle; + } + + public partial struct JPH_SwingTwistConstraintSettings + { + public JPH_ConstraintSettings @base; + + public JPH_ConstraintSpace space; + + [NativeTypeName("JPH_RVec3")] + public rvec3 position1; + + [NativeTypeName("JPH_Vec3")] + public float3 twistAxis1; + + [NativeTypeName("JPH_Vec3")] + public float3 planeAxis1; + + [NativeTypeName("JPH_RVec3")] + public rvec3 position2; + + [NativeTypeName("JPH_Vec3")] + public float3 twistAxis2; + + [NativeTypeName("JPH_Vec3")] + public float3 planeAxis2; + + public JPH_SwingType swingType; + + public float normalHalfConeAngle; + + public float planeHalfConeAngle; + + public float twistMinAngle; + + public float twistMaxAngle; + + public float maxFrictionTorque; + + public JPH_MotorSettings swingMotorSettings; + + public JPH_MotorSettings twistMotorSettings; + } + + public unsafe partial struct JPH_SixDOFConstraintSettings + { + public JPH_ConstraintSettings @base; + + public JPH_ConstraintSpace space; + + [NativeTypeName("JPH_RVec3")] + public rvec3 position1; + + [NativeTypeName("JPH_Vec3")] + public float3 axisX1; + + [NativeTypeName("JPH_Vec3")] + public float3 axisY1; + + [NativeTypeName("JPH_RVec3")] + public rvec3 position2; + + [NativeTypeName("JPH_Vec3")] + public float3 axisX2; + + [NativeTypeName("JPH_Vec3")] + public float3 axisY2; + + [NativeTypeName("float[6]")] + public fixed float maxFriction[6]; + + public JPH_SwingType swingType; + + [NativeTypeName("float[6]")] + public fixed float limitMin[6]; + + [NativeTypeName("float[6]")] + public fixed float limitMax[6]; + + [NativeTypeName("JPH_SpringSettings[3]")] + public _limitsSpringSettings_e__FixedBuffer limitsSpringSettings; + + [NativeTypeName("JPH_MotorSettings[6]")] + public _motorSettings_e__FixedBuffer motorSettings; + + public partial struct _limitsSpringSettings_e__FixedBuffer + { + public JPH_SpringSettings e0; + public JPH_SpringSettings e1; + public JPH_SpringSettings e2; + + public unsafe ref JPH_SpringSettings this[int index] + { + get + { + fixed (JPH_SpringSettings* pThis = &e0) + { + return ref pThis[index]; + } + } + } + } + + public partial struct _motorSettings_e__FixedBuffer + { + public JPH_MotorSettings e0; + public JPH_MotorSettings e1; + public JPH_MotorSettings e2; + public JPH_MotorSettings e3; + public JPH_MotorSettings e4; + public JPH_MotorSettings e5; + + public unsafe ref JPH_MotorSettings this[int index] + { + get + { + fixed (JPH_MotorSettings* pThis = &e0) + { + return ref pThis[index]; + } + } + } + } + } + + public partial struct JPH_GearConstraintSettings + { + public JPH_ConstraintSettings @base; + + public JPH_ConstraintSpace space; + + [NativeTypeName("JPH_Vec3")] + public float3 hingeAxis1; + + [NativeTypeName("JPH_Vec3")] + public float3 hingeAxis2; + + public float ratio; + } + + public unsafe partial struct JPH_BodyLockRead + { + [NativeTypeName("const JPH_BodyLockInterface *")] + public JPH_BodyLockInterface* lockInterface; + + public JPH_SharedMutex* mutex; + + [NativeTypeName("const JPH_Body *")] + public JPH_Body* body; + } + + public unsafe partial struct JPH_BodyLockWrite + { + [NativeTypeName("const JPH_BodyLockInterface *")] + public JPH_BodyLockInterface* lockInterface; + + public JPH_SharedMutex* mutex; + + public JPH_Body* body; + } + + public partial struct JPH_BodyLockMultiRead + { + } + + public partial struct JPH_BodyLockMultiWrite + { + } + + public partial struct JPH_ExtendedUpdateSettings + { + [NativeTypeName("JPH_Vec3")] + public float3 stickToFloorStepDown; + + [NativeTypeName("JPH_Vec3")] + public float3 walkStairsStepUp; + + public float walkStairsMinStepForward; + + public float walkStairsStepForwardTest; + + public float walkStairsCosAngleForwardContact; + + [NativeTypeName("JPH_Vec3")] + public float3 walkStairsStepDownExtra; + } + + public unsafe partial struct JPH_CharacterBaseSettings + { + [NativeTypeName("JPH_Vec3")] + public float3 up; + + public JPH_Plane supportingVolume; + + public float maxSlopeAngle; + + [NativeTypeName("bool")] + public byte enhancedInternalEdgeRemoval; + + [NativeTypeName("const JPH_Shape *")] + public JPH_Shape* shape; + } + + public partial struct JPH_CharacterSettings + { + public JPH_CharacterBaseSettings @base; + + [NativeTypeName("JPH_ObjectLayer")] + public uint layer; + + public float mass; + + public float friction; + + public float gravityFactor; + + public JPH_AllowedDOFs allowedDOFs; + } + + public unsafe partial struct JPH_CharacterVirtualSettings + { + public JPH_CharacterBaseSettings @base; + + [NativeTypeName("JPH_CharacterID")] + public uint ID; + + public float mass; + + public float maxStrength; + + [NativeTypeName("JPH_Vec3")] + public float3 shapeOffset; + + public JPH_BackFaceMode backFaceMode; + + public float predictiveContactDistance; + + [NativeTypeName("uint32_t")] + public uint maxCollisionIterations; + + [NativeTypeName("uint32_t")] + public uint maxConstraintIterations; + + public float minTimeRemaining; + + public float collisionTolerance; + + public float characterPadding; + + [NativeTypeName("uint32_t")] + public uint maxNumHits; + + public float hitReductionCosMaxAngle; + + public float penetrationRecoverySpeed; + + [NativeTypeName("const JPH_Shape *")] + public JPH_Shape* innerBodyShape; + + [NativeTypeName("JPH_BodyID")] + public uint innerBodyIDOverride; + + [NativeTypeName("JPH_ObjectLayer")] + public uint innerBodyLayer; + } + + public partial struct JPH_CharacterContactSettings + { + [NativeTypeName("bool")] + public byte canPushCharacter; + + [NativeTypeName("bool")] + public byte canReceiveImpulses; + } + + public unsafe partial struct JPH_CharacterVirtualContact + { + [NativeTypeName("uint64_t")] + public ulong hash; + + [NativeTypeName("JPH_BodyID")] + public uint bodyB; + + [NativeTypeName("JPH_CharacterID")] + public uint characterIDB; + + [NativeTypeName("JPH_SubShapeID")] + public uint subShapeIDB; + + [NativeTypeName("JPH_RVec3")] + public rvec3 position; + + [NativeTypeName("JPH_Vec3")] + public float3 linearVelocity; + + [NativeTypeName("JPH_Vec3")] + public float3 contactNormal; + + [NativeTypeName("JPH_Vec3")] + public float3 surfaceNormal; + + public float distance; + + public float fraction; + + public JPH_MotionType motionTypeB; + + [NativeTypeName("bool")] + public byte isSensorB; + + [NativeTypeName("const JPH_CharacterVirtual *")] + public JPH_CharacterVirtual* characterB; + + [NativeTypeName("uint64_t")] + public ulong userData; + + [NativeTypeName("const JPH_PhysicsMaterial *")] + public JPH_PhysicsMaterial* material; + + [NativeTypeName("bool")] + public byte hadCollision; + + [NativeTypeName("bool")] + public byte wasDiscarded; + + [NativeTypeName("bool")] + public byte canPushCharacter; + } + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_TraceFunc([NativeTypeName("const char *")] sbyte* message); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate bool JPH_AssertFailureFunc([NativeTypeName("const char *")] sbyte* expression, [NativeTypeName("const char *")] sbyte* message, [NativeTypeName("const char *")] sbyte* file, [NativeTypeName("uint32_t")] uint line); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_JobFunction(void* arg); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_QueueJobCallback(void* context, [NativeTypeName("JPH_JobFunction *")] IntPtr job, void* arg); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public unsafe delegate void JPH_QueueJobsCallback(void* context, [NativeTypeName("JPH_JobFunction *")] IntPtr job, void** args, [NativeTypeName("uint32_t")] uint count); + + public partial struct JobSystemThreadPoolConfig + { + [NativeTypeName("uint32_t")] + public uint maxJobs; + + [NativeTypeName("uint32_t")] + public uint maxBarriers; + + [NativeTypeName("int32_t")] + public int numThreads; + } + + public unsafe partial struct JPH_JobSystemConfig + { + public void* context; + + [NativeTypeName("JPH_QueueJobCallback *")] + public IntPtr queueJob; + + [NativeTypeName("JPH_QueueJobsCallback *")] + public IntPtr queueJobs; + + [NativeTypeName("uint32_t")] + public uint maxConcurrency; + + [NativeTypeName("uint32_t")] + public uint maxBarriers; + } + + public partial struct JPH_JobSystem + { + } + + public unsafe partial struct JPH_PhysicsSystemSettings + { + [NativeTypeName("uint32_t")] + public uint maxBodies; + + [NativeTypeName("uint32_t")] + public uint numBodyMutexes; + + [NativeTypeName("uint32_t")] + public uint maxBodyPairs; + + [NativeTypeName("uint32_t")] + public uint maxContactConstraints; + + [NativeTypeName("uint32_t")] + public uint _padding; + + public JPH_BroadPhaseLayerInterface* broadPhaseLayerInterface; + + public JPH_ObjectLayerPairFilter* objectLayerPairFilter; + + public JPH_ObjectVsBroadPhaseLayerFilter* objectVsBroadPhaseLayerFilter; + } + + public partial struct JPH_PhysicsSettings + { + public int maxInFlightBodyPairs; + + public int stepListenersBatchSize; + + public int stepListenerBatchesPerJob; + + public float baumgarte; + + public float speculativeContactDistance; + + public float penetrationSlop; + + public float linearCastThreshold; + + public float linearCastMaxPenetration; + + public float manifoldTolerance; + + public float maxPenetrationDistance; + + public float bodyPairCacheMaxDeltaPositionSq; + + public float bodyPairCacheCosMaxDeltaRotationDiv2; + + public float contactNormalCosMaxDeltaRotation; + + public float contactPointPreserveLambdaMaxDistSq; + + [NativeTypeName("uint32_t")] + public uint numVelocitySteps; + + [NativeTypeName("uint32_t")] + public uint numPositionSteps; + + public float minVelocityForRestitution; + + public float timeBeforeSleep; + + public float pointVelocitySleepThreshold; + + [NativeTypeName("bool")] + public byte deterministicSimulation; + + [NativeTypeName("bool")] + public byte constraintWarmStart; + + [NativeTypeName("bool")] + public byte useBodyPairContactCache; + + [NativeTypeName("bool")] + public byte useManifoldReduction; + + [NativeTypeName("bool")] + public byte useLargeIslandSplitter; + + [NativeTypeName("bool")] + public byte allowSleeping; + + [NativeTypeName("bool")] + public byte checkActiveEdges; + } + + public unsafe partial struct JPH_PhysicsStepListenerContext + { + public float deltaTime; + + [NativeTypeName("JPH_Bool")] + public uint isFirstStep; + + [NativeTypeName("JPH_Bool")] + public uint isLastStep; + + public JPH_PhysicsSystem* physicsSystem; + } + + public partial struct JPH_PhysicsStepListener_Procs + { + [NativeTypeName("void (*)(void *, const JPH_PhysicsStepListenerContext *)")] + public IntPtr OnStep; + } + + public partial struct JPH_BroadPhaseLayerFilter_Procs + { + [NativeTypeName("bool (*)(void *, JPH_BroadPhaseLayer)")] + public IntPtr ShouldCollide; + } + + public partial struct JPH_ObjectLayerFilter_Procs + { + [NativeTypeName("bool (*)(void *, JPH_ObjectLayer)")] + public IntPtr ShouldCollide; + } + + public partial struct JPH_BodyFilter_Procs + { + [NativeTypeName("bool (*)(void *, JPH_BodyID)")] + public IntPtr ShouldCollide; + + [NativeTypeName("bool (*)(void *, const JPH_Body *)")] + public IntPtr ShouldCollideLocked; + } + + public partial struct JPH_ShapeFilter_Procs + { + [NativeTypeName("bool (*)(void *, const JPH_Shape *, const JPH_SubShapeID *)")] + public IntPtr ShouldCollide; + + [NativeTypeName("bool (*)(void *, const JPH_Shape *, const JPH_SubShapeID *, const JPH_Shape *, const JPH_SubShapeID *)")] + public IntPtr ShouldCollide2; + } + + public partial struct JPH_SimShapeFilter_Procs + { + [NativeTypeName("bool (*)(void *, const JPH_Body *, const JPH_Shape *, const JPH_SubShapeID *, const JPH_Body *, const JPH_Shape *, const JPH_SubShapeID *)")] + public IntPtr ShouldCollide; + } + + public partial struct JPH_ContactListener_Procs + { + [NativeTypeName("JPH_ValidateResult (*)(void *, const JPH_Body *, const JPH_Body *, const JPH_RVec3 *, const JPH_CollideShapeResult *)")] + public IntPtr OnContactValidate; + + [NativeTypeName("void (*)(void *, const JPH_Body *, const JPH_Body *, const JPH_ContactManifold *, JPH_ContactSettings *)")] + public IntPtr OnContactAdded; + + [NativeTypeName("void (*)(void *, const JPH_Body *, const JPH_Body *, const JPH_ContactManifold *, JPH_ContactSettings *)")] + public IntPtr OnContactPersisted; + + [NativeTypeName("void (*)(void *, const JPH_SubShapeIDPair *)")] + public IntPtr OnContactRemoved; + } + + public partial struct JPH_BodyActivationListener_Procs + { + [NativeTypeName("void (*)(void *, JPH_BodyID, uint64_t)")] + public IntPtr OnBodyActivated; + + [NativeTypeName("void (*)(void *, JPH_BodyID, uint64_t)")] + public IntPtr OnBodyDeactivated; + } + + public partial struct JPH_BodyDrawFilter_Procs + { + [NativeTypeName("bool (*)(void *, const JPH_Body *)")] + public IntPtr ShouldDraw; + } + + public partial struct JPH_CharacterContactListener_Procs + { + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_Body *, JPH_Vec3 *, JPH_Vec3 *)")] + public IntPtr OnAdjustBodyVelocity; + + [NativeTypeName("bool (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID)")] + public IntPtr OnContactValidate; + + [NativeTypeName("bool (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterVirtual *, const JPH_SubShapeID)")] + public IntPtr OnCharacterContactValidate; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, JPH_CharacterContactSettings *)")] + public IntPtr OnContactAdded; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, JPH_CharacterContactSettings *)")] + public IntPtr OnContactPersisted; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID)")] + public IntPtr OnContactRemoved; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterVirtual *, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, JPH_CharacterContactSettings *)")] + public IntPtr OnCharacterContactAdded; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterVirtual *, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, JPH_CharacterContactSettings *)")] + public IntPtr OnCharacterContactPersisted; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterID, const JPH_SubShapeID)")] + public IntPtr OnCharacterContactRemoved; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_BodyID, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, const JPH_Vec3 *, const JPH_PhysicsMaterial *, const JPH_Vec3 *, JPH_Vec3 *)")] + public IntPtr OnContactSolve; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_CharacterVirtual *, const JPH_SubShapeID, const JPH_RVec3 *, const JPH_Vec3 *, const JPH_Vec3 *, const JPH_PhysicsMaterial *, const JPH_Vec3 *, JPH_Vec3 *)")] + public IntPtr OnCharacterContactSolve; + } + + public partial struct JPH_CharacterVsCharacterCollision_Procs + { + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_RMatrix4x4 *, const JPH_CollideShapeSettings *, const JPH_RVec3 *)")] + public IntPtr CollideCharacter; + + [NativeTypeName("void (*)(void *, const JPH_CharacterVirtual *, const JPH_RMatrix4x4 *, const JPH_Vec3 *, const JPH_ShapeCastSettings *, const JPH_RVec3 *)")] + public IntPtr CastCharacter; + } + + public partial struct JPH_DebugRenderer_Procs + { + [NativeTypeName("void (*)(void *, const JPH_RVec3 *, const JPH_RVec3 *, JPH_Color)")] + public IntPtr DrawLine; + + [NativeTypeName("void (*)(void *, const JPH_RVec3 *, const JPH_RVec3 *, const JPH_RVec3 *, JPH_Color, JPH_DebugRenderer_CastShadow)")] + public IntPtr DrawTriangle; + + [NativeTypeName("void (*)(void *, const JPH_RVec3 *, const char *, JPH_Color, float)")] + public IntPtr DrawText3D; + } + + public unsafe partial struct JPH_SkeletonJoint + { + [NativeTypeName("const char *")] + public sbyte* name; + + [NativeTypeName("const char *")] + public sbyte* parentName; + + public int parentJointIndex; + } + + public partial struct JPH_WheelSettings + { + } + + public partial struct JPH_WheelSettingsWV + { + } + + public partial struct JPH_WheelSettingsTV + { + } + + public partial struct JPH_Wheel + { + } + + public partial struct JPH_WheelWV + { + } + + public partial struct JPH_WheelTV + { + } + + public partial struct JPH_VehicleTransmissionSettings + { + } + + public partial struct JPH_VehicleCollisionTester + { + } + + public partial struct JPH_VehicleCollisionTesterRay + { + } + + public partial struct JPH_VehicleCollisionTesterCastSphere + { + } + + public partial struct JPH_VehicleCollisionTesterCastCylinder + { + } + + public partial struct JPH_VehicleConstraint + { + } + + public partial struct JPH_VehicleControllerSettings + { + } + + public partial struct JPH_WheeledVehicleControllerSettings + { + } + + public partial struct JPH_MotorcycleControllerSettings + { + } + + public partial struct JPH_TrackedVehicleControllerSettings + { + } + + public partial struct JPH_WheeledVehicleController + { + } + + public partial struct JPH_MotorcycleController + { + } + + public partial struct JPH_TrackedVehicleController + { + } + + public partial struct JPH_VehicleController + { + } + + public partial struct JPH_VehicleAntiRollBar + { + public int leftWheel; + + public int rightWheel; + + public float stiffness; + } + + public unsafe partial struct JPH_VehicleConstraintSettings + { + public JPH_ConstraintSettings @base; + + [NativeTypeName("JPH_Vec3")] + public float3 up; + + [NativeTypeName("JPH_Vec3")] + public float3 forward; + + public float maxPitchRollAngle; + + [NativeTypeName("uint32_t")] + public uint wheelsCount; + + public JPH_WheelSettings** wheels; + + [NativeTypeName("uint32_t")] + public uint antiRollBarsCount; + + [NativeTypeName("const JPH_VehicleAntiRollBar *")] + public JPH_VehicleAntiRollBar* antiRollBars; + + public JPH_VehicleControllerSettings* controller; + } + + public partial struct JPH_VehicleEngineSettings + { + public float maxTorque; + + public float minRPM; + + public float maxRPM; + + public float inertia; + + public float angularDamping; + } + + public partial struct JPH_VehicleDifferentialSettings + { + public int leftWheel; + + public int rightWheel; + + public float differentialRatio; + + public float leftRightSplit; + + public float limitedSlipRatio; + + public float engineTorqueRatio; + } + + public partial struct JPH_StateRecorderFilter_Procs + { + [NativeTypeName("bool (*)(void *, const JPH_Body *)")] + public IntPtr ShouldSaveBody; + + [NativeTypeName("bool (*)(void *, const JPH_Constraint *)")] + public IntPtr ShouldSaveConstraint; + + [NativeTypeName("bool (*)(void *, const JPH_BodyID, const JPH_BodyID)")] + public IntPtr ShouldSaveContact; + + [NativeTypeName("bool (*)(void *, const JPH_BodyID, const JPH_BodyID)")] + public IntPtr ShouldRestoreContact; + } + + public static unsafe partial class UnsafeBindings + { + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_JobSystem* JPH_JobSystemThreadPool_Create([NativeTypeName("const JobSystemThreadPoolConfig *")] JobSystemThreadPoolConfig* config); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_JobSystem* JPH_JobSystemCallback_Create([NativeTypeName("const JPH_JobSystemConfig *")] JPH_JobSystemConfig* config); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_JobSystem_Destroy(JPH_JobSystem* jobSystem); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Init(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shutdown(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SetTraceHandler([NativeTypeName("JPH_TraceFunc")] IntPtr handler); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SetAssertFailureHandler([NativeTypeName("JPH_AssertFailureFunc")] IntPtr handler); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CollideShapeResult_FreeMembers(JPH_CollideShapeResult* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CollisionEstimationResult_FreeMembers(JPH_CollisionEstimationResult* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BroadPhaseLayerInterface* JPH_BroadPhaseLayerInterfaceMask_Create([NativeTypeName("uint32_t")] uint numBroadPhaseLayers); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BroadPhaseLayerInterfaceMask_ConfigureLayer(JPH_BroadPhaseLayerInterface* bpInterface, [NativeTypeName("JPH_BroadPhaseLayer")] byte broadPhaseLayer, [NativeTypeName("uint32_t")] uint groupsToInclude, [NativeTypeName("uint32_t")] uint groupsToExclude); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BroadPhaseLayerInterface* JPH_BroadPhaseLayerInterfaceTable_Create([NativeTypeName("uint32_t")] uint numObjectLayers, [NativeTypeName("uint32_t")] uint numBroadPhaseLayers); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BroadPhaseLayerInterfaceTable_MapObjectToBroadPhaseLayer(JPH_BroadPhaseLayerInterface* bpInterface, [NativeTypeName("JPH_ObjectLayer")] uint objectLayer, [NativeTypeName("JPH_BroadPhaseLayer")] byte broadPhaseLayer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ObjectLayerPairFilter* JPH_ObjectLayerPairFilterMask_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_ObjectLayer")] + public static extern uint JPH_ObjectLayerPairFilterMask_GetObjectLayer([NativeTypeName("uint32_t")] uint group, [NativeTypeName("uint32_t")] uint mask); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ObjectLayerPairFilterMask_GetGroup([NativeTypeName("JPH_ObjectLayer")] uint layer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ObjectLayerPairFilterMask_GetMask([NativeTypeName("JPH_ObjectLayer")] uint layer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ObjectLayerPairFilter* JPH_ObjectLayerPairFilterTable_Create([NativeTypeName("uint32_t")] uint numObjectLayers); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ObjectLayerPairFilterTable_DisableCollision(JPH_ObjectLayerPairFilter* objectFilter, [NativeTypeName("JPH_ObjectLayer")] uint layer1, [NativeTypeName("JPH_ObjectLayer")] uint layer2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ObjectLayerPairFilterTable_EnableCollision(JPH_ObjectLayerPairFilter* objectFilter, [NativeTypeName("JPH_ObjectLayer")] uint layer1, [NativeTypeName("JPH_ObjectLayer")] uint layer2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_ObjectLayerPairFilterTable_ShouldCollide(JPH_ObjectLayerPairFilter* objectFilter, [NativeTypeName("JPH_ObjectLayer")] uint layer1, [NativeTypeName("JPH_ObjectLayer")] uint layer2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ObjectVsBroadPhaseLayerFilter* JPH_ObjectVsBroadPhaseLayerFilterMask_Create([NativeTypeName("const JPH_BroadPhaseLayerInterface *")] JPH_BroadPhaseLayerInterface* broadPhaseLayerInterface); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ObjectVsBroadPhaseLayerFilter* JPH_ObjectVsBroadPhaseLayerFilterTable_Create(JPH_BroadPhaseLayerInterface* broadPhaseLayerInterface, [NativeTypeName("uint32_t")] uint numBroadPhaseLayers, JPH_ObjectLayerPairFilter* objectLayerPairFilter, [NativeTypeName("uint32_t")] uint numObjectLayers); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DrawSettings_InitDefault(JPH_DrawSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PhysicsSystem* JPH_PhysicsSystem_Create([NativeTypeName("const JPH_PhysicsSystemSettings *")] JPH_PhysicsSystemSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_Destroy(JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_SetPhysicsSettings(JPH_PhysicsSystem* system, JPH_PhysicsSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_GetPhysicsSettings(JPH_PhysicsSystem* system, JPH_PhysicsSettings* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_OptimizeBroadPhase(JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PhysicsUpdateError JPH_PhysicsSystem_Update(JPH_PhysicsSystem* system, float deltaTime, int collisionSteps, JPH_JobSystem* jobSystem); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyInterface* JPH_PhysicsSystem_GetBodyInterface(JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyInterface* JPH_PhysicsSystem_GetBodyInterfaceNoLock(JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_BodyLockInterface *")] + public static extern JPH_BodyLockInterface* JPH_PhysicsSystem_GetBodyLockInterface([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_BodyLockInterface *")] + public static extern JPH_BodyLockInterface* JPH_PhysicsSystem_GetBodyLockInterfaceNoLock([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_BroadPhaseQuery *")] + public static extern JPH_BroadPhaseQuery* JPH_PhysicsSystem_GetBroadPhaseQuery([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_NarrowPhaseQuery *")] + public static extern JPH_NarrowPhaseQuery* JPH_PhysicsSystem_GetNarrowPhaseQuery([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_NarrowPhaseQuery *")] + public static extern JPH_NarrowPhaseQuery* JPH_PhysicsSystem_GetNarrowPhaseQueryNoLock([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_SetContactListener(JPH_PhysicsSystem* system, JPH_ContactListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_SetBodyActivationListener(JPH_PhysicsSystem* system, JPH_BodyActivationListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_SetSimShapeFilter(JPH_PhysicsSystem* system, JPH_SimShapeFilter* filter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_PhysicsSystem_WereBodiesInContact([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, [NativeTypeName("JPH_BodyID")] uint body1, [NativeTypeName("JPH_BodyID")] uint body2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_PhysicsSystem_GetNumBodies([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_PhysicsSystem_GetNumActiveBodies([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, JPH_BodyType type); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_PhysicsSystem_GetMaxBodies([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_PhysicsSystem_GetNumConstraints([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_SetGravity(JPH_PhysicsSystem* system, [NativeTypeName("const JPH_Vec3 *")] float3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_GetGravity(JPH_PhysicsSystem* system, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_AddConstraint(JPH_PhysicsSystem* system, JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_RemoveConstraint(JPH_PhysicsSystem* system, JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_AddConstraints(JPH_PhysicsSystem* system, JPH_Constraint** constraints, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_RemoveConstraints(JPH_PhysicsSystem* system, JPH_Constraint** constraints, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_AddStepListener(JPH_PhysicsSystem* system, JPH_PhysicsStepListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_RemoveStepListener(JPH_PhysicsSystem* system, JPH_PhysicsStepListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_GetBodies([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, [NativeTypeName("JPH_BodyID *")] uint* ids, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_GetConstraints([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, [NativeTypeName("const JPH_Constraint **")] JPH_Constraint** constraints, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_SaveState([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, JPH_StateRecorderImpl* inStream, JPH_StateRecorderState inState, [NativeTypeName("const JPH_StateRecorderFilter *")] JPH_StateRecorderFilter* inFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_RestoreState([NativeTypeName("const JPH_PhysicsSystem *")] JPH_PhysicsSystem* system, JPH_StateRecorderImpl* inStream, [NativeTypeName("const JPH_StateRecorderFilter *")] JPH_StateRecorderFilter* inFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_DrawBodies(JPH_PhysicsSystem* system, [NativeTypeName("const JPH_DrawSettings *")] JPH_DrawSettings* settings, JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_BodyDrawFilter *")] JPH_BodyDrawFilter* bodyFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_DrawConstraints(JPH_PhysicsSystem* system, JPH_DebugRenderer* renderer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_DrawConstraintLimits(JPH_PhysicsSystem* system, JPH_DebugRenderer* renderer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsSystem_DrawConstraintReferenceFrame(JPH_PhysicsSystem* system, JPH_DebugRenderer* renderer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsStepListener_SetProcs([NativeTypeName("const JPH_PhysicsStepListener_Procs *")] JPH_PhysicsStepListener_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PhysicsStepListener* JPH_PhysicsStepListener_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsStepListener_Destroy(JPH_PhysicsStepListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quaternion_FromTo([NativeTypeName("const JPH_Vec3 *")] float3* from, [NativeTypeName("const JPH_Vec3 *")] float3* to, [NativeTypeName("JPH_Quat *")] quaternion* quat); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_GetAxisAngle([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* outAxis, float* outAngle); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_GetEulerAngles([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_RotateAxisX([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_RotateAxisY([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_RotateAxisZ([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Inversed([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_GetPerpendicular([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Quat_GetRotationAngle([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("const JPH_Vec3 *")] float3* axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_FromEulerAngles([NativeTypeName("const JPH_Vec3 *")] float3* angles, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Add([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Subtract([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Multiply([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_MultiplyScalar([NativeTypeName("const JPH_Quat *")] quaternion* q, float scalar, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_DivideScalar([NativeTypeName("const JPH_Quat *")] quaternion* q, float scalar, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Dot([NativeTypeName("const JPH_Quat *")] quaternion* q1, [NativeTypeName("const JPH_Quat *")] quaternion* q2, float* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Conjugated([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_GetTwist([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("const JPH_Vec3 *")] float3* axis, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_GetSwingTwist([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("JPH_Quat *")] quaternion* outSwing, [NativeTypeName("JPH_Quat *")] quaternion* outTwist); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Lerp([NativeTypeName("const JPH_Quat *")] quaternion* from, [NativeTypeName("const JPH_Quat *")] quaternion* to, float fraction, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Slerp([NativeTypeName("const JPH_Quat *")] quaternion* from, [NativeTypeName("const JPH_Quat *")] quaternion* to, float fraction, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_Rotate([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("const JPH_Vec3 *")] float3* vec, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Quat_InverseRotate([NativeTypeName("const JPH_Quat *")] quaternion* quat, [NativeTypeName("const JPH_Vec3 *")] float3* vec, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Vec3_IsClose([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, float maxDistSq); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Vec3_IsNearZero([NativeTypeName("const JPH_Vec3 *")] float3* v, float maxDistSq); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Vec3_IsNormalized([NativeTypeName("const JPH_Vec3 *")] float3* v, float tolerance); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Vec3_IsNaN([NativeTypeName("const JPH_Vec3 *")] float3* v); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Negate([NativeTypeName("const JPH_Vec3 *")] float3* v, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Normalized([NativeTypeName("const JPH_Vec3 *")] float3* v, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Cross([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Abs([NativeTypeName("const JPH_Vec3 *")] float3* v, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Vec3_Length([NativeTypeName("const JPH_Vec3 *")] float3* v); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Vec3_LengthSquared([NativeTypeName("const JPH_Vec3 *")] float3* v); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_DotProduct([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, float* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Normalize([NativeTypeName("const JPH_Vec3 *")] float3* v, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Add([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Subtract([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Multiply([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_MultiplyScalar([NativeTypeName("const JPH_Vec3 *")] float3* v, float scalar, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_Divide([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Vec3_DivideScalar([NativeTypeName("const JPH_Vec3 *")] float3* v, float scalar, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Add([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m2, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Subtract([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m2, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Multiply([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m2, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_MultiplyScalar([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m, float scalar, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Zero([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Identity([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Rotation([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Translation([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Vec3 *")] float3* translation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_RotationTranslation([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Vec3 *")] float3* translation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_InverseRotationTranslation([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Vec3 *")] float3* translation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Scale([NativeTypeName("JPH_Matrix4x4 *")] float4x4* result, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Inversed([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_Transposed([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* m, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_Zero([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_Identity([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_Rotation([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_Translation([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_RVec3 *")] rvec3* translation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_RotationTranslation([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_RVec3 *")] rvec3* translation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_InverseRotationTranslation([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_RVec3 *")] rvec3* translation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_Scale([NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RMatrix4x4_Inversed([NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* m, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_GetAxisX([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_GetAxisY([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_GetAxisZ([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_GetTranslation([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Matrix4x4_GetQuaternion([NativeTypeName("const JPH_Matrix4x4 *")] float4x4* matrix, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PhysicsMaterial* JPH_PhysicsMaterial_Create([NativeTypeName("const char *")] sbyte* name, [NativeTypeName("uint32_t")] uint color); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PhysicsMaterial_Destroy(JPH_PhysicsMaterial* material); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const char *")] + public static extern sbyte* JPH_PhysicsMaterial_GetDebugName([NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_PhysicsMaterial_GetDebugColor([NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_GroupFilter_Destroy(JPH_GroupFilter* groupFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_GroupFilter_CanCollide(JPH_GroupFilter* groupFilter, [NativeTypeName("const JPH_CollisionGroup *")] JPH_CollisionGroup* group1, [NativeTypeName("const JPH_CollisionGroup *")] JPH_CollisionGroup* group2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_GroupFilterTable* JPH_GroupFilterTable_Create([NativeTypeName("uint32_t")] uint numSubGroups); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_GroupFilterTable_DisableCollision(JPH_GroupFilterTable* table, [NativeTypeName("JPH_CollisionSubGroupID")] uint subGroup1, [NativeTypeName("JPH_CollisionSubGroupID")] uint subGroup2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_GroupFilterTable_EnableCollision(JPH_GroupFilterTable* table, [NativeTypeName("JPH_CollisionSubGroupID")] uint subGroup1, [NativeTypeName("JPH_CollisionSubGroupID")] uint subGroup2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_GroupFilterTable_IsCollisionEnabled(JPH_GroupFilterTable* table, [NativeTypeName("JPH_CollisionSubGroupID")] uint subGroup1, [NativeTypeName("JPH_CollisionSubGroupID")] uint subGroup2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ShapeSettings_Destroy(JPH_ShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_ShapeSettings_GetUserData([NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ShapeSettings_SetUserData(JPH_ShapeSettings* settings, [NativeTypeName("uint64_t")] ulong userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_Destroy(JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ShapeType JPH_Shape_GetType([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ShapeSubType JPH_Shape_GetSubType([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_Shape_GetUserData([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_SetUserData(JPH_Shape* shape, [NativeTypeName("uint64_t")] ulong userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Shape_MustBeStatic([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_GetCenterOfMass([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_GetLocalBounds([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, JPH_AABox* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Shape_GetSubShapeIDBitsRecursive([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_GetWorldSpaceBounds([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* centerOfMassTransform, [NativeTypeName("JPH_Vec3 *")] float3* scale, JPH_AABox* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Shape_GetInnerRadius([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_GetMassProperties([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, JPH_MassProperties* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_Shape *")] + public static extern JPH_Shape* JPH_Shape_GetLeafShape([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_SubShapeID")] uint subShapeID, [NativeTypeName("JPH_SubShapeID *")] uint* remainder); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_PhysicsMaterial *")] + public static extern JPH_PhysicsMaterial* JPH_Shape_GetMaterial([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_SubShapeID")] uint subShapeID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_GetSurfaceNormal([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("JPH_SubShapeID")] uint subShapeID, [NativeTypeName("JPH_Vec3 *")] float3* localPosition, [NativeTypeName("JPH_Vec3 *")] float3* normal); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_GetSupportingFace([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_SubShapeID")] uint subShapeID, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassTransform, JPH_SupportingFace* outVertices); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Shape_GetVolume([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Shape_IsValidScale([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Shape_MakeScaleValid([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Shape* JPH_Shape_ScaleShape([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Shape_CastRay([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, JPH_RayCastResult* hit); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Shape_CastRay2([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_RayCastSettings *")] JPH_RayCastSettings* rayCastSettings, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_CastRayResultCallback *")] IntPtr callback, void* userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Shape_CollidePoint([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* point, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Shape_CollidePoint2([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* point, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_CollidePointResultCallback *")] IntPtr callback, void* userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_ConvexShapeSettings_GetDensity([NativeTypeName("const JPH_ConvexShapeSettings *")] JPH_ConvexShapeSettings* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ConvexShapeSettings_SetDensity(JPH_ConvexShapeSettings* shape, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_ConvexShape_GetDensity([NativeTypeName("const JPH_ConvexShape *")] JPH_ConvexShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ConvexShape_SetDensity(JPH_ConvexShape* shape, float inDensity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BoxShapeSettings* JPH_BoxShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* halfExtent, float convexRadius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BoxShape* JPH_BoxShapeSettings_CreateShape([NativeTypeName("const JPH_BoxShapeSettings *")] JPH_BoxShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BoxShape* JPH_BoxShape_Create([NativeTypeName("const JPH_Vec3 *")] float3* halfExtent, float convexRadius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BoxShape_GetHalfExtent([NativeTypeName("const JPH_BoxShape *")] JPH_BoxShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* halfExtent); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BoxShape_GetConvexRadius([NativeTypeName("const JPH_BoxShape *")] JPH_BoxShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_SphereShapeSettings* JPH_SphereShapeSettings_Create(float radius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_SphereShape* JPH_SphereShapeSettings_CreateShape([NativeTypeName("const JPH_SphereShapeSettings *")] JPH_SphereShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SphereShapeSettings_GetRadius([NativeTypeName("const JPH_SphereShapeSettings *")] JPH_SphereShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SphereShapeSettings_SetRadius(JPH_SphereShapeSettings* settings, float radius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_SphereShape* JPH_SphereShape_Create(float radius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SphereShape_GetRadius([NativeTypeName("const JPH_SphereShape *")] JPH_SphereShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PlaneShapeSettings* JPH_PlaneShapeSettings_Create([NativeTypeName("const JPH_Plane *")] JPH_Plane* plane, [NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material, float halfExtent); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PlaneShape* JPH_PlaneShapeSettings_CreateShape([NativeTypeName("const JPH_PlaneShapeSettings *")] JPH_PlaneShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PlaneShape* JPH_PlaneShape_Create([NativeTypeName("const JPH_Plane *")] JPH_Plane* plane, [NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material, float halfExtent); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PlaneShape_GetPlane([NativeTypeName("const JPH_PlaneShape *")] JPH_PlaneShape* shape, JPH_Plane* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_PlaneShape_GetHalfExtent([NativeTypeName("const JPH_PlaneShape *")] JPH_PlaneShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TriangleShapeSettings* JPH_TriangleShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("const JPH_Vec3 *")] float3* v3, float convexRadius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TriangleShape* JPH_TriangleShapeSettings_CreateShape([NativeTypeName("const JPH_TriangleShapeSettings *")] JPH_TriangleShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TriangleShape* JPH_TriangleShape_Create([NativeTypeName("const JPH_Vec3 *")] float3* v1, [NativeTypeName("const JPH_Vec3 *")] float3* v2, [NativeTypeName("const JPH_Vec3 *")] float3* v3, float convexRadius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TriangleShape_GetConvexRadius([NativeTypeName("const JPH_TriangleShape *")] JPH_TriangleShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TriangleShape_GetVertex1([NativeTypeName("const JPH_TriangleShape *")] JPH_TriangleShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TriangleShape_GetVertex2([NativeTypeName("const JPH_TriangleShape *")] JPH_TriangleShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TriangleShape_GetVertex3([NativeTypeName("const JPH_TriangleShape *")] JPH_TriangleShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CapsuleShapeSettings* JPH_CapsuleShapeSettings_Create(float halfHeightOfCylinder, float radius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CapsuleShape* JPH_CapsuleShapeSettings_CreateShape([NativeTypeName("const JPH_CapsuleShapeSettings *")] JPH_CapsuleShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CapsuleShape* JPH_CapsuleShape_Create(float halfHeightOfCylinder, float radius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CapsuleShape_GetRadius([NativeTypeName("const JPH_CapsuleShape *")] JPH_CapsuleShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CapsuleShape_GetHalfHeightOfCylinder([NativeTypeName("const JPH_CapsuleShape *")] JPH_CapsuleShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CylinderShapeSettings* JPH_CylinderShapeSettings_Create(float halfHeight, float radius, float convexRadius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CylinderShape* JPH_CylinderShapeSettings_CreateShape([NativeTypeName("const JPH_CylinderShapeSettings *")] JPH_CylinderShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CylinderShape* JPH_CylinderShape_Create(float halfHeight, float radius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CylinderShape_GetRadius([NativeTypeName("const JPH_CylinderShape *")] JPH_CylinderShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CylinderShape_GetHalfHeight([NativeTypeName("const JPH_CylinderShape *")] JPH_CylinderShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TaperedCylinderShapeSettings* JPH_TaperedCylinderShapeSettings_Create(float halfHeightOfTaperedCylinder, float topRadius, float bottomRadius, float convexRadius, [NativeTypeName("const JPH_PhysicsMaterial *")] JPH_PhysicsMaterial* material); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TaperedCylinderShape* JPH_TaperedCylinderShapeSettings_CreateShape([NativeTypeName("const JPH_TaperedCylinderShapeSettings *")] JPH_TaperedCylinderShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TaperedCylinderShape_GetTopRadius([NativeTypeName("const JPH_TaperedCylinderShape *")] JPH_TaperedCylinderShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TaperedCylinderShape_GetBottomRadius([NativeTypeName("const JPH_TaperedCylinderShape *")] JPH_TaperedCylinderShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TaperedCylinderShape_GetConvexRadius([NativeTypeName("const JPH_TaperedCylinderShape *")] JPH_TaperedCylinderShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TaperedCylinderShape_GetHalfHeight([NativeTypeName("const JPH_TaperedCylinderShape *")] JPH_TaperedCylinderShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ConvexHullShapeSettings* JPH_ConvexHullShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* points, [NativeTypeName("uint32_t")] uint pointsCount, float maxConvexRadius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ConvexHullShape* JPH_ConvexHullShapeSettings_CreateShape([NativeTypeName("const JPH_ConvexHullShapeSettings *")] JPH_ConvexHullShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ConvexHullShape_GetNumPoints([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ConvexHullShape_GetPoint([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ConvexHullShape_GetNumFaces([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ConvexHullShape_GetNumVerticesInFace([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape, [NativeTypeName("uint32_t")] uint faceIndex); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ConvexHullShape_GetFaceVertices([NativeTypeName("const JPH_ConvexHullShape *")] JPH_ConvexHullShape* shape, [NativeTypeName("uint32_t")] uint faceIndex, [NativeTypeName("uint32_t")] uint maxVertices, [NativeTypeName("uint32_t *")] uint* vertices); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MeshShapeSettings* JPH_MeshShapeSettings_Create([NativeTypeName("const JPH_Triangle *")] JPH_Triangle* triangles, [NativeTypeName("uint32_t")] uint triangleCount); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MeshShapeSettings* JPH_MeshShapeSettings_Create2([NativeTypeName("const JPH_Vec3 *")] float3* vertices, [NativeTypeName("uint32_t")] uint verticesCount, [NativeTypeName("const JPH_IndexedTriangle *")] JPH_IndexedTriangle* triangles, [NativeTypeName("uint32_t")] uint triangleCount); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_MeshShapeSettings_GetMaxTrianglesPerLeaf([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MeshShapeSettings_SetMaxTrianglesPerLeaf(JPH_MeshShapeSettings* settings, [NativeTypeName("uint32_t")] uint value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MeshShapeSettings_GetActiveEdgeCosThresholdAngle([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MeshShapeSettings_SetActiveEdgeCosThresholdAngle(JPH_MeshShapeSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_MeshShapeSettings_GetPerTriangleUserData([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MeshShapeSettings_SetPerTriangleUserData(JPH_MeshShapeSettings* settings, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Mesh_Shape_BuildQuality JPH_MeshShapeSettings_GetBuildQuality([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MeshShapeSettings_SetBuildQuality(JPH_MeshShapeSettings* settings, JPH_Mesh_Shape_BuildQuality value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MeshShapeSettings_Sanitize(JPH_MeshShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MeshShape* JPH_MeshShapeSettings_CreateShape([NativeTypeName("const JPH_MeshShapeSettings *")] JPH_MeshShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_MeshShape_GetTriangleUserData([NativeTypeName("const JPH_MeshShape *")] JPH_MeshShape* shape, [NativeTypeName("JPH_SubShapeID")] uint id); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_HeightFieldShapeSettings* JPH_HeightFieldShapeSettings_Create([NativeTypeName("const float *")] float* samples, [NativeTypeName("const JPH_Vec3 *")] float3* offset, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("uint32_t")] uint sampleCount); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_HeightFieldShape* JPH_HeightFieldShapeSettings_CreateShape(JPH_HeightFieldShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HeightFieldShapeSettings_DetermineMinAndMaxSample([NativeTypeName("const JPH_HeightFieldShapeSettings *")] JPH_HeightFieldShapeSettings* settings, float* pOutMinValue, float* pOutMaxValue, float* pOutQuantizationScale); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_HeightFieldShapeSettings_CalculateBitsPerSampleForError([NativeTypeName("const JPH_HeightFieldShapeSettings *")] JPH_HeightFieldShapeSettings* settings, float maxError); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_HeightFieldShape_GetSampleCount([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_HeightFieldShape_GetBlockSize([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_PhysicsMaterial *")] + public static extern JPH_PhysicsMaterial* JPH_HeightFieldShape_GetMaterial([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape, [NativeTypeName("uint32_t")] uint x, [NativeTypeName("uint32_t")] uint y); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HeightFieldShape_GetPosition([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape, [NativeTypeName("uint32_t")] uint x, [NativeTypeName("uint32_t")] uint y, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_HeightFieldShape_IsNoCollision([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape, [NativeTypeName("uint32_t")] uint x, [NativeTypeName("uint32_t")] uint y); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_HeightFieldShape_ProjectOntoSurface([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* localPosition, [NativeTypeName("JPH_Vec3 *")] float3* outSurfacePosition, [NativeTypeName("JPH_SubShapeID *")] uint* outSubShapeID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_HeightFieldShape_GetMinHeightValue([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_HeightFieldShape_GetMaxHeightValue([NativeTypeName("const JPH_HeightFieldShape *")] JPH_HeightFieldShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TaperedCapsuleShapeSettings* JPH_TaperedCapsuleShapeSettings_Create(float halfHeightOfTaperedCylinder, float topRadius, float bottomRadius); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TaperedCapsuleShape* JPH_TaperedCapsuleShapeSettings_CreateShape(JPH_TaperedCapsuleShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TaperedCapsuleShape_GetTopRadius([NativeTypeName("const JPH_TaperedCapsuleShape *")] JPH_TaperedCapsuleShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TaperedCapsuleShape_GetBottomRadius([NativeTypeName("const JPH_TaperedCapsuleShape *")] JPH_TaperedCapsuleShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TaperedCapsuleShape_GetHalfHeight([NativeTypeName("const JPH_TaperedCapsuleShape *")] JPH_TaperedCapsuleShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CompoundShapeSettings_AddShape(JPH_CompoundShapeSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* shapeSettings, [NativeTypeName("uint32_t")] uint userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CompoundShapeSettings_AddShape2(JPH_CompoundShapeSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("uint32_t")] uint userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_CompoundShape_GetNumSubShapes([NativeTypeName("const JPH_CompoundShape *")] JPH_CompoundShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CompoundShape_GetSubShape([NativeTypeName("const JPH_CompoundShape *")] JPH_CompoundShape* shape, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("const JPH_Shape **")] JPH_Shape** subShape, [NativeTypeName("JPH_Vec3 *")] float3* positionCOM, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName("uint32_t *")] uint* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_CompoundShape_GetSubShapeIndexFromID([NativeTypeName("const JPH_CompoundShape *")] JPH_CompoundShape* shape, [NativeTypeName("JPH_SubShapeID")] uint id, [NativeTypeName("JPH_SubShapeID *")] uint* remainder); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_StaticCompoundShapeSettings* JPH_StaticCompoundShapeSettings_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_StaticCompoundShape* JPH_StaticCompoundShape_Create([NativeTypeName("const JPH_StaticCompoundShapeSettings *")] JPH_StaticCompoundShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MutableCompoundShapeSettings* JPH_MutableCompoundShapeSettings_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MutableCompoundShape* JPH_MutableCompoundShape_Create([NativeTypeName("const JPH_MutableCompoundShapeSettings *")] JPH_MutableCompoundShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_MutableCompoundShape_AddShape(JPH_MutableCompoundShape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* child, [NativeTypeName("uint32_t")] uint userData, [NativeTypeName("uint32_t")] uint index); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MutableCompoundShape_RemoveShape(JPH_MutableCompoundShape* shape, [NativeTypeName("uint32_t")] uint index); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MutableCompoundShape_ModifyShape(JPH_MutableCompoundShape* shape, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MutableCompoundShape_ModifyShape2(JPH_MutableCompoundShape* shape, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* newShape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MutableCompoundShape_AdjustCenterOfMass(JPH_MutableCompoundShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_Shape *")] + public static extern JPH_Shape* JPH_DecoratedShape_GetInnerShape([NativeTypeName("const JPH_DecoratedShape *")] JPH_DecoratedShape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_RotatedTranslatedShapeSettings* JPH_RotatedTranslatedShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* shapeSettings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_RotatedTranslatedShapeSettings* JPH_RotatedTranslatedShapeSettings_Create2([NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_RotatedTranslatedShape* JPH_RotatedTranslatedShapeSettings_CreateShape([NativeTypeName("const JPH_RotatedTranslatedShapeSettings *")] JPH_RotatedTranslatedShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_RotatedTranslatedShape* JPH_RotatedTranslatedShape_Create([NativeTypeName("const JPH_Vec3 *")] float3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RotatedTranslatedShape_GetPosition([NativeTypeName("const JPH_RotatedTranslatedShape *")] JPH_RotatedTranslatedShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* position); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RotatedTranslatedShape_GetRotation([NativeTypeName("const JPH_RotatedTranslatedShape *")] JPH_RotatedTranslatedShape* shape, [NativeTypeName("JPH_Quat *")] quaternion* rotation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ScaledShapeSettings* JPH_ScaledShapeSettings_Create([NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* shapeSettings, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ScaledShapeSettings* JPH_ScaledShapeSettings_Create2([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ScaledShape* JPH_ScaledShapeSettings_CreateShape([NativeTypeName("const JPH_ScaledShapeSettings *")] JPH_ScaledShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ScaledShape* JPH_ScaledShape_Create([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ScaledShape_GetScale([NativeTypeName("const JPH_ScaledShape *")] JPH_ScaledShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_OffsetCenterOfMassShapeSettings* JPH_OffsetCenterOfMassShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* offset, [NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* shapeSettings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_OffsetCenterOfMassShapeSettings* JPH_OffsetCenterOfMassShapeSettings_Create2([NativeTypeName("const JPH_Vec3 *")] float3* offset, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_OffsetCenterOfMassShape* JPH_OffsetCenterOfMassShapeSettings_CreateShape([NativeTypeName("const JPH_OffsetCenterOfMassShapeSettings *")] JPH_OffsetCenterOfMassShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_OffsetCenterOfMassShape* JPH_OffsetCenterOfMassShape_Create([NativeTypeName("const JPH_Vec3 *")] float3* offset, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_OffsetCenterOfMassShape_GetOffset([NativeTypeName("const JPH_OffsetCenterOfMassShape *")] JPH_OffsetCenterOfMassShape* shape, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_EmptyShapeSettings* JPH_EmptyShapeSettings_Create([NativeTypeName("const JPH_Vec3 *")] float3* centerOfMass); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_EmptyShape* JPH_EmptyShapeSettings_CreateShape([NativeTypeName("const JPH_EmptyShapeSettings *")] JPH_EmptyShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyCreationSettings* JPH_BodyCreationSettings_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyCreationSettings* JPH_BodyCreationSettings_Create2([NativeTypeName("const JPH_ShapeSettings *")] JPH_ShapeSettings* settings, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, JPH_MotionType motionType, [NativeTypeName("JPH_ObjectLayer")] uint objectLayer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyCreationSettings* JPH_BodyCreationSettings_Create3([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, JPH_MotionType motionType, [NativeTypeName("JPH_ObjectLayer")] uint objectLayer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_Destroy(JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_GetPosition(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetPosition(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_RVec3 *")] rvec3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_GetRotation(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetRotation(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_Quat *")] quaternion* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_GetLinearVelocity(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetLinearVelocity(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_GetAngularVelocity(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetAngularVelocity(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_BodyCreationSettings_GetUserData([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetUserData(JPH_BodyCreationSettings* settings, [NativeTypeName("uint64_t")] ulong value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_ObjectLayer")] + public static extern uint JPH_BodyCreationSettings_GetObjectLayer([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetObjectLayer(JPH_BodyCreationSettings* settings, [NativeTypeName("JPH_ObjectLayer")] uint value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_GetCollisionGroup([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings, JPH_CollisionGroup* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetCollisionGroup(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_CollisionGroup *")] JPH_CollisionGroup* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MotionType JPH_BodyCreationSettings_GetMotionType([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetMotionType(JPH_BodyCreationSettings* settings, JPH_MotionType value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_AllowedDOFs JPH_BodyCreationSettings_GetAllowedDOFs([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetAllowedDOFs(JPH_BodyCreationSettings* settings, JPH_AllowedDOFs value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetAllowDynamicOrKinematic([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetAllowDynamicOrKinematic(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetIsSensor([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetIsSensor(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetCollideKinematicVsNonDynamic([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetCollideKinematicVsNonDynamic(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetUseManifoldReduction([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetUseManifoldReduction(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetApplyGyroscopicForce([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetApplyGyroscopicForce(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MotionQuality JPH_BodyCreationSettings_GetMotionQuality([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetMotionQuality(JPH_BodyCreationSettings* settings, JPH_MotionQuality value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetEnhancedInternalEdgeRemoval([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetEnhancedInternalEdgeRemoval(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyCreationSettings_GetAllowSleeping([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetAllowSleeping(JPH_BodyCreationSettings* settings, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BodyCreationSettings_GetFriction([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetFriction(JPH_BodyCreationSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BodyCreationSettings_GetRestitution([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetRestitution(JPH_BodyCreationSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BodyCreationSettings_GetLinearDamping([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetLinearDamping(JPH_BodyCreationSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BodyCreationSettings_GetAngularDamping([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetAngularDamping(JPH_BodyCreationSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BodyCreationSettings_GetMaxLinearVelocity([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetMaxLinearVelocity(JPH_BodyCreationSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BodyCreationSettings_GetMaxAngularVelocity([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetMaxAngularVelocity(JPH_BodyCreationSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BodyCreationSettings_GetGravityFactor([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetGravityFactor(JPH_BodyCreationSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_BodyCreationSettings_GetNumVelocityStepsOverride([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetNumVelocityStepsOverride(JPH_BodyCreationSettings* settings, [NativeTypeName("uint32_t")] uint value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_BodyCreationSettings_GetNumPositionStepsOverride([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetNumPositionStepsOverride(JPH_BodyCreationSettings* settings, [NativeTypeName("uint32_t")] uint value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_OverrideMassProperties JPH_BodyCreationSettings_GetOverrideMassProperties([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetOverrideMassProperties(JPH_BodyCreationSettings* settings, JPH_OverrideMassProperties value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BodyCreationSettings_GetInertiaMultiplier([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetInertiaMultiplier(JPH_BodyCreationSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_GetMassPropertiesOverride([NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings, JPH_MassProperties* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyCreationSettings_SetMassPropertiesOverride(JPH_BodyCreationSettings* settings, [NativeTypeName("const JPH_MassProperties *")] JPH_MassProperties* massProperties); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_SoftBodyCreationSettings* JPH_SoftBodyCreationSettings_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SoftBodyCreationSettings_Destroy(JPH_SoftBodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Constraint_Destroy(JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ConstraintType JPH_Constraint_GetType([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ConstraintSubType JPH_Constraint_GetSubType([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Constraint_GetConstraintPriority([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Constraint_SetConstraintPriority(JPH_Constraint* constraint, [NativeTypeName("uint32_t")] uint priority); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Constraint_GetNumVelocityStepsOverride([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Constraint_SetNumVelocityStepsOverride(JPH_Constraint* constraint, [NativeTypeName("uint32_t")] uint value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Constraint_GetNumPositionStepsOverride([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Constraint_SetNumPositionStepsOverride(JPH_Constraint* constraint, [NativeTypeName("uint32_t")] uint value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Constraint_GetEnabled([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Constraint_SetEnabled(JPH_Constraint* constraint, [NativeTypeName("bool")] byte enabled); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_Constraint_GetUserData([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Constraint_SetUserData(JPH_Constraint* constraint, [NativeTypeName("uint64_t")] ulong userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Constraint_NotifyShapeChanged(JPH_Constraint* constraint, [NativeTypeName("JPH_BodyID")] uint bodyID, [NativeTypeName("JPH_Vec3 *")] float3* deltaCOM); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Constraint_ResetWarmStart(JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Constraint_IsActive([NativeTypeName("const JPH_Constraint *")] JPH_Constraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Constraint_SetupVelocityConstraint(JPH_Constraint* constraint, float deltaTime); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Constraint_WarmStartVelocityConstraint(JPH_Constraint* constraint, float warmStartImpulseRatio); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Constraint_SolveVelocityConstraint(JPH_Constraint* constraint, float deltaTime); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Constraint_SolvePositionConstraint(JPH_Constraint* constraint, float deltaTime, float baumgarte); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Body* JPH_TwoBodyConstraint_GetBody1([NativeTypeName("const JPH_TwoBodyConstraint *")] JPH_TwoBodyConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Body* JPH_TwoBodyConstraint_GetBody2([NativeTypeName("const JPH_TwoBodyConstraint *")] JPH_TwoBodyConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TwoBodyConstraint_GetConstraintToBody1Matrix([NativeTypeName("const JPH_TwoBodyConstraint *")] JPH_TwoBodyConstraint* constraint, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TwoBodyConstraint_GetConstraintToBody2Matrix([NativeTypeName("const JPH_TwoBodyConstraint *")] JPH_TwoBodyConstraint* constraint, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_FixedConstraintSettings_Init(JPH_FixedConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_FixedConstraint* JPH_FixedConstraint_Create([NativeTypeName("const JPH_FixedConstraintSettings *")] JPH_FixedConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_FixedConstraint_GetSettings([NativeTypeName("const JPH_FixedConstraint *")] JPH_FixedConstraint* constraint, JPH_FixedConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_FixedConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_FixedConstraint *")] JPH_FixedConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_FixedConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_FixedConstraint *")] JPH_FixedConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DistanceConstraintSettings_Init(JPH_DistanceConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_DistanceConstraint* JPH_DistanceConstraint_Create([NativeTypeName("const JPH_DistanceConstraintSettings *")] JPH_DistanceConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DistanceConstraint_GetSettings([NativeTypeName("const JPH_DistanceConstraint *")] JPH_DistanceConstraint* constraint, JPH_DistanceConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DistanceConstraint_SetDistance(JPH_DistanceConstraint* constraint, float minDistance, float maxDistance); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_DistanceConstraint_GetMinDistance(JPH_DistanceConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_DistanceConstraint_GetMaxDistance(JPH_DistanceConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DistanceConstraint_GetLimitsSpringSettings(JPH_DistanceConstraint* constraint, JPH_SpringSettings* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DistanceConstraint_SetLimitsSpringSettings(JPH_DistanceConstraint* constraint, JPH_SpringSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_DistanceConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_DistanceConstraint *")] JPH_DistanceConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PointConstraintSettings_Init(JPH_PointConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PointConstraint* JPH_PointConstraint_Create([NativeTypeName("const JPH_PointConstraintSettings *")] JPH_PointConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PointConstraint_GetSettings([NativeTypeName("const JPH_PointConstraint *")] JPH_PointConstraint* constraint, JPH_PointConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PointConstraint_SetPoint1(JPH_PointConstraint* constraint, JPH_ConstraintSpace space, [NativeTypeName("JPH_RVec3 *")] rvec3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PointConstraint_SetPoint2(JPH_PointConstraint* constraint, JPH_ConstraintSpace space, [NativeTypeName("JPH_RVec3 *")] rvec3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PointConstraint_GetLocalSpacePoint1([NativeTypeName("const JPH_PointConstraint *")] JPH_PointConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PointConstraint_GetLocalSpacePoint2([NativeTypeName("const JPH_PointConstraint *")] JPH_PointConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_PointConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_PointConstraint *")] JPH_PointConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraintSettings_Init(JPH_HingeConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_HingeConstraint* JPH_HingeConstraint_Create([NativeTypeName("const JPH_HingeConstraintSettings *")] JPH_HingeConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_GetSettings(JPH_HingeConstraint* constraint, JPH_HingeConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_GetLocalSpacePoint1([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_GetLocalSpacePoint2([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_GetLocalSpaceHingeAxis1([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_GetLocalSpaceHingeAxis2([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_GetLocalSpaceNormalAxis1([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_GetLocalSpaceNormalAxis2([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_HingeConstraint_GetCurrentAngle(JPH_HingeConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_SetMaxFrictionTorque(JPH_HingeConstraint* constraint, float frictionTorque); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_HingeConstraint_GetMaxFrictionTorque(JPH_HingeConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_SetMotorSettings(JPH_HingeConstraint* constraint, JPH_MotorSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_GetMotorSettings(JPH_HingeConstraint* constraint, JPH_MotorSettings* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_SetMotorState(JPH_HingeConstraint* constraint, JPH_MotorState state); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MotorState JPH_HingeConstraint_GetMotorState(JPH_HingeConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_SetTargetAngularVelocity(JPH_HingeConstraint* constraint, float angularVelocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_HingeConstraint_GetTargetAngularVelocity(JPH_HingeConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_SetTargetAngle(JPH_HingeConstraint* constraint, float angle); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_HingeConstraint_GetTargetAngle(JPH_HingeConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_SetLimits(JPH_HingeConstraint* constraint, float inLimitsMin, float inLimitsMax); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_HingeConstraint_GetLimitsMin(JPH_HingeConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_HingeConstraint_GetLimitsMax(JPH_HingeConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_HingeConstraint_HasLimits(JPH_HingeConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_GetLimitsSpringSettings(JPH_HingeConstraint* constraint, JPH_SpringSettings* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_SetLimitsSpringSettings(JPH_HingeConstraint* constraint, JPH_SpringSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_HingeConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint, [NativeTypeName("float[2]")] float* rotation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_HingeConstraint_GetTotalLambdaRotationLimits([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_HingeConstraint_GetTotalLambdaMotor([NativeTypeName("const JPH_HingeConstraint *")] JPH_HingeConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraintSettings_Init(JPH_SliderConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraintSettings_SetSliderAxis(JPH_SliderConstraintSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_SliderConstraint* JPH_SliderConstraint_Create([NativeTypeName("const JPH_SliderConstraintSettings *")] JPH_SliderConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraint_GetSettings(JPH_SliderConstraint* constraint, JPH_SliderConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SliderConstraint_GetCurrentPosition(JPH_SliderConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraint_SetMaxFrictionForce(JPH_SliderConstraint* constraint, float frictionForce); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SliderConstraint_GetMaxFrictionForce(JPH_SliderConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraint_SetMotorSettings(JPH_SliderConstraint* constraint, JPH_MotorSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraint_GetMotorSettings([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint, JPH_MotorSettings* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraint_SetMotorState(JPH_SliderConstraint* constraint, JPH_MotorState state); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MotorState JPH_SliderConstraint_GetMotorState(JPH_SliderConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraint_SetTargetVelocity(JPH_SliderConstraint* constraint, float velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SliderConstraint_GetTargetVelocity(JPH_SliderConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraint_SetTargetPosition(JPH_SliderConstraint* constraint, float position); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SliderConstraint_GetTargetPosition(JPH_SliderConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraint_SetLimits(JPH_SliderConstraint* constraint, float inLimitsMin, float inLimitsMax); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SliderConstraint_GetLimitsMin(JPH_SliderConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SliderConstraint_GetLimitsMax(JPH_SliderConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_SliderConstraint_HasLimits(JPH_SliderConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraint_GetLimitsSpringSettings(JPH_SliderConstraint* constraint, JPH_SpringSettings* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraint_SetLimitsSpringSettings(JPH_SliderConstraint* constraint, JPH_SpringSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint, [NativeTypeName("float[2]")] float* position); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SliderConstraint_GetTotalLambdaPositionLimits([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SliderConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SliderConstraint_GetTotalLambdaMotor([NativeTypeName("const JPH_SliderConstraint *")] JPH_SliderConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ConeConstraintSettings_Init(JPH_ConeConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ConeConstraint* JPH_ConeConstraint_Create([NativeTypeName("const JPH_ConeConstraintSettings *")] JPH_ConeConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ConeConstraint_GetSettings(JPH_ConeConstraint* constraint, JPH_ConeConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ConeConstraint_SetHalfConeAngle(JPH_ConeConstraint* constraint, float halfConeAngle); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_ConeConstraint_GetCosHalfConeAngle([NativeTypeName("const JPH_ConeConstraint *")] JPH_ConeConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ConeConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_ConeConstraint *")] JPH_ConeConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_ConeConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_ConeConstraint *")] JPH_ConeConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SwingTwistConstraintSettings_Init(JPH_SwingTwistConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_SwingTwistConstraint* JPH_SwingTwistConstraint_Create([NativeTypeName("const JPH_SwingTwistConstraintSettings *")] JPH_SwingTwistConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SwingTwistConstraint_GetSettings(JPH_SwingTwistConstraint* constraint, JPH_SwingTwistConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SwingTwistConstraint_GetNormalHalfConeAngle(JPH_SwingTwistConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SwingTwistConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SwingTwistConstraint_GetTotalLambdaTwist([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SwingTwistConstraint_GetTotalLambdaSwingY([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SwingTwistConstraint_GetTotalLambdaSwingZ([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SwingTwistConstraint_GetTotalLambdaMotor([NativeTypeName("const JPH_SwingTwistConstraint *")] JPH_SwingTwistConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraintSettings_Init(JPH_SixDOFConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraintSettings_MakeFreeAxis(JPH_SixDOFConstraintSettings* settings, JPH_SixDOFConstraintAxis axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_SixDOFConstraintSettings_IsFreeAxis([NativeTypeName("const JPH_SixDOFConstraintSettings *")] JPH_SixDOFConstraintSettings* settings, JPH_SixDOFConstraintAxis axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraintSettings_MakeFixedAxis(JPH_SixDOFConstraintSettings* settings, JPH_SixDOFConstraintAxis axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_SixDOFConstraintSettings_IsFixedAxis([NativeTypeName("const JPH_SixDOFConstraintSettings *")] JPH_SixDOFConstraintSettings* settings, JPH_SixDOFConstraintAxis axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraintSettings_SetLimitedAxis(JPH_SixDOFConstraintSettings* settings, JPH_SixDOFConstraintAxis axis, float min, float max); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_SixDOFConstraint* JPH_SixDOFConstraint_Create([NativeTypeName("const JPH_SixDOFConstraintSettings *")] JPH_SixDOFConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetSettings(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SixDOFConstraint_GetLimitsMin(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SixDOFConstraint_GetLimitsMax(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetTotalLambdaPosition([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetTotalLambdaRotation([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetTotalLambdaMotorTranslation([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetTotalLambdaMotorRotation([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetTranslationLimitsMin([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetTranslationLimitsMax([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetRotationLimitsMin([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetRotationLimitsMax([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_SixDOFConstraint_IsFixedAxis([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_SixDOFConstraint_IsFreeAxis([NativeTypeName("const JPH_SixDOFConstraint *")] JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetLimitsSpringSettings(JPH_SixDOFConstraint* constraint, JPH_SpringSettings* result, JPH_SixDOFConstraintAxis axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_SetLimitsSpringSettings(JPH_SixDOFConstraint* constraint, JPH_SpringSettings* settings, JPH_SixDOFConstraintAxis axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_SetMaxFriction(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis, float inFriction); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_SixDOFConstraint_GetMaxFriction(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetRotationInConstraintSpace(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetMotorSettings(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis, JPH_MotorSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_SetMotorState(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis, JPH_MotorState state); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MotorState JPH_SixDOFConstraint_GetMotorState(JPH_SixDOFConstraint* constraint, JPH_SixDOFConstraintAxis axis); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_SetTargetVelocityCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* inVelocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetTargetVelocityCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_SetTargetAngularVelocityCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* inAngularVelocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetTargetAngularVelocityCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_SetTargetPositionCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* inPosition); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetTargetPositionCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_SetTargetOrientationCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Quat *")] quaternion* inOrientation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_GetTargetOrientationCS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SixDOFConstraint_SetTargetOrientationBS(JPH_SixDOFConstraint* constraint, [NativeTypeName("JPH_Quat *")] quaternion* inOrientation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_GearConstraintSettings_Init(JPH_GearConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_GearConstraint* JPH_GearConstraint_Create([NativeTypeName("const JPH_GearConstraintSettings *")] JPH_GearConstraintSettings* settings, JPH_Body* body1, JPH_Body* body2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_GearConstraint_GetSettings(JPH_GearConstraint* constraint, JPH_GearConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_GearConstraint_SetConstraints(JPH_GearConstraint* constraint, [NativeTypeName("const JPH_Constraint *")] JPH_Constraint* gear1, [NativeTypeName("const JPH_Constraint *")] JPH_Constraint* gear2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_GearConstraint_GetTotalLambda([NativeTypeName("const JPH_GearConstraint *")] JPH_GearConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_DestroyBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_BodyInterface_CreateAndAddBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings, JPH_Activation activationMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Body* JPH_BodyInterface_CreateBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Body* JPH_BodyInterface_CreateBodyWithID(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, [NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Body* JPH_BodyInterface_CreateBodyWithoutID(JPH_BodyInterface* bodyInterface, [NativeTypeName("const JPH_BodyCreationSettings *")] JPH_BodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_DestroyBodyWithoutID(JPH_BodyInterface* bodyInterface, JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyInterface_AssignBodyID(JPH_BodyInterface* bodyInterface, JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyInterface_AssignBodyID2(JPH_BodyInterface* bodyInterface, JPH_Body* body, [NativeTypeName("JPH_BodyID")] uint bodyID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Body* JPH_BodyInterface_UnassignBodyID(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Body* JPH_BodyInterface_CreateSoftBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("const JPH_SoftBodyCreationSettings *")] JPH_SoftBodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Body* JPH_BodyInterface_CreateSoftBodyWithID(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, [NativeTypeName("const JPH_SoftBodyCreationSettings *")] JPH_SoftBodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Body* JPH_BodyInterface_CreateSoftBodyWithoutID(JPH_BodyInterface* bodyInterface, [NativeTypeName("const JPH_SoftBodyCreationSettings *")] JPH_SoftBodyCreationSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_BodyInterface_CreateAndAddSoftBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("const JPH_SoftBodyCreationSettings *")] JPH_SoftBodyCreationSettings* settings, JPH_Activation activationMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_AddBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, JPH_Activation activationMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_RemoveBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_RemoveAndDestroyBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyInterface_IsActive(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyInterface_IsAdded(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyType JPH_BodyInterface_GetBodyType(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetLinearVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_GetLinearVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_GetCenterOfMassPosition(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, [NativeTypeName("JPH_RVec3 *")] rvec3* position); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MotionType JPH_BodyInterface_GetMotionType(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetMotionType(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, JPH_MotionType motionType, JPH_Activation activationMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BodyInterface_GetRestitution([NativeTypeName("const JPH_BodyInterface *")] JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetRestitution(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, float restitution); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BodyInterface_GetFriction([NativeTypeName("const JPH_BodyInterface *")] JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetFriction(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, float friction); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetPosition(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* position, JPH_Activation activationMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_GetPosition(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetRotation(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Quat *")] quaternion* rotation, JPH_Activation activationMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_GetRotation(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetPositionAndRotation(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, JPH_Activation activationMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetPositionAndRotationWhenChanged(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, JPH_Activation activationMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_GetPositionAndRotation(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Quat *")] quaternion* rotation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetPositionRotationAndVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_GetCollisionGroup(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, JPH_CollisionGroup* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetCollisionGroup(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("const JPH_CollisionGroup *")] JPH_CollisionGroup* group); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_Shape *")] + public static extern JPH_Shape* JPH_BodyInterface_GetShape(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetShape(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("bool")] byte updateMassProperties, JPH_Activation activationMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_NotifyShapeChanged(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* previousCenterOfMass, [NativeTypeName("bool")] byte updateMassProperties, JPH_Activation activationMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_ActivateBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_DeactivateBody(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_ObjectLayer")] + public static extern uint JPH_BodyInterface_GetObjectLayer(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetObjectLayer(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_ObjectLayer")] uint layer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_GetWorldTransform(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_GetCenterOfMassTransform(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_MoveKinematic(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* targetPosition, [NativeTypeName("JPH_Quat *")] quaternion* targetRotation, float deltaTime); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyInterface_ApplyBuoyancyImpulse(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("const JPH_RVec3 *")] rvec3* surfacePosition, [NativeTypeName("const JPH_Vec3 *")] float3* surfaceNormal, float buoyancy, float linearDrag, float angularDrag, [NativeTypeName("const JPH_Vec3 *")] float3* fluidVelocity, [NativeTypeName("const JPH_Vec3 *")] float3* gravity, float deltaTime); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetLinearAndAngularVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_GetLinearAndAngularVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_AddLinearVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_AddLinearAndAngularVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetAngularVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_GetAngularVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_GetPointVelocity(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_RVec3 *")] rvec3* point, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_AddForce(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* force); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_AddForce2(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* force, [NativeTypeName("JPH_RVec3 *")] rvec3* point); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_AddTorque(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* torque); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_AddForceAndTorque(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* force, [NativeTypeName("JPH_Vec3 *")] float3* torque); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_AddImpulse(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* impulse); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_AddImpulse2(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* impulse, [NativeTypeName("JPH_RVec3 *")] rvec3* point); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_AddAngularImpulse(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Vec3 *")] float3* angularImpulse); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetMotionQuality(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, JPH_MotionQuality quality); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MotionQuality JPH_BodyInterface_GetMotionQuality(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_GetInverseInertia(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetGravityFactor(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_BodyInterface_GetGravityFactor(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetUseManifoldReduction(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BodyInterface_GetUseManifoldReduction(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_SetUserData(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("uint64_t")] ulong inUserData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_BodyInterface_GetUserData(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_PhysicsMaterial *")] + public static extern JPH_PhysicsMaterial* JPH_BodyInterface_GetMaterial(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId, [NativeTypeName("JPH_SubShapeID")] uint subShapeID); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyInterface_InvalidateContactCache(JPH_BodyInterface* bodyInterface, [NativeTypeName("JPH_BodyID")] uint bodyId); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyLockInterface_LockRead([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, JPH_BodyLockRead* outLock); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyLockInterface_UnlockRead([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, JPH_BodyLockRead* ioLock); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyLockInterface_LockWrite([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, [NativeTypeName("JPH_BodyID")] uint bodyID, JPH_BodyLockWrite* outLock); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyLockInterface_UnlockWrite([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, JPH_BodyLockWrite* ioLock); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyLockMultiRead* JPH_BodyLockInterface_LockMultiRead([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, [NativeTypeName("const JPH_BodyID *")] uint* bodyIDs, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyLockMultiRead_Destroy(JPH_BodyLockMultiRead* ioLock); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_Body *")] + public static extern JPH_Body* JPH_BodyLockMultiRead_GetBody(JPH_BodyLockMultiRead* ioLock, [NativeTypeName("uint32_t")] uint bodyIndex); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyLockMultiWrite* JPH_BodyLockInterface_LockMultiWrite([NativeTypeName("const JPH_BodyLockInterface *")] JPH_BodyLockInterface* lockInterface, [NativeTypeName("const JPH_BodyID *")] uint* bodyIDs, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyLockMultiWrite_Destroy(JPH_BodyLockMultiWrite* ioLock); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Body* JPH_BodyLockMultiWrite_GetBody(JPH_BodyLockMultiWrite* ioLock, [NativeTypeName("uint32_t")] uint bodyIndex); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_AllowedDOFs JPH_MotionProperties_GetAllowedDOFs([NativeTypeName("const JPH_MotionProperties *")] JPH_MotionProperties* properties); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotionProperties_SetLinearDamping(JPH_MotionProperties* properties, float damping); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotionProperties_GetLinearDamping([NativeTypeName("const JPH_MotionProperties *")] JPH_MotionProperties* properties); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotionProperties_SetAngularDamping(JPH_MotionProperties* properties, float damping); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotionProperties_GetAngularDamping([NativeTypeName("const JPH_MotionProperties *")] JPH_MotionProperties* properties); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotionProperties_SetMassProperties(JPH_MotionProperties* properties, JPH_AllowedDOFs allowedDOFs, [NativeTypeName("const JPH_MassProperties *")] JPH_MassProperties* massProperties); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotionProperties_GetInverseMassUnchecked(JPH_MotionProperties* properties); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotionProperties_SetInverseMass(JPH_MotionProperties* properties, float inverseMass); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotionProperties_GetInverseInertiaDiagonal(JPH_MotionProperties* properties, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotionProperties_GetInertiaRotation(JPH_MotionProperties* properties, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotionProperties_SetInverseInertia(JPH_MotionProperties* properties, [NativeTypeName("JPH_Vec3 *")] float3* diagonal, [NativeTypeName("JPH_Quat *")] quaternion* rot); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotionProperties_ScaleToMass(JPH_MotionProperties* properties, float mass); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RayCast_GetPointOnRay([NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, float fraction, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RRayCast_GetPointOnRay([NativeTypeName("const JPH_RVec3 *")] rvec3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, float fraction, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MassProperties_DecomposePrincipalMomentsOfInertia(JPH_MassProperties* properties, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* rotation, [NativeTypeName("JPH_Vec3 *")] float3* diagonal); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MassProperties_ScaleToMass(JPH_MassProperties* properties, float mass); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MassProperties_GetEquivalentSolidBoxSize(float mass, [NativeTypeName("const JPH_Vec3 *")] float3* inertiaDiagonal, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CollideShapeSettings_Init(JPH_CollideShapeSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ShapeCastSettings_Init(JPH_ShapeCastSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BroadPhaseQuery_CastRay([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("JPH_RayCastBodyCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BroadPhaseQuery_CastRay2([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_Vec3 *")] float3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_RayCastBodyResultCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BroadPhaseQuery_CollideAABox([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_CollideShapeBodyCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BroadPhaseQuery_CollideSphere([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_Vec3 *")] float3* center, float radius, [NativeTypeName("JPH_CollideShapeBodyCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_BroadPhaseQuery_CollidePoint([NativeTypeName("const JPH_BroadPhaseQuery *")] JPH_BroadPhaseQuery* query, [NativeTypeName("const JPH_Vec3 *")] float3* point, [NativeTypeName("JPH_CollideShapeBodyCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CastRay([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, JPH_RayCastResult* hit, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CastRay2([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_RayCastSettings *")] JPH_RayCastSettings* rayCastSettings, [NativeTypeName("JPH_CastRayCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CastRay3([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* origin, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_RayCastSettings *")] JPH_RayCastSettings* rayCastSettings, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_CastRayResultCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CollidePoint([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* point, [NativeTypeName("JPH_CollidePointCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CollidePoint2([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_RVec3 *")] rvec3* point, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_CollidePointResultCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CollideShape([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* centerOfMassTransform, [NativeTypeName("const JPH_CollideShapeSettings *")] JPH_CollideShapeSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* baseOffset, [NativeTypeName("JPH_CollideShapeCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CollideShape2([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_Vec3 *")] float3* scale, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* centerOfMassTransform, [NativeTypeName("const JPH_CollideShapeSettings *")] JPH_CollideShapeSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* baseOffset, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_CollideShapeResultCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CastShape([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* worldTransform, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_ShapeCastSettings *")] JPH_ShapeCastSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* baseOffset, [NativeTypeName("JPH_CastShapeCollectorCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_NarrowPhaseQuery_CastShape2([NativeTypeName("const JPH_NarrowPhaseQuery *")] JPH_NarrowPhaseQuery* query, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* worldTransform, [NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_ShapeCastSettings *")] JPH_ShapeCastSettings* settings, [NativeTypeName("JPH_RVec3 *")] rvec3* baseOffset, JPH_CollisionCollectorType collectorType, [NativeTypeName("JPH_CastShapeResultCallback *")] IntPtr callback, void* userData, JPH_BroadPhaseLayerFilter* broadPhaseLayerFilter, JPH_ObjectLayerFilter* objectLayerFilter, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_Body_GetID([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyType JPH_Body_GetBodyType([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsRigidBody([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsSoftBody([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsActive([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsStatic([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsKinematic([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsDynamic([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_CanBeKinematicOrDynamic([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetIsSensor(JPH_Body* body, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsSensor([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetCollideKinematicVsNonDynamic(JPH_Body* body, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetCollideKinematicVsNonDynamic([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetUseManifoldReduction(JPH_Body* body, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetUseManifoldReduction([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetUseManifoldReductionWithBody([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("const JPH_Body *")] JPH_Body* other); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetApplyGyroscopicForce(JPH_Body* body, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetApplyGyroscopicForce([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetEnhancedInternalEdgeRemoval(JPH_Body* body, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetEnhancedInternalEdgeRemoval([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetEnhancedInternalEdgeRemovalWithBody([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("const JPH_Body *")] JPH_Body* other); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MotionType JPH_Body_GetMotionType([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetMotionType(JPH_Body* body, JPH_MotionType motionType); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_BroadPhaseLayer")] + public static extern byte JPH_Body_GetBroadPhaseLayer([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_ObjectLayer")] + public static extern uint JPH_Body_GetObjectLayer([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetCollisionGroup([NativeTypeName("const JPH_Body *")] JPH_Body* body, JPH_CollisionGroup* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetCollisionGroup(JPH_Body* body, [NativeTypeName("const JPH_CollisionGroup *")] JPH_CollisionGroup* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_GetAllowSleeping(JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetAllowSleeping(JPH_Body* body, [NativeTypeName("bool")] byte allowSleeping); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_ResetSleepTimer(JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Body_GetFriction([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetFriction(JPH_Body* body, float friction); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Body_GetRestitution([NativeTypeName("const JPH_Body *")] JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetRestitution(JPH_Body* body, float restitution); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetLinearVelocity(JPH_Body* body, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetLinearVelocity(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetLinearVelocityClamped(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetAngularVelocity(JPH_Body* body, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetAngularVelocity(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetAngularVelocityClamped(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetPointVelocityCOM(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* pointRelativeToCOM, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetPointVelocity(JPH_Body* body, [NativeTypeName("const JPH_RVec3 *")] rvec3* point, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_AddForce(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* force); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_AddForceAtPosition(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* force, [NativeTypeName("const JPH_RVec3 *")] rvec3* position); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_AddTorque(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* force); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetAccumulatedForce(JPH_Body* body, [NativeTypeName("JPH_Vec3 *")] float3* force); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetAccumulatedTorque(JPH_Body* body, [NativeTypeName("JPH_Vec3 *")] float3* force); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_ResetForce(JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_ResetTorque(JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_ResetMotion(JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetInverseInertia(JPH_Body* body, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_AddImpulse(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* impulse); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_AddImpulseAtPosition(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* impulse, [NativeTypeName("const JPH_RVec3 *")] rvec3* position); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_AddAngularImpulse(JPH_Body* body, [NativeTypeName("const JPH_Vec3 *")] float3* angularImpulse); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_MoveKinematic(JPH_Body* body, [NativeTypeName("JPH_RVec3 *")] rvec3* targetPosition, [NativeTypeName("JPH_Quat *")] quaternion* targetRotation, float deltaTime); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_ApplyBuoyancyImpulse(JPH_Body* body, [NativeTypeName("const JPH_RVec3 *")] rvec3* surfacePosition, [NativeTypeName("const JPH_Vec3 *")] float3* surfaceNormal, float buoyancy, float linearDrag, float angularDrag, [NativeTypeName("const JPH_Vec3 *")] float3* fluidVelocity, [NativeTypeName("const JPH_Vec3 *")] float3* gravity, float deltaTime); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsInBroadPhase(JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Body_IsCollisionCacheInvalid(JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_Shape *")] + public static extern JPH_Shape* JPH_Body_GetShape(JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetPosition([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetRotation([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_Quat *")] quaternion* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetWorldTransform([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetCenterOfMassPosition([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetCenterOfMassTransform([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetInverseCenterOfMassTransform([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetWorldSpaceBounds([NativeTypeName("const JPH_Body *")] JPH_Body* body, JPH_AABox* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_GetWorldSpaceSurfaceNormal([NativeTypeName("const JPH_Body *")] JPH_Body* body, [NativeTypeName("JPH_SubShapeID")] uint subShapeID, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Vec3 *")] float3* normal); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MotionProperties* JPH_Body_GetMotionProperties(JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MotionProperties* JPH_Body_GetMotionPropertiesUnchecked(JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Body_SetUserData(JPH_Body* body, [NativeTypeName("uint64_t")] ulong userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_Body_GetUserData(JPH_Body* body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Body* JPH_Body_GetFixedToWorldBody(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BroadPhaseLayerFilter_SetProcs([NativeTypeName("const JPH_BroadPhaseLayerFilter_Procs *")] JPH_BroadPhaseLayerFilter_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BroadPhaseLayerFilter* JPH_BroadPhaseLayerFilter_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BroadPhaseLayerFilter_Destroy(JPH_BroadPhaseLayerFilter* filter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ObjectLayerFilter_SetProcs([NativeTypeName("const JPH_ObjectLayerFilter_Procs *")] JPH_ObjectLayerFilter_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ObjectLayerFilter* JPH_ObjectLayerFilter_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ObjectLayerFilter_Destroy(JPH_ObjectLayerFilter* filter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyFilter_SetProcs([NativeTypeName("const JPH_BodyFilter_Procs *")] JPH_BodyFilter_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyFilter* JPH_BodyFilter_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyFilter_Destroy(JPH_BodyFilter* filter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ShapeFilter_SetProcs([NativeTypeName("const JPH_ShapeFilter_Procs *")] JPH_ShapeFilter_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ShapeFilter* JPH_ShapeFilter_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ShapeFilter_Destroy(JPH_ShapeFilter* filter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_ShapeFilter_GetBodyID2(JPH_ShapeFilter* filter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ShapeFilter_SetBodyID2(JPH_ShapeFilter* filter, [NativeTypeName("JPH_BodyID")] uint id); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SimShapeFilter_SetProcs([NativeTypeName("const JPH_SimShapeFilter_Procs *")] JPH_SimShapeFilter_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_SimShapeFilter* JPH_SimShapeFilter_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_SimShapeFilter_Destroy(JPH_SimShapeFilter* filter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ContactListener_SetProcs([NativeTypeName("const JPH_ContactListener_Procs *")] JPH_ContactListener_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_ContactListener* JPH_ContactListener_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ContactListener_Destroy(JPH_ContactListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyActivationListener_SetProcs([NativeTypeName("const JPH_BodyActivationListener_Procs *")] JPH_BodyActivationListener_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyActivationListener* JPH_BodyActivationListener_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyActivationListener_Destroy(JPH_BodyActivationListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyDrawFilter_SetProcs([NativeTypeName("const JPH_BodyDrawFilter_Procs *")] JPH_BodyDrawFilter_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_BodyDrawFilter* JPH_BodyDrawFilter_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_BodyDrawFilter_Destroy(JPH_BodyDrawFilter* filter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ContactManifold_GetWorldSpaceNormal([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_ContactManifold_GetPenetrationDepth([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_SubShapeID")] + public static extern uint JPH_ContactManifold_GetSubShapeID1([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_SubShapeID")] + public static extern uint JPH_ContactManifold_GetSubShapeID2([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_ContactManifold_GetPointCount([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ContactManifold_GetWorldSpaceContactPointOn1([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_ContactManifold_GetWorldSpaceContactPointOn2([NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterBase_Destroy(JPH_CharacterBase* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CharacterBase_GetCosMaxSlopeAngle(JPH_CharacterBase* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterBase_SetMaxSlopeAngle(JPH_CharacterBase* character, float maxSlopeAngle); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterBase_GetUp(JPH_CharacterBase* character, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterBase_SetUp(JPH_CharacterBase* character, [NativeTypeName("const JPH_Vec3 *")] float3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterBase_IsSlopeTooSteep(JPH_CharacterBase* character, [NativeTypeName("const JPH_Vec3 *")] float3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_Shape *")] + public static extern JPH_Shape* JPH_CharacterBase_GetShape(JPH_CharacterBase* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_GroundState JPH_CharacterBase_GetGroundState(JPH_CharacterBase* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterBase_IsSupported(JPH_CharacterBase* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterBase_GetGroundPosition(JPH_CharacterBase* character, [NativeTypeName("JPH_RVec3 *")] rvec3* position); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterBase_GetGroundNormal(JPH_CharacterBase* character, [NativeTypeName("JPH_Vec3 *")] float3* normal); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterBase_GetGroundVelocity(JPH_CharacterBase* character, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_PhysicsMaterial *")] + public static extern JPH_PhysicsMaterial* JPH_CharacterBase_GetGroundMaterial(JPH_CharacterBase* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_CharacterBase_GetGroundBodyId(JPH_CharacterBase* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_SubShapeID")] + public static extern uint JPH_CharacterBase_GetGroundSubShapeId(JPH_CharacterBase* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_CharacterBase_GetGroundUserData(JPH_CharacterBase* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterSettings_Init(JPH_CharacterSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Character* JPH_Character_Create([NativeTypeName("const JPH_CharacterSettings *")] JPH_CharacterSettings* settings, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("uint64_t")] ulong userData, JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_AddToPhysicsSystem(JPH_Character* character, JPH_Activation activationMode, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_RemoveFromPhysicsSystem(JPH_Character* character, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_Activate(JPH_Character* character, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_PostSimulation(JPH_Character* character, float maxSeparationDistance, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_SetLinearAndAngularVelocity(JPH_Character* character, [NativeTypeName("JPH_Vec3 *")] float3* linearVelocity, [NativeTypeName("JPH_Vec3 *")] float3* angularVelocity, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_GetLinearVelocity(JPH_Character* character, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_SetLinearVelocity(JPH_Character* character, [NativeTypeName("const JPH_Vec3 *")] float3* value, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_AddLinearVelocity(JPH_Character* character, [NativeTypeName("const JPH_Vec3 *")] float3* value, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_AddImpulse(JPH_Character* character, [NativeTypeName("const JPH_Vec3 *")] float3* value, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_Character_GetBodyID([NativeTypeName("const JPH_Character *")] JPH_Character* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_GetPositionAndRotation(JPH_Character* character, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_SetPositionAndRotation(JPH_Character* character, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, JPH_Activation activationMode, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_GetPosition(JPH_Character* character, [NativeTypeName("JPH_RVec3 *")] rvec3* position, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_SetPosition(JPH_Character* character, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, JPH_Activation activationMode, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_GetRotation(JPH_Character* character, [NativeTypeName("JPH_Quat *")] quaternion* rotation, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_SetRotation(JPH_Character* character, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, JPH_Activation activationMode, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_GetCenterOfMassPosition(JPH_Character* character, [NativeTypeName("JPH_RVec3 *")] rvec3* result, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_GetWorldTransform(JPH_Character* character, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_ObjectLayer")] + public static extern uint JPH_Character_GetLayer([NativeTypeName("const JPH_Character *")] JPH_Character* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_SetLayer(JPH_Character* character, [NativeTypeName("JPH_ObjectLayer")] uint value, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Character_SetShape(JPH_Character* character, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, float maxPenetrationDepth, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtualSettings_Init(JPH_CharacterVirtualSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CharacterVirtual* JPH_CharacterVirtual_Create([NativeTypeName("const JPH_CharacterVirtualSettings *")] JPH_CharacterVirtualSettings* settings, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("const JPH_Quat *")] quaternion* rotation, [NativeTypeName("uint64_t")] ulong userData, JPH_PhysicsSystem* system); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_CharacterID")] + public static extern uint JPH_CharacterVirtual_GetID([NativeTypeName("const JPH_CharacterVirtual *")] JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetListener(JPH_CharacterVirtual* character, JPH_CharacterContactListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetCharacterVsCharacterCollision(JPH_CharacterVirtual* character, JPH_CharacterVsCharacterCollision* characterVsCharacterCollision); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_GetLinearVelocity(JPH_CharacterVirtual* character, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetLinearVelocity(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_GetPosition(JPH_CharacterVirtual* character, [NativeTypeName("JPH_RVec3 *")] rvec3* position); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetPosition(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_RVec3 *")] rvec3* position); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_GetRotation(JPH_CharacterVirtual* character, [NativeTypeName("JPH_Quat *")] quaternion* rotation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetRotation(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Quat *")] quaternion* rotation); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_GetWorldTransform(JPH_CharacterVirtual* character, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_GetCenterOfMassTransform(JPH_CharacterVirtual* character, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CharacterVirtual_GetMass(JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetMass(JPH_CharacterVirtual* character, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CharacterVirtual_GetMaxStrength(JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetMaxStrength(JPH_CharacterVirtual* character, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CharacterVirtual_GetPenetrationRecoverySpeed(JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetPenetrationRecoverySpeed(JPH_CharacterVirtual* character, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterVirtual_GetEnhancedInternalEdgeRemoval(JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetEnhancedInternalEdgeRemoval(JPH_CharacterVirtual* character, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CharacterVirtual_GetCharacterPadding(JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_CharacterVirtual_GetMaxNumHits(JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetMaxNumHits(JPH_CharacterVirtual* character, [NativeTypeName("uint32_t")] uint value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_CharacterVirtual_GetHitReductionCosMaxAngle(JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetHitReductionCosMaxAngle(JPH_CharacterVirtual* character, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterVirtual_GetMaxHitsExceeded(JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_GetShapeOffset(JPH_CharacterVirtual* character, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetShapeOffset(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint64_t")] + public static extern ulong JPH_CharacterVirtual_GetUserData([NativeTypeName("const JPH_CharacterVirtual *")] JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetUserData(JPH_CharacterVirtual* character, [NativeTypeName("uint64_t")] ulong value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_CharacterVirtual_GetInnerBodyID([NativeTypeName("const JPH_CharacterVirtual *")] JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_CancelVelocityTowardsSteepSlopes(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* desiredVelocity, [NativeTypeName("JPH_Vec3 *")] float3* velocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_StartTrackingContactChanges(JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_FinishTrackingContactChanges(JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_Update(JPH_CharacterVirtual* character, float deltaTime, [NativeTypeName("JPH_ObjectLayer")] uint layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_ExtendedUpdate(JPH_CharacterVirtual* character, float deltaTime, [NativeTypeName("const JPH_ExtendedUpdateSettings *")] JPH_ExtendedUpdateSettings* settings, [NativeTypeName("JPH_ObjectLayer")] uint layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_RefreshContacts(JPH_CharacterVirtual* character, [NativeTypeName("JPH_ObjectLayer")] uint layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterVirtual_CanWalkStairs(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* linearVelocity); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterVirtual_WalkStairs(JPH_CharacterVirtual* character, float deltaTime, [NativeTypeName("const JPH_Vec3 *")] float3* stepUp, [NativeTypeName("const JPH_Vec3 *")] float3* stepForward, [NativeTypeName("const JPH_Vec3 *")] float3* stepForwardTest, [NativeTypeName("const JPH_Vec3 *")] float3* stepDownExtra, [NativeTypeName("JPH_ObjectLayer")] uint layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterVirtual_StickToFloor(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Vec3 *")] float3* stepDown, [NativeTypeName("JPH_ObjectLayer")] uint layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_UpdateGroundVelocity(JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterVirtual_SetShape(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape, float maxPenetrationDepth, [NativeTypeName("JPH_ObjectLayer")] uint layer, JPH_PhysicsSystem* system, [NativeTypeName("const JPH_BodyFilter *")] JPH_BodyFilter* bodyFilter, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_SetInnerBodyShape(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_CharacterVirtual_GetNumActiveContacts(JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVirtual_GetActiveContact(JPH_CharacterVirtual* character, [NativeTypeName("uint32_t")] uint index, JPH_CharacterVirtualContact* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterVirtual_HasCollidedWithBody(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_BodyID")] uint body); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterVirtual_HasCollidedWith(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_CharacterID")] uint other); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CharacterVirtual_HasCollidedWithCharacter(JPH_CharacterVirtual* character, [NativeTypeName("const JPH_CharacterVirtual *")] JPH_CharacterVirtual* other); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterContactListener_SetProcs([NativeTypeName("const JPH_CharacterContactListener_Procs *")] JPH_CharacterContactListener_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CharacterContactListener* JPH_CharacterContactListener_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterContactListener_Destroy(JPH_CharacterContactListener* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVsCharacterCollision_SetProcs([NativeTypeName("const JPH_CharacterVsCharacterCollision_Procs *")] JPH_CharacterVsCharacterCollision_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CharacterVsCharacterCollision* JPH_CharacterVsCharacterCollision_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_CharacterVsCharacterCollision* JPH_CharacterVsCharacterCollision_CreateSimple(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVsCharacterCollisionSimple_AddCharacter(JPH_CharacterVsCharacterCollision* characterVsCharacter, JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVsCharacterCollisionSimple_RemoveCharacter(JPH_CharacterVsCharacterCollision* characterVsCharacter, JPH_CharacterVirtual* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_CharacterVsCharacterCollision_Destroy(JPH_CharacterVsCharacterCollision* listener); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CollisionDispatch_CollideShapeVsShape([NativeTypeName("const JPH_Shape *")] JPH_Shape* shape1, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape2, [NativeTypeName("const JPH_Vec3 *")] float3* scale1, [NativeTypeName("const JPH_Vec3 *")] float3* scale2, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassTransform1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassTransform2, [NativeTypeName("const JPH_CollideShapeSettings *")] JPH_CollideShapeSettings* collideShapeSettings, [NativeTypeName("JPH_CollideShapeCollectorCallback *")] IntPtr callback, void* userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CollisionDispatch_CastShapeVsShapeLocalSpace([NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape1, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape2, [NativeTypeName("const JPH_Vec3 *")] float3* scale1InShape2LocalSpace, [NativeTypeName("const JPH_Vec3 *")] float3* scale2, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* centerOfMassTransform1InShape2LocalSpace, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* centerOfMassWorldTransform2, [NativeTypeName("const JPH_ShapeCastSettings *")] JPH_ShapeCastSettings* shapeCastSettings, [NativeTypeName("JPH_CastShapeCollectorCallback *")] IntPtr callback, void* userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_CollisionDispatch_CastShapeVsShapeWorldSpace([NativeTypeName("const JPH_Vec3 *")] float3* direction, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape1, [NativeTypeName("const JPH_Shape *")] JPH_Shape* shape2, [NativeTypeName("const JPH_Vec3 *")] float3* scale1, [NativeTypeName("const JPH_Vec3 *")] float3* inScale2, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassWorldTransform1, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* centerOfMassWorldTransform2, [NativeTypeName("const JPH_ShapeCastSettings *")] JPH_ShapeCastSettings* shapeCastSettings, [NativeTypeName("JPH_CastShapeCollectorCallback *")] IntPtr callback, void* userData, [NativeTypeName("const JPH_ShapeFilter *")] JPH_ShapeFilter* shapeFilter); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_SetProcs([NativeTypeName("const JPH_DebugRenderer_Procs *")] JPH_DebugRenderer_Procs* procs); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_DebugRenderer* JPH_DebugRenderer_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_Destroy(JPH_DebugRenderer* renderer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_NextFrame(JPH_DebugRenderer* renderer); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_SetCameraPos(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* position); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawLine(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* from, [NativeTypeName("const JPH_RVec3 *")] rvec3* to, [NativeTypeName("JPH_Color")] uint color); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawWireBox(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_Color")] uint color); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawWireBox2(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_Color")] uint color); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawMarker(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* position, [NativeTypeName("JPH_Color")] uint color, float size); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawArrow(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* from, [NativeTypeName("const JPH_RVec3 *")] rvec3* to, [NativeTypeName("JPH_Color")] uint color, float size); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawCoordinateSystem(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float size); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawPlane(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* point, [NativeTypeName("const JPH_Vec3 *")] float3* normal, [NativeTypeName("JPH_Color")] uint color, float size); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawWireTriangle(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* v1, [NativeTypeName("const JPH_RVec3 *")] rvec3* v2, [NativeTypeName("const JPH_RVec3 *")] rvec3* v3, [NativeTypeName("JPH_Color")] uint color); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawWireSphere(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* center, float radius, [NativeTypeName("JPH_Color")] uint color, int level); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawWireUnitSphere(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, [NativeTypeName("JPH_Color")] uint color, int level); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawTriangle(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* v1, [NativeTypeName("const JPH_RVec3 *")] rvec3* v2, [NativeTypeName("const JPH_RVec3 *")] rvec3* v3, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawBox(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawBox2(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, [NativeTypeName("const JPH_AABox *")] JPH_AABox* box, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawSphere(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* center, float radius, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawUnitSphere(JPH_DebugRenderer* renderer, [NativeTypeName("JPH_RMatrix4x4")] rmatrix4x4 matrix, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawCapsule(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float halfHeightOfCylinder, float radius, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawCylinder(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float halfHeight, float radius, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawOpenCone(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* top, [NativeTypeName("const JPH_Vec3 *")] float3* axis, [NativeTypeName("const JPH_Vec3 *")] float3* perpendicular, float halfAngle, float length, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawSwingConeLimits(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float swingYHalfAngle, float swingZHalfAngle, float edgeLength, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawSwingPyramidLimits(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* matrix, float minSwingYAngle, float maxSwingYAngle, float minSwingZAngle, float maxSwingZAngle, float edgeLength, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawPie(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RVec3 *")] rvec3* center, float radius, [NativeTypeName("const JPH_Vec3 *")] float3* normal, [NativeTypeName("const JPH_Vec3 *")] float3* axis, float minAngle, float maxAngle, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_DebugRenderer_DrawTaperedCylinder(JPH_DebugRenderer* renderer, [NativeTypeName("const JPH_RMatrix4x4 *")] rmatrix4x4* inMatrix, float top, float bottom, float topRadius, float bottomRadius, [NativeTypeName("JPH_Color")] uint color, JPH_DebugRenderer_CastShadow castShadow, JPH_DebugRenderer_DrawMode drawMode); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Skeleton* JPH_Skeleton_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Skeleton_Destroy(JPH_Skeleton* skeleton); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Skeleton_AddJoint(JPH_Skeleton* skeleton, [NativeTypeName("const char *")] sbyte* name); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Skeleton_AddJoint2(JPH_Skeleton* skeleton, [NativeTypeName("const char *")] sbyte* name, int parentIndex); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_Skeleton_AddJoint3(JPH_Skeleton* skeleton, [NativeTypeName("const char *")] sbyte* name, [NativeTypeName("const char *")] sbyte* parentName); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern int JPH_Skeleton_GetJointCount([NativeTypeName("const JPH_Skeleton *")] JPH_Skeleton* skeleton); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Skeleton_GetJoint([NativeTypeName("const JPH_Skeleton *")] JPH_Skeleton* skeleton, int index, JPH_SkeletonJoint* joint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern int JPH_Skeleton_GetJointIndex([NativeTypeName("const JPH_Skeleton *")] JPH_Skeleton* skeleton, [NativeTypeName("const char *")] sbyte* name); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Skeleton_CalculateParentJointIndices(JPH_Skeleton* skeleton); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Skeleton_AreJointsCorrectlyOrdered([NativeTypeName("const JPH_Skeleton *")] JPH_Skeleton* skeleton); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_RagdollSettings* JPH_RagdollSettings_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RagdollSettings_Destroy(JPH_RagdollSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_Skeleton *")] + public static extern JPH_Skeleton* JPH_RagdollSettings_GetSkeleton([NativeTypeName("const JPH_RagdollSettings *")] JPH_RagdollSettings* character); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RagdollSettings_SetSkeleton(JPH_RagdollSettings* character, JPH_Skeleton* skeleton); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_RagdollSettings_Stabilize(JPH_RagdollSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RagdollSettings_DisableParentChildCollisions(JPH_RagdollSettings* settings, [NativeTypeName("const JPH_Matrix4x4 *")] float4x4* jointMatrices, float minSeparationDistance); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RagdollSettings_CalculateBodyIndexToConstraintIndex(JPH_RagdollSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern int JPH_RagdollSettings_GetConstraintIndexForBodyIndex(JPH_RagdollSettings* settings, int bodyIndex); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_RagdollSettings_CalculateConstraintIndexToBodyIdxPair(JPH_RagdollSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Ragdoll* JPH_RagdollSettings_CreateRagdoll(JPH_RagdollSettings* settings, JPH_PhysicsSystem* system, [NativeTypeName("JPH_CollisionGroupID")] uint collisionGroup, [NativeTypeName("uint64_t")] ulong userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Ragdoll_Destroy(JPH_Ragdoll* ragdoll); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Ragdoll_AddToPhysicsSystem(JPH_Ragdoll* ragdoll, JPH_Activation activationMode, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Ragdoll_RemoveFromPhysicsSystem(JPH_Ragdoll* ragdoll, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Ragdoll_Activate(JPH_Ragdoll* ragdoll, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Ragdoll_IsActive([NativeTypeName("const JPH_Ragdoll *")] JPH_Ragdoll* ragdoll, [NativeTypeName("bool")] byte lockBodies); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Ragdoll_ResetWarmStart(JPH_Ragdoll* ragdoll); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_EstimateCollisionResponse([NativeTypeName("const JPH_Body *")] JPH_Body* body1, [NativeTypeName("const JPH_Body *")] JPH_Body* body2, [NativeTypeName("const JPH_ContactManifold *")] JPH_ContactManifold* manifold, float combinedFriction, float combinedRestitution, float minVelocityForRestitution, [NativeTypeName("uint32_t")] uint numIterations, JPH_CollisionEstimationResult* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleConstraintSettings_Init(JPH_VehicleConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_VehicleConstraint* JPH_VehicleConstraint_Create(JPH_Body* body, [NativeTypeName("const JPH_VehicleConstraintSettings *")] JPH_VehicleConstraintSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_PhysicsStepListener* JPH_VehicleConstraint_AsPhysicsStepListener(JPH_VehicleConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleConstraint_SetMaxPitchRollAngle(JPH_VehicleConstraint* constraint, float maxPitchRollAngle); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleConstraint_SetVehicleCollisionTester(JPH_VehicleConstraint* constraint, [NativeTypeName("const JPH_VehicleCollisionTester *")] JPH_VehicleCollisionTester* tester); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleConstraint_OverrideGravity(JPH_VehicleConstraint* constraint, [NativeTypeName("const JPH_Vec3 *")] float3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_VehicleConstraint_IsGravityOverridden([NativeTypeName("const JPH_VehicleConstraint *")] JPH_VehicleConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleConstraint_GetGravityOverride([NativeTypeName("const JPH_VehicleConstraint *")] JPH_VehicleConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleConstraint_ResetGravityOverride(JPH_VehicleConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleConstraint_GetLocalForward([NativeTypeName("const JPH_VehicleConstraint *")] JPH_VehicleConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleConstraint_GetLocalUp([NativeTypeName("const JPH_VehicleConstraint *")] JPH_VehicleConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleConstraint_GetWorldUp([NativeTypeName("const JPH_VehicleConstraint *")] JPH_VehicleConstraint* constraint, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_Body *")] + public static extern JPH_Body* JPH_VehicleConstraint_GetVehicleBody([NativeTypeName("const JPH_VehicleConstraint *")] JPH_VehicleConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_VehicleController* JPH_VehicleConstraint_GetController(JPH_VehicleConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_VehicleConstraint_GetWheelsCount(JPH_VehicleConstraint* constraint); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Wheel* JPH_VehicleConstraint_GetWheel(JPH_VehicleConstraint* constraint, [NativeTypeName("uint32_t")] uint index); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleConstraint_GetWheelLocalBasis(JPH_VehicleConstraint* constraint, [NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel, [NativeTypeName("JPH_Vec3 *")] float3* outForward, [NativeTypeName("JPH_Vec3 *")] float3* outUp, [NativeTypeName("JPH_Vec3 *")] float3* outRight); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleConstraint_GetWheelLocalTransform(JPH_VehicleConstraint* constraint, [NativeTypeName("uint32_t")] uint wheelIndex, [NativeTypeName("const JPH_Vec3 *")] float3* wheelRight, [NativeTypeName("const JPH_Vec3 *")] float3* wheelUp, [NativeTypeName("JPH_Matrix4x4 *")] float4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleConstraint_GetWheelWorldTransform(JPH_VehicleConstraint* constraint, [NativeTypeName("uint32_t")] uint wheelIndex, [NativeTypeName("const JPH_Vec3 *")] float3* wheelRight, [NativeTypeName("const JPH_Vec3 *")] float3* wheelUp, [NativeTypeName("JPH_RMatrix4x4 *")] rmatrix4x4* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_WheelSettings* JPH_WheelSettings_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_Destroy(JPH_WheelSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_GetPosition([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetPosition(JPH_WheelSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_GetSuspensionForcePoint([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetSuspensionForcePoint(JPH_WheelSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_GetSuspensionDirection([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetSuspensionDirection(JPH_WheelSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_GetSteeringAxis([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetSteeringAxis(JPH_WheelSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_GetWheelUp([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetWheelUp(JPH_WheelSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_GetWheelForward([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetWheelForward(JPH_WheelSettings* settings, [NativeTypeName("const JPH_Vec3 *")] float3* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheelSettings_GetSuspensionMinLength([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetSuspensionMinLength(JPH_WheelSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheelSettings_GetSuspensionMaxLength([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetSuspensionMaxLength(JPH_WheelSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheelSettings_GetSuspensionPreloadLength([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetSuspensionPreloadLength(JPH_WheelSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_GetSuspensionSpring([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings, JPH_SpringSettings* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetSuspensionSpring(JPH_WheelSettings* settings, JPH_SpringSettings* springSettings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheelSettings_GetRadius([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetRadius(JPH_WheelSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheelSettings_GetWidth([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetWidth(JPH_WheelSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_WheelSettings_GetEnableSuspensionForcePoint([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettings_SetEnableSuspensionForcePoint(JPH_WheelSettings* settings, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_Wheel* JPH_Wheel_Create([NativeTypeName("const JPH_WheelSettings *")] JPH_WheelSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Wheel_Destroy(JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_WheelSettings *")] + public static extern JPH_WheelSettings* JPH_Wheel_GetSettings([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Wheel_GetAngularVelocity([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Wheel_SetAngularVelocity(JPH_Wheel* wheel, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Wheel_GetRotationAngle([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Wheel_SetRotationAngle(JPH_Wheel* wheel, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Wheel_GetSteerAngle([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Wheel_SetSteerAngle(JPH_Wheel* wheel, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Wheel_HasContact([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_BodyID")] + public static extern uint JPH_Wheel_GetContactBodyID([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_SubShapeID")] + public static extern uint JPH_Wheel_GetContactSubShapeID([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Wheel_GetContactPosition([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel, [NativeTypeName("JPH_RVec3 *")] rvec3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Wheel_GetContactPointVelocity([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Wheel_GetContactNormal([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Wheel_GetContactLongitudinal([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_Wheel_GetContactLateral([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel, [NativeTypeName("JPH_Vec3 *")] float3* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Wheel_GetSuspensionLength([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Wheel_GetSuspensionLambda([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Wheel_GetLongitudinalLambda([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_Wheel_GetLateralLambda([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_Wheel_HasHitHardPoint([NativeTypeName("const JPH_Wheel *")] JPH_Wheel* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleAntiRollBar_Init(JPH_VehicleAntiRollBar* antiRollBar); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleEngineSettings_Init(JPH_VehicleEngineSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleDifferentialSettings_Init(JPH_VehicleDifferentialSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_VehicleTransmissionSettings* JPH_VehicleTransmissionSettings_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleTransmissionSettings_Destroy(JPH_VehicleTransmissionSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TransmissionMode JPH_VehicleTransmissionSettings_GetMode([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleTransmissionSettings_SetMode(JPH_VehicleTransmissionSettings* settings, JPH_TransmissionMode value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_VehicleTransmissionSettings_GetGearRatioCount([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_VehicleTransmissionSettings_GetGearRatio([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings, [NativeTypeName("uint32_t")] uint index); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleTransmissionSettings_SetGearRatio(JPH_VehicleTransmissionSettings* settings, [NativeTypeName("uint32_t")] uint index, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const float *")] + public static extern float* JPH_VehicleTransmissionSettings_GetGearRatios([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleTransmissionSettings_SetGearRatios(JPH_VehicleTransmissionSettings* settings, [NativeTypeName("const float *")] float* values, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_VehicleTransmissionSettings_GetReverseGearRatioCount([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_VehicleTransmissionSettings_GetReverseGearRatio([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings, [NativeTypeName("uint32_t")] uint index); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleTransmissionSettings_SetReverseGearRatio(JPH_VehicleTransmissionSettings* settings, [NativeTypeName("uint32_t")] uint index, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const float *")] + public static extern float* JPH_VehicleTransmissionSettings_GetReverseGearRatios([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleTransmissionSettings_SetReverseGearRatios(JPH_VehicleTransmissionSettings* settings, [NativeTypeName("const float *")] float* values, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_VehicleTransmissionSettings_GetSwitchTime([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleTransmissionSettings_SetSwitchTime(JPH_VehicleTransmissionSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_VehicleTransmissionSettings_GetClutchReleaseTime([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleTransmissionSettings_SetClutchReleaseTime(JPH_VehicleTransmissionSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_VehicleTransmissionSettings_GetSwitchLatency([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleTransmissionSettings_SetSwitchLatency(JPH_VehicleTransmissionSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_VehicleTransmissionSettings_GetShiftUpRPM([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleTransmissionSettings_SetShiftUpRPM(JPH_VehicleTransmissionSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_VehicleTransmissionSettings_GetShiftDownRPM([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleTransmissionSettings_SetShiftDownRPM(JPH_VehicleTransmissionSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_VehicleTransmissionSettings_GetClutchStrength([NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleTransmissionSettings_SetClutchStrength(JPH_VehicleTransmissionSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleCollisionTester_Destroy(JPH_VehicleCollisionTester* tester); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("JPH_ObjectLayer")] + public static extern uint JPH_VehicleCollisionTester_GetObjectLayer([NativeTypeName("const JPH_VehicleCollisionTester *")] JPH_VehicleCollisionTester* tester); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleCollisionTester_SetObjectLayer(JPH_VehicleCollisionTester* tester, [NativeTypeName("JPH_ObjectLayer")] uint value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_VehicleCollisionTesterRay* JPH_VehicleCollisionTesterRay_Create([NativeTypeName("JPH_ObjectLayer")] uint layer, [NativeTypeName("const JPH_Vec3 *")] float3* up, float maxSlopeAngle); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_VehicleCollisionTesterCastSphere* JPH_VehicleCollisionTesterCastSphere_Create([NativeTypeName("JPH_ObjectLayer")] uint layer, float radius, [NativeTypeName("const JPH_Vec3 *")] float3* up, float maxSlopeAngle); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_VehicleCollisionTesterCastCylinder* JPH_VehicleCollisionTesterCastCylinder_Create([NativeTypeName("JPH_ObjectLayer")] uint layer, float convexRadiusFraction); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_VehicleControllerSettings_Destroy(JPH_VehicleControllerSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_VehicleConstraint *")] + public static extern JPH_VehicleConstraint* JPH_VehicleController_GetConstraint(JPH_VehicleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_WheelSettingsWV* JPH_WheelSettingsWV_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheelSettingsWV_GetInertia([NativeTypeName("const JPH_WheelSettingsWV *")] JPH_WheelSettingsWV* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettingsWV_SetInertia(JPH_WheelSettingsWV* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheelSettingsWV_GetAngularDamping([NativeTypeName("const JPH_WheelSettingsWV *")] JPH_WheelSettingsWV* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettingsWV_SetAngularDamping(JPH_WheelSettingsWV* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheelSettingsWV_GetMaxSteerAngle([NativeTypeName("const JPH_WheelSettingsWV *")] JPH_WheelSettingsWV* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettingsWV_SetMaxSteerAngle(JPH_WheelSettingsWV* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheelSettingsWV_GetMaxBrakeTorque([NativeTypeName("const JPH_WheelSettingsWV *")] JPH_WheelSettingsWV* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettingsWV_SetMaxBrakeTorque(JPH_WheelSettingsWV* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheelSettingsWV_GetMaxHandBrakeTorque([NativeTypeName("const JPH_WheelSettingsWV *")] JPH_WheelSettingsWV* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettingsWV_SetMaxHandBrakeTorque(JPH_WheelSettingsWV* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_WheelWV* JPH_WheelWV_Create([NativeTypeName("const JPH_WheelSettingsWV *")] JPH_WheelSettingsWV* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_WheelSettingsWV *")] + public static extern JPH_WheelSettingsWV* JPH_WheelWV_GetSettings([NativeTypeName("const JPH_WheelWV *")] JPH_WheelWV* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelWV_ApplyTorque(JPH_WheelWV* wheel, float torque, float deltaTime); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_WheeledVehicleControllerSettings* JPH_WheeledVehicleControllerSettings_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleControllerSettings_GetEngine([NativeTypeName("const JPH_WheeledVehicleControllerSettings *")] JPH_WheeledVehicleControllerSettings* settings, JPH_VehicleEngineSettings* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleControllerSettings_SetEngine(JPH_WheeledVehicleControllerSettings* settings, [NativeTypeName("const JPH_VehicleEngineSettings *")] JPH_VehicleEngineSettings* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_VehicleTransmissionSettings *")] + public static extern JPH_VehicleTransmissionSettings* JPH_WheeledVehicleControllerSettings_GetTransmission([NativeTypeName("const JPH_WheeledVehicleControllerSettings *")] JPH_WheeledVehicleControllerSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleControllerSettings_SetTransmission(JPH_WheeledVehicleControllerSettings* settings, [NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("uint32_t")] + public static extern uint JPH_WheeledVehicleControllerSettings_GetDifferentialsCount([NativeTypeName("const JPH_WheeledVehicleControllerSettings *")] JPH_WheeledVehicleControllerSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleControllerSettings_SetDifferentialsCount(JPH_WheeledVehicleControllerSettings* settings, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleControllerSettings_GetDifferential([NativeTypeName("const JPH_WheeledVehicleControllerSettings *")] JPH_WheeledVehicleControllerSettings* settings, [NativeTypeName("uint32_t")] uint index, JPH_VehicleDifferentialSettings* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleControllerSettings_SetDifferential(JPH_WheeledVehicleControllerSettings* settings, [NativeTypeName("uint32_t")] uint index, [NativeTypeName("const JPH_VehicleDifferentialSettings *")] JPH_VehicleDifferentialSettings* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleControllerSettings_SetDifferentials(JPH_WheeledVehicleControllerSettings* settings, [NativeTypeName("const JPH_VehicleDifferentialSettings *")] JPH_VehicleDifferentialSettings* values, [NativeTypeName("uint32_t")] uint count); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheeledVehicleControllerSettings_GetDifferentialLimitedSlipRatio([NativeTypeName("const JPH_WheeledVehicleControllerSettings *")] JPH_WheeledVehicleControllerSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleControllerSettings_SetDifferentialLimitedSlipRatio(JPH_WheeledVehicleControllerSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleController_SetDriverInput(JPH_WheeledVehicleController* controller, float forward, float right, float brake, float handBrake); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleController_SetForwardInput(JPH_WheeledVehicleController* controller, float forward); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheeledVehicleController_GetForwardInput([NativeTypeName("const JPH_WheeledVehicleController *")] JPH_WheeledVehicleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleController_SetRightInput(JPH_WheeledVehicleController* controller, float rightRatio); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheeledVehicleController_GetRightInput([NativeTypeName("const JPH_WheeledVehicleController *")] JPH_WheeledVehicleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleController_SetBrakeInput(JPH_WheeledVehicleController* controller, float brakeInput); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheeledVehicleController_GetBrakeInput([NativeTypeName("const JPH_WheeledVehicleController *")] JPH_WheeledVehicleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheeledVehicleController_SetHandBrakeInput(JPH_WheeledVehicleController* controller, float handBrakeInput); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheeledVehicleController_GetHandBrakeInput([NativeTypeName("const JPH_WheeledVehicleController *")] JPH_WheeledVehicleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheeledVehicleController_GetWheelSpeedAtClutch([NativeTypeName("const JPH_WheeledVehicleController *")] JPH_WheeledVehicleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_WheelSettingsTV* JPH_WheelSettingsTV_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheelSettingsTV_GetLongitudinalFriction([NativeTypeName("const JPH_WheelSettingsTV *")] JPH_WheelSettingsTV* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettingsTV_SetLongitudinalFriction(JPH_WheelSettingsTV* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_WheelSettingsTV_GetLateralFriction([NativeTypeName("const JPH_WheelSettingsTV *")] JPH_WheelSettingsTV* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_WheelSettingsTV_SetLateralFriction(JPH_WheelSettingsTV* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_WheelTV* JPH_WheelTV_Create([NativeTypeName("const JPH_WheelSettingsTV *")] JPH_WheelSettingsTV* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_WheelSettingsTV *")] + public static extern JPH_WheelSettingsTV* JPH_WheelTV_GetSettings([NativeTypeName("const JPH_WheelTV *")] JPH_WheelTV* wheel); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_TrackedVehicleControllerSettings* JPH_TrackedVehicleControllerSettings_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TrackedVehicleControllerSettings_GetEngine([NativeTypeName("const JPH_TrackedVehicleControllerSettings *")] JPH_TrackedVehicleControllerSettings* settings, JPH_VehicleEngineSettings* result); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TrackedVehicleControllerSettings_SetEngine(JPH_TrackedVehicleControllerSettings* settings, [NativeTypeName("const JPH_VehicleEngineSettings *")] JPH_VehicleEngineSettings* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("const JPH_VehicleTransmissionSettings *")] + public static extern JPH_VehicleTransmissionSettings* JPH_TrackedVehicleControllerSettings_GetTransmission([NativeTypeName("const JPH_TrackedVehicleControllerSettings *")] JPH_TrackedVehicleControllerSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TrackedVehicleControllerSettings_SetTransmission(JPH_TrackedVehicleControllerSettings* settings, [NativeTypeName("const JPH_VehicleTransmissionSettings *")] JPH_VehicleTransmissionSettings* value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TrackedVehicleController_SetDriverInput(JPH_TrackedVehicleController* controller, float forward, float leftRatio, float rightRatio, float brake); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TrackedVehicleController_GetForwardInput([NativeTypeName("const JPH_TrackedVehicleController *")] JPH_TrackedVehicleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TrackedVehicleController_SetForwardInput(JPH_TrackedVehicleController* controller, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TrackedVehicleController_GetLeftRatio([NativeTypeName("const JPH_TrackedVehicleController *")] JPH_TrackedVehicleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TrackedVehicleController_SetLeftRatio(JPH_TrackedVehicleController* controller, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TrackedVehicleController_GetRightRatio([NativeTypeName("const JPH_TrackedVehicleController *")] JPH_TrackedVehicleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TrackedVehicleController_SetRightRatio(JPH_TrackedVehicleController* controller, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_TrackedVehicleController_GetBrakeInput([NativeTypeName("const JPH_TrackedVehicleController *")] JPH_TrackedVehicleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_TrackedVehicleController_SetBrakeInput(JPH_TrackedVehicleController* controller, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_MotorcycleControllerSettings* JPH_MotorcycleControllerSettings_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotorcycleControllerSettings_GetMaxLeanAngle([NativeTypeName("const JPH_MotorcycleControllerSettings *")] JPH_MotorcycleControllerSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleControllerSettings_SetMaxLeanAngle(JPH_MotorcycleControllerSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotorcycleControllerSettings_GetLeanSpringConstant([NativeTypeName("const JPH_MotorcycleControllerSettings *")] JPH_MotorcycleControllerSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleControllerSettings_SetLeanSpringConstant(JPH_MotorcycleControllerSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotorcycleControllerSettings_GetLeanSpringDamping([NativeTypeName("const JPH_MotorcycleControllerSettings *")] JPH_MotorcycleControllerSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleControllerSettings_SetLeanSpringDamping(JPH_MotorcycleControllerSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotorcycleControllerSettings_GetLeanSpringIntegrationCoefficient([NativeTypeName("const JPH_MotorcycleControllerSettings *")] JPH_MotorcycleControllerSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleControllerSettings_SetLeanSpringIntegrationCoefficient(JPH_MotorcycleControllerSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotorcycleControllerSettings_GetLeanSpringIntegrationCoefficientDecay([NativeTypeName("const JPH_MotorcycleControllerSettings *")] JPH_MotorcycleControllerSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleControllerSettings_SetLeanSpringIntegrationCoefficientDecay(JPH_MotorcycleControllerSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotorcycleControllerSettings_GetLeanSmoothingFactor([NativeTypeName("const JPH_MotorcycleControllerSettings *")] JPH_MotorcycleControllerSettings* settings); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleControllerSettings_SetLeanSmoothingFactor(JPH_MotorcycleControllerSettings* settings, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotorcycleController_GetWheelBase([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_MotorcycleController_IsLeanControllerEnabled([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleController_EnableLeanController(JPH_MotorcycleController* controller, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_MotorcycleController_IsLeanSteeringLimitEnabled([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleController_EnableLeanSteeringLimit(JPH_MotorcycleController* controller, [NativeTypeName("bool")] byte value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotorcycleController_GetLeanSpringConstant([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleController_SetLeanSpringConstant(JPH_MotorcycleController* controller, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotorcycleController_GetLeanSpringDamping([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleController_SetLeanSpringDamping(JPH_MotorcycleController* controller, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotorcycleController_GetLeanSpringIntegrationCoefficient([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleController_SetLeanSpringIntegrationCoefficient(JPH_MotorcycleController* controller, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotorcycleController_GetLeanSpringIntegrationCoefficientDecay([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleController_SetLeanSpringIntegrationCoefficientDecay(JPH_MotorcycleController* controller, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern float JPH_MotorcycleController_GetLeanSmoothingFactor([NativeTypeName("const JPH_MotorcycleController *")] JPH_MotorcycleController* controller); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_MotorcycleController_SetLeanSmoothingFactor(JPH_MotorcycleController* controller, float value); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_StateRecorderImpl* JPH_StateRecorderImpl_Create(); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_StateRecorderImpl_Destroy([NativeTypeName("const JPH_StateRecorderImpl *")] JPH_StateRecorderImpl* recorder); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_StateRecorderImpl_Rewind(JPH_StateRecorderImpl* recorder); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_StateRecorderImpl_IsEOF([NativeTypeName("const JPH_StateRecorderImpl *")] JPH_StateRecorderImpl* recorder); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_StateRecorderImpl_IsFailed([NativeTypeName("const JPH_StateRecorderImpl *")] JPH_StateRecorderImpl* recorder); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern int JPH_StateRecorderImpl_GetDataSize(JPH_StateRecorderImpl* recorder); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_StateRecorderImpl_WriteBytes(JPH_StateRecorderImpl* recorder, [NativeTypeName("const void *")] void* inData, int inNumBytes); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_StateRecorderImpl_ReadBytes(JPH_StateRecorderImpl* recorder, void* inData, int inNumBytes); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + [return: NativeTypeName("bool")] + public static extern byte JPH_StateRecorderImpl_IsEqual(JPH_StateRecorderImpl* recorder1, JPH_StateRecorderImpl* recorder2); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_StateRecorderImpl_Clear(JPH_StateRecorderImpl* recorder); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern JPH_StateRecorderFilter* JPH_StateRecorderFilter_Create(void* userData); + + [DllImport("joltc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] + public static extern void JPH_StateRecorderFilter_Destroy([NativeTypeName("const JPH_StateRecorderFilter *")] JPH_StateRecorderFilter* filter); + } +} diff --git a/Jolt/Bindings/UnsafeBindings.cs.meta b/Jolt/Bindings/UnsafeBindings.cs.meta new file mode 100644 index 0000000..c5112a0 --- /dev/null +++ b/Jolt/Bindings/UnsafeBindings.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 023949b42aa9c4a19a12fbebd8f9c874 \ No newline at end of file diff --git a/Jolt/Bindings/UnsafeBindings.g.cs.meta b/Jolt/Bindings/UnsafeBindings.g.cs.meta deleted file mode 100644 index 7a1d939..0000000 --- a/Jolt/Bindings/UnsafeBindings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 38be7efd132262e4b89c7655eca2e8c0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated.meta b/Jolt/Generated.meta deleted file mode 100644 index 5d10706..0000000 --- a/Jolt/Generated.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: cff8cc96a1e94f49832c0c4bf88124c3 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/Body.g.cs b/Jolt/Generated/Body.g.cs deleted file mode 100644 index b3662cb..0000000 --- a/Jolt/Generated/Body.g.cs +++ /dev/null @@ -1,127 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct Body : IEquatable - { - #region IEquatable - - public bool Equals(Body other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is Body other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(Body lhs, Body rhs) => lhs.Equals(rhs); - - public static bool operator !=(Body lhs, Body rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_Body - - public BodyID GetID() => Bindings.JPH_Body_GetID(Handle); - - public BodyType GetBodyType() => Bindings.JPH_Body_GetBodyType(Handle); - - public bool IsRigidBody() => Bindings.JPH_Body_IsRigidBody(Handle); - - public bool IsSoftBody() => Bindings.JPH_Body_IsSoftBody(Handle); - - public bool IsActive() => Bindings.JPH_Body_IsActive(Handle); - - public bool IsStatic() => Bindings.JPH_Body_IsStatic(Handle); - - public bool IsKinematic() => Bindings.JPH_Body_IsKinematic(Handle); - - public bool IsDynamic() => Bindings.JPH_Body_IsDynamic(Handle); - - public bool IsSensor() => Bindings.JPH_Body_IsSensor(Handle); - - public void SetIsSensor(bool value) => Bindings.JPH_Body_SetIsSensor(Handle, value); - - public void SetCollideKinematicVsNonDynamic(bool value) => Bindings.JPH_Body_SetCollideKinematicVsNonDynamic(Handle, value); - - public bool GetCollideKinematicVsNonDynamic() => Bindings.JPH_Body_GetCollideKinematicVsNonDynamic(Handle); - - public void SetUseManifoldReduction(bool value) => Bindings.JPH_Body_SetUseManifoldReduction(Handle, value); - - public bool GetUseManifoldReduction() => Bindings.JPH_Body_GetUseManifoldReduction(Handle); - - public bool GetUseManifoldReductionWithBody(Body other) => Bindings.JPH_Body_GetUseManifoldReductionWithBody(Handle, other.Handle); - - public void SetApplyGyroscopicForce(bool value) => Bindings.JPH_Body_SetApplyGyroscopicForce(Handle, value); - - public bool GetApplyGyroscopicForce() => Bindings.JPH_Body_GetApplyGyroscopicForce(Handle); - - public MotionProperties GetMotionProperties() => new MotionProperties { Handle = Bindings.JPH_Body_GetMotionProperties(Handle) }; - - public MotionType GetMotionType() => Bindings.JPH_Body_GetMotionType(Handle); - - public void SetMotionType(MotionType motion) => Bindings.JPH_Body_SetMotionType(Handle, motion); - - public bool GetAllowSleeping() => Bindings.JPH_Body_GetAllowSleeping(Handle); - - public void SetAllowSleeping(bool allowSleeping) => Bindings.JPH_Body_SetAllowSleeping(Handle, allowSleeping); - - public void ResetSleepTimer() => Bindings.JPH_Body_ResetSleepTimer(Handle); - - public float GetFriction() => Bindings.JPH_Body_GetFriction(Handle); - - public void SetFriction(float friction) => Bindings.JPH_Body_SetFriction(Handle, friction); - - public float GetRestitution() => Bindings.JPH_Body_GetRestitution(Handle); - - public void SetRestitution(float restitution) => Bindings.JPH_Body_SetRestitution(Handle, restitution); - - public float3 GetLinearVelocity() => Bindings.JPH_Body_GetLinearVelocity(Handle); - - public void SetLinearVelocity(float3 velocity) => Bindings.JPH_Body_SetLinearVelocity(Handle, velocity); - - public float3 GetAngularVelocity() => Bindings.JPH_Body_GetAngularVelocity(Handle); - - public void SetAngularVelocity(float3 velocity) => Bindings.JPH_Body_SetAngularVelocity(Handle, velocity); - - public void AddForce(float3 force) => Bindings.JPH_Body_AddForce(Handle, force); - - public void AddForceAtPosition(float3 force, rvec3 position) => Bindings.JPH_Body_AddForceAtPosition(Handle, force, position); - - public void AddTorque(float3 force) => Bindings.JPH_Body_AddTorque(Handle, force); - - public float3 GetAccumulatedForce() => Bindings.JPH_Body_GetAccumulatedForce(Handle); - - public float3 GetAccumulatedTorque() => Bindings.JPH_Body_GetAccumulatedTorque(Handle); - - public void AddImpulse(float3 impulse) => Bindings.JPH_Body_AddImpulse(Handle, impulse); - - public void AddImpulseAtPosition(float3 impulse, rvec3 position) => Bindings.JPH_Body_AddImpulseAtPosition(Handle, impulse, position); - - public void AddAngularImpulse(float3 angularImpulse) => Bindings.JPH_Body_AddAngularImpulse(Handle, angularImpulse); - - public rvec3 GetPosition() => Bindings.JPH_Body_GetPosition(Handle); - - public quaternion GetRotation() => Bindings.JPH_Body_GetRotation(Handle); - - public rmatrix4x4 GetWorldTransform() => Bindings.JPH_Body_GetWorldTransform(Handle); - - public rvec3 GetCenterOfMassPosition() => Bindings.JPH_Body_GetCenterOfMassPosition(Handle); - - public rmatrix4x4 GetCenterOfMassTransform() => Bindings.JPH_Body_GetCenterOfMassTransform(Handle); - - public rmatrix4x4 GetInverseCenterOfMassTransform() => Bindings.JPH_Body_GetInverseCenterOfMassTransform(Handle); - - public AABox GetWorldSpaceBounds() => Bindings.JPH_Body_GetWorldSpaceBounds(Handle); - - public float3 GetWorldSpaceSurfaceNormal(SubShapeID subShapeID, rvec3 position) => Bindings.JPH_Body_GetWorldSpaceSurfaceNormal(Handle, subShapeID, position); - - public void SetUserData(ulong userData) => Bindings.JPH_Body_SetUserData(Handle, userData); - - public ulong GetUserData() => Bindings.JPH_Body_GetUserData(Handle); - - #endregion - - } -} diff --git a/Jolt/Generated/Body.g.cs.meta b/Jolt/Generated/Body.g.cs.meta deleted file mode 100644 index f97a5c2..0000000 --- a/Jolt/Generated/Body.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 501693e6b1b5d0b4aabef4ec6d7c3baf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/BodyActivationListener.g.cs b/Jolt/Generated/BodyActivationListener.g.cs deleted file mode 100644 index aff8c23..0000000 --- a/Jolt/Generated/BodyActivationListener.g.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct BodyActivationListener : IEquatable - { - #region IEquatable - - public bool Equals(BodyActivationListener other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is BodyActivationListener other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(BodyActivationListener lhs, BodyActivationListener rhs) => lhs.Equals(rhs); - - public static bool operator !=(BodyActivationListener lhs, BodyActivationListener rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_BodyActivationListener - - public void Destroy() => Bindings.JPH_BodyActivationListener_Destroy(Handle); - - #endregion - - } -} diff --git a/Jolt/Generated/BodyActivationListener.g.cs.meta b/Jolt/Generated/BodyActivationListener.g.cs.meta deleted file mode 100644 index 5379102..0000000 --- a/Jolt/Generated/BodyActivationListener.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d805e6b582c2de14b8edb45df134d6af -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/BodyCreationSettings.g.cs b/Jolt/Generated/BodyCreationSettings.g.cs deleted file mode 100644 index c4e4de9..0000000 --- a/Jolt/Generated/BodyCreationSettings.g.cs +++ /dev/null @@ -1,55 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct BodyCreationSettings : IEquatable - { - #region IEquatable - - public bool Equals(BodyCreationSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is BodyCreationSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(BodyCreationSettings lhs, BodyCreationSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(BodyCreationSettings lhs, BodyCreationSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_BodyCreationSettings - - public void Destroy() => Bindings.JPH_BodyCreationSettings_Destroy(ref Handle); - - public rvec3 GetPosition() => Bindings.JPH_BodyCreationSettings_GetPosition(Handle); - - public void SetPosition(rvec3 value) => Bindings.JPH_BodyCreationSettings_SetPosition(Handle, value); - - public quaternion GetRotation() => Bindings.JPH_BodyCreationSettings_GetRotation(Handle); - - public void SetRotation(quaternion value) => Bindings.JPH_BodyCreationSettings_SetRotation(Handle, value); - - public float3 GetLinearVelocity() => Bindings.JPH_BodyCreationSettings_GetLinearVelocity(Handle); - - public void SetLinearVelocity(float3 velocity) => Bindings.JPH_BodyCreationSettings_SetLinearVelocity(Handle, velocity); - - public float3 GetAngularVelocity() => Bindings.JPH_BodyCreationSettings_GetAngularVelocity(Handle); - - public void SetAngularVelocity(float3 velocity) => Bindings.JPH_BodyCreationSettings_SetAngularVelocity(Handle, velocity); - - public MotionType GetMotionType() => Bindings.JPH_BodyCreationSettings_GetMotionType(Handle); - - public void SetMotionType(MotionType value) => Bindings.JPH_BodyCreationSettings_SetMotionType(Handle, value); - - public AllowedDOFs GetAllowedDOFs() => Bindings.JPH_BodyCreationSettings_GetAllowedDOFs(Handle); - - public void SetAllowedDOFs(AllowedDOFs value) => Bindings.JPH_BodyCreationSettings_SetAllowedDOFs(Handle, value); - - #endregion - - } -} diff --git a/Jolt/Generated/BodyCreationSettings.g.cs.meta b/Jolt/Generated/BodyCreationSettings.g.cs.meta deleted file mode 100644 index d4c0900..0000000 --- a/Jolt/Generated/BodyCreationSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: af22d908f9f2ead4caacc47c30db59e5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/BodyFilter.g.cs b/Jolt/Generated/BodyFilter.g.cs deleted file mode 100644 index cc32b19..0000000 --- a/Jolt/Generated/BodyFilter.g.cs +++ /dev/null @@ -1,33 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct BodyFilter : IEquatable - { - #region IEquatable - - public bool Equals(BodyFilter other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is BodyFilter other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(BodyFilter lhs, BodyFilter rhs) => lhs.Equals(rhs); - - public static bool operator !=(BodyFilter lhs, BodyFilter rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_BodyFilter - - public void SetProcs() => Bindings.JPH_BodyFilter_SetProcs(Handle); - - public void Destroy() => Bindings.JPH_BodyFilter_Destroy(Handle); - - #endregion - - } -} diff --git a/Jolt/Generated/BodyFilter.g.cs.meta b/Jolt/Generated/BodyFilter.g.cs.meta deleted file mode 100644 index e7ed73b..0000000 --- a/Jolt/Generated/BodyFilter.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bffc66f18bf89e540a374ed4bfdedf5d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/BodyInterface.g.cs b/Jolt/Generated/BodyInterface.g.cs deleted file mode 100644 index b1244b7..0000000 --- a/Jolt/Generated/BodyInterface.g.cs +++ /dev/null @@ -1,167 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct BodyInterface : IEquatable - { - #region IEquatable - - public bool Equals(BodyInterface other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is BodyInterface other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(BodyInterface lhs, BodyInterface rhs) => lhs.Equals(rhs); - - public static bool operator !=(BodyInterface lhs, BodyInterface rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_BodyInterface - - public void DestroyBody(BodyID bodyID) => Bindings.JPH_BodyInterface_DestroyBody(Handle, bodyID); - - public BodyID CreateAndAddBody(BodyCreationSettings settings, Activation activation) => Bindings.JPH_BodyInterface_CreateAndAddBody(Handle, settings.Handle, activation); - - public Body CreateBody(BodyCreationSettings settings) => new Body { Handle = Bindings.JPH_BodyInterface_CreateBody(Handle, settings.Handle) }; - - public Body CreateBodyWithID(BodyID bodyID, BodyCreationSettings settings) => new Body { Handle = Bindings.JPH_BodyInterface_CreateBodyWithID(Handle, bodyID, settings.Handle) }; - - public Body CreateBodyWithoutID(BodyCreationSettings settings) => new Body { Handle = Bindings.JPH_BodyInterface_CreateBodyWithoutID(Handle, settings.Handle) }; - - public void DestroyBodyWithoutID(Body body) => Bindings.JPH_BodyInterface_DestroyBodyWithoutID(Handle, body.Handle); - - public bool AssignBodyID(Body body) => Bindings.JPH_BodyInterface_AssignBodyID(Handle, body.Handle); - - public bool AssignBodyID(Body body, BodyID bodyID) => Bindings.JPH_BodyInterface_AssignBodyID(Handle, body.Handle, bodyID); - - public Body UnassignBodyID(BodyID bodyID) => new Body { Handle = Bindings.JPH_BodyInterface_UnassignBodyID(Handle, bodyID) }; - - public Body CreateSoftBody(SoftBodyCreationSettings settings) => new Body { Handle = Bindings.JPH_BodyInterface_CreateSoftBody(Handle, settings.Handle) }; - - public Body CreateSoftBodyWithID(BodyID bodyID, SoftBodyCreationSettings settings) => new Body { Handle = Bindings.JPH_BodyInterface_CreateSoftBodyWithID(Handle, bodyID, settings.Handle) }; - - public Body CreateSoftBodyWithoutID(SoftBodyCreationSettings settings) => new Body { Handle = Bindings.JPH_BodyInterface_CreateSoftBodyWithoutID(Handle, settings.Handle) }; - - public BodyID CreateAndAddSoftBody(SoftBodyCreationSettings settings, Activation activation) => Bindings.JPH_BodyInterface_CreateAndAddSoftBody(Handle, settings.Handle, activation); - - public void AddBody(BodyID bodyID, Activation activation) => Bindings.JPH_BodyInterface_AddBody(Handle, bodyID, activation); - - public void RemoveBody(BodyID bodyID) => Bindings.JPH_BodyInterface_RemoveBody(Handle, bodyID); - - public void RemoveAndDestroyBody(BodyID bodyID) => Bindings.JPH_BodyInterface_RemoveAndDestroyBody(Handle, bodyID); - - public bool IsActive(BodyID bodyID) => Bindings.JPH_BodyInterface_IsActive(Handle, bodyID); - - public bool IsAdded(BodyID bodyID) => Bindings.JPH_BodyInterface_IsAdded(Handle, bodyID); - - public bool GetBodyType(BodyID bodyID) => Bindings.JPH_BodyInterface_GetBodyType(Handle, bodyID); - - public void SetLinearVelocity(BodyID bodyID, float3 velocity) => Bindings.JPH_BodyInterface_SetLinearVelocity(Handle, bodyID, velocity); - - public float3 GetLinearVelocity(BodyID bodyID) => Bindings.JPH_BodyInterface_GetLinearVelocity(Handle, bodyID); - - public rvec3 GetCenterOfMassPosition(BodyID bodyID) => Bindings.JPH_BodyInterface_GetCenterOfMassPosition(Handle, bodyID); - - public MotionType GetMotionType(BodyID bodyID) => Bindings.JPH_BodyInterface_GetMotionType(Handle, bodyID); - - public void SetMotionType(BodyID bodyID, MotionType motion, Activation activation) => Bindings.JPH_BodyInterface_SetMotionType(Handle, bodyID, motion, activation); - - public float GetRestitution(BodyID bodyID) => Bindings.JPH_BodyInterface_GetRestitution(Handle, bodyID); - - public void SetRestitution(BodyID bodyID, float restitution) => Bindings.JPH_BodyInterface_SetRestitution(Handle, bodyID, restitution); - - public float GetFriction(BodyID bodyID) => Bindings.JPH_BodyInterface_GetFriction(Handle, bodyID); - - public void SetFriction(BodyID bodyID, float friction) => Bindings.JPH_BodyInterface_SetFriction(Handle, bodyID, friction); - - public void SetPosition(BodyID bodyID, rvec3 position, Activation activation) => Bindings.JPH_BodyInterface_SetPosition(Handle, bodyID, position, activation); - - public rvec3 GetPosition(BodyID bodyID) => Bindings.JPH_BodyInterface_GetPosition(Handle, bodyID); - - public void SetRotation(BodyID bodyID, quaternion rotation, Activation activation) => Bindings.JPH_BodyInterface_SetRotation(Handle, bodyID, rotation, activation); - - public quaternion GetRotation(BodyID bodyID) => Bindings.JPH_BodyInterface_GetRotation(Handle, bodyID); - - public void SetPositionAndRotation(BodyID bodyID, rvec3 position, quaternion rotation, Activation activation) => Bindings.JPH_BodyInterface_SetPositionAndRotation(Handle, bodyID, position, rotation, activation); - - public void SetPositionAndRotationWhenChanged(BodyID bodyID, rvec3 position, quaternion rotation, Activation activation) => Bindings.JPH_BodyInterface_SetPositionAndRotationWhenChanged(Handle, bodyID, position, rotation, activation); - - public void GetPositionAndRotation(BodyID bodyID, out rvec3 position, out quaternion rotation) => Bindings.JPH_BodyInterface_GetPositionAndRotation(Handle, bodyID, out position, out rotation); - - public void SetPositionRotationAndVelocity(BodyID bodyID, rvec3 position, quaternion rotation, float3 linearVelocity, float3 angularVelocity) => Bindings.JPH_BodyInterface_SetPositionRotationAndVelocity(Handle, bodyID, position, rotation, linearVelocity, angularVelocity); - - public Shape GetShape(BodyID bodyID) => new Shape { Handle = Bindings.JPH_BodyInterface_GetShape(Handle, bodyID) }; - - public void SetShape(BodyID bodyID, Shape shape, bool updateMassProperties, Activation activation) => Bindings.JPH_BodyInterface_SetShape(Handle, bodyID, shape.Handle, updateMassProperties, activation); - - public void NotifyShapeChanged(BodyID bodyID, float3 previousCenterOfMass, bool updateMassProperties, Activation activation) => Bindings.JPH_BodyInterface_NotifyShapeChanged(Handle, bodyID, previousCenterOfMass, updateMassProperties, activation); - - public void ActivateBody(BodyID bodyID) => Bindings.JPH_BodyInterface_ActivateBody(Handle, bodyID); - - public void DeactivateBody(BodyID bodyID) => Bindings.JPH_BodyInterface_DeactivateBody(Handle, bodyID); - - public void SetObjectLayer(BodyID bodyID, ObjectLayer layer) => Bindings.JPH_BodyInterface_SetObjectLayer(Handle, bodyID, layer); - - public ObjectLayer GetObjectLayer(BodyID bodyID) => Bindings.JPH_BodyInterface_GetObjectLayer(Handle, bodyID); - - public rmatrix4x4 GetWorldTransform(BodyID bodyID) => Bindings.JPH_BodyInterface_GetWorldTransform(Handle, bodyID); - - public rmatrix4x4 GetCenterOfMassTransform(BodyID bodyID) => Bindings.JPH_BodyInterface_GetCenterOfMassTransform(Handle, bodyID); - - public void MoveKinematic(BodyID bodyID, rvec3 targetPosition, quaternion targetRotation, float deltaTime) => Bindings.JPH_BodyInterface_MoveKinematic(Handle, bodyID, targetPosition, targetRotation, deltaTime); - - public bool ApplyBuoyancyImpulse(BodyID bodyID, rvec3 surfacePosition, float3 surfaceNormal, float buoyancy, float linearDrag, float angularDrag, float3 fluidVelocity, float3 gravity, float deltaTime) => Bindings.JPH_BodyInterface_ApplyBuoyancyImpulse(Handle, bodyID, surfacePosition, surfaceNormal, buoyancy, linearDrag, angularDrag, fluidVelocity, gravity, deltaTime); - - public void SetLinearAndAngularVelocity(BodyID bodyID, float3 linearVelocity, float3 angularVelocity) => Bindings.JPH_BodyInterface_SetLinearAndAngularVelocity(Handle, bodyID, linearVelocity, angularVelocity); - - public void GetLinearAndAngularVelocity(BodyID bodyID, out float3 linearVelocity, out float3 angularVelocity) => Bindings.JPH_BodyInterface_GetLinearAndAngularVelocity(Handle, bodyID, out linearVelocity, out angularVelocity); - - public void AddLinearVelocity(BodyID bodyID, float3 linearVelocity) => Bindings.JPH_BodyInterface_AddLinearVelocity(Handle, bodyID, linearVelocity); - - public void AddLinearAndAngularVelocity(BodyID bodyID, float3 linearVelocity, float3 angularVelocity) => Bindings.JPH_BodyInterface_AddLinearAndAngularVelocity(Handle, bodyID, linearVelocity, angularVelocity); - - public void SetAngularVelocity(BodyID bodyID, float3 angularVelocity) => Bindings.JPH_BodyInterface_SetAngularVelocity(Handle, bodyID, angularVelocity); - - public float3 GetAngularVelocity(BodyID bodyID) => Bindings.JPH_BodyInterface_GetAngularVelocity(Handle, bodyID); - - public float3 GetPointVelocity(BodyID bodyID, rvec3 point) => Bindings.JPH_BodyInterface_GetPointVelocity(Handle, bodyID, point); - - public void AddForce(BodyID bodyID, float3 force) => Bindings.JPH_BodyInterface_AddForce(Handle, bodyID, force); - - public void AddForce(BodyID bodyID, float3 force, rvec3 point) => Bindings.JPH_BodyInterface_AddForce(Handle, bodyID, force, point); - - public void AddTorque(BodyID bodyID, float3 torque) => Bindings.JPH_BodyInterface_AddTorque(Handle, bodyID, torque); - - public void AddForceAndTorque(BodyID bodyID, float3 force, float3 torque) => Bindings.JPH_BodyInterface_AddForceAndTorque(Handle, bodyID, force, torque); - - public void AddImpulse(BodyID bodyID, float3 impulse) => Bindings.JPH_BodyInterface_AddImpulse(Handle, bodyID, impulse); - - public void AddImpulse(BodyID bodyID, float3 impulse, rvec3 point) => Bindings.JPH_BodyInterface_AddImpulse(Handle, bodyID, impulse, point); - - public void AddAngularImpulse(BodyID bodyID, float3 angularImpulse) => Bindings.JPH_BodyInterface_AddAngularImpulse(Handle, bodyID, angularImpulse); - - public void SetMotionQuality(BodyID bodyID, MotionQuality quality) => Bindings.JPH_BodyInterface_SetMotionQuality(Handle, bodyID, quality); - - public MotionQuality GetMotionQuality(BodyID bodyID) => Bindings.JPH_BodyInterface_GetMotionQuality(Handle, bodyID); - - public float4x4 GetInverseInertia(BodyID bodyID) => Bindings.JPH_BodyInterface_GetInverseInertia(Handle, bodyID); - - public void SetGravityFactor(BodyID bodyID, float gravityFactor) => Bindings.JPH_BodyInterface_SetGravityFactor(Handle, bodyID, gravityFactor); - - public float GetGravityFactor(BodyID bodyID) => Bindings.JPH_BodyInterface_GetGravityFactor(Handle, bodyID); - - public void InvalidateContactCache(BodyID bodyID) => Bindings.JPH_BodyInterface_InvalidateContactCache(Handle, bodyID); - - public void SetUserData(BodyID bodyID, ulong data) => Bindings.JPH_BodyInterface_SetUserData(Handle, bodyID, data); - - public ulong GetUserData(BodyID bodyID) => Bindings.JPH_BodyInterface_GetUserData(Handle, bodyID); - - #endregion - - } -} diff --git a/Jolt/Generated/BodyInterface.g.cs.meta b/Jolt/Generated/BodyInterface.g.cs.meta deleted file mode 100644 index ff91d14..0000000 --- a/Jolt/Generated/BodyInterface.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 27c1e048f6a3be147a05af7259b1f352 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/BodyLockInterface.g.cs b/Jolt/Generated/BodyLockInterface.g.cs deleted file mode 100644 index 6c07ff7..0000000 --- a/Jolt/Generated/BodyLockInterface.g.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct BodyLockInterface : IEquatable - { - #region IEquatable - - public bool Equals(BodyLockInterface other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is BodyLockInterface other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(BodyLockInterface lhs, BodyLockInterface rhs) => lhs.Equals(rhs); - - public static bool operator !=(BodyLockInterface lhs, BodyLockInterface rhs) => !lhs.Equals(rhs); - - #endregion - - } -} diff --git a/Jolt/Generated/BodyLockInterface.g.cs.meta b/Jolt/Generated/BodyLockInterface.g.cs.meta deleted file mode 100644 index 475dacf..0000000 --- a/Jolt/Generated/BodyLockInterface.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 792ced0eb191d794f835dbec57f4f8b3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/BoxShape.g.cs b/Jolt/Generated/BoxShape.g.cs deleted file mode 100644 index b73f32a..0000000 --- a/Jolt/Generated/BoxShape.g.cs +++ /dev/null @@ -1,83 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct BoxShape : IEquatable - { - #region IEquatable - - public bool Equals(BoxShape other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is BoxShape other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(BoxShape lhs, BoxShape rhs) => lhs.Equals(rhs); - - public static bool operator !=(BoxShape lhs, BoxShape rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_BoxShape - - public float3 GetHalfExtent() => Bindings.JPH_BoxShape_GetHalfExtent(Handle); - - public float GetConvexRadius() => Bindings.JPH_BoxShape_GetConvexRadius(Handle); - - #endregion - - #region JPH_ConvexShape - - public float GetDensity() => Bindings.JPH_ConvexShape_GetDensity(Handle.Reinterpret()); - - public void SetDensity(float density) => Bindings.JPH_ConvexShape_SetDensity(Handle.Reinterpret(), density); - - #endregion - - #region JPH_Shape - - public void Destroy() => Bindings.JPH_Shape_Destroy(Handle.Reinterpret()); - - public ShapeType GetShapeType() => Bindings.JPH_Shape_GetType(Handle.Reinterpret()); - - public ShapeSubType GetSubType() => Bindings.JPH_Shape_GetSubType(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_Shape_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Shape_SetUserData(Handle.Reinterpret(), userData); - - public bool MustBeStatic() => Bindings.JPH_Shape_MustBeStatic(Handle.Reinterpret()); - - public float3 GetCenterOfMass() => Bindings.JPH_Shape_GetCenterOfMass(Handle.Reinterpret()); - - public AABox GetLocalBounds() => Bindings.JPH_Shape_GetLocalBounds(Handle.Reinterpret()); - - public uint GetSubShapeIDBitsRecursive() => Bindings.JPH_Shape_GetSubShapeIDBitsRecursive(Handle.Reinterpret()); - - public AABox GetWorldSpaceBounds(rmatrix4x4 centerOfMassTransform, float3 scale) => Bindings.JPH_Shape_GetWorldSpaceBounds(Handle.Reinterpret(), centerOfMassTransform, scale); - - public float GetInnerRadius() => Bindings.JPH_Shape_GetInnerRadius(Handle.Reinterpret()); - - public MassProperties GetMassProperties() => Bindings.JPH_Shape_GetMassProperties(Handle.Reinterpret()); - - public PhysicsMaterial GetMaterial(SubShapeID subShapeID) => new PhysicsMaterial { Handle = Bindings.JPH_Shape_GetMaterial(Handle.Reinterpret(), subShapeID) }; - - public float3 GetSurfaceNormal(SubShapeID subShapeID, float3 localPosition) => Bindings.JPH_Shape_GetSurfaceNormal(Handle.Reinterpret(), subShapeID, localPosition); - - public float GetVolume() => Bindings.JPH_Shape_GetVolume(Handle.Reinterpret()); - - public bool IsValidScale(float3 scale) => Bindings.JPH_Shape_IsValidScale(Handle.Reinterpret(), scale); - - public float3 MakeScaleValid(float3 scale) => Bindings.JPH_Shape_MakeScaleValid(Handle.Reinterpret(), scale); - - public Shape ScaleShape(float3 scale) => new Shape { Handle = Bindings.JPH_Shape_ScaleShape(Handle.Reinterpret(), scale) }; - - public bool CastRay(float3 origin, float3 direction, out RayCastResult result) => Bindings.JPH_Shape_CastRay(Handle.Reinterpret(), origin, direction, out result); - - #endregion - - } -} diff --git a/Jolt/Generated/BoxShape.g.cs.meta b/Jolt/Generated/BoxShape.g.cs.meta deleted file mode 100644 index 5b87a78..0000000 --- a/Jolt/Generated/BoxShape.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b9ad0487caa4f14489bec40d17a1c582 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/BoxShapeSettings.g.cs b/Jolt/Generated/BoxShapeSettings.g.cs deleted file mode 100644 index 2de09b4..0000000 --- a/Jolt/Generated/BoxShapeSettings.g.cs +++ /dev/null @@ -1,49 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct BoxShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(BoxShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is BoxShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(BoxShapeSettings lhs, BoxShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(BoxShapeSettings lhs, BoxShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_BoxShapeSettings - - public BoxShape CreateShape() => new BoxShape { Handle = Bindings.JPH_BoxShapeSettings_CreateShape(Handle) }; - - #endregion - - #region JPH_ConvexShapeSettings - - public float GetDensity() => Bindings.JPH_ConvexShapeSettings_GetDensity(Handle.Reinterpret()); - - public void SetDensity(float density) => Bindings.JPH_ConvexShapeSettings_SetDensity(Handle.Reinterpret(), density); - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle.Reinterpret(), data); - - #endregion - - } -} diff --git a/Jolt/Generated/BoxShapeSettings.g.cs.meta b/Jolt/Generated/BoxShapeSettings.g.cs.meta deleted file mode 100644 index eec5f0c..0000000 --- a/Jolt/Generated/BoxShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bc2c0cec35d6bd54ebda2ae9d6a0d193 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/BroadPhaseLayerFilter.g.cs b/Jolt/Generated/BroadPhaseLayerFilter.g.cs deleted file mode 100644 index b12c455..0000000 --- a/Jolt/Generated/BroadPhaseLayerFilter.g.cs +++ /dev/null @@ -1,33 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct BroadPhaseLayerFilter : IEquatable - { - #region IEquatable - - public bool Equals(BroadPhaseLayerFilter other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is BroadPhaseLayerFilter other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(BroadPhaseLayerFilter lhs, BroadPhaseLayerFilter rhs) => lhs.Equals(rhs); - - public static bool operator !=(BroadPhaseLayerFilter lhs, BroadPhaseLayerFilter rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_BroadPhaseLayerFilter - - public void SetProcs() => Bindings.JPH_BroadPhaseLayerFilter_SetProcs(Handle); - - public void Destroy() => Bindings.JPH_BroadPhaseLayerFilter_Destroy(Handle); - - #endregion - - } -} diff --git a/Jolt/Generated/BroadPhaseLayerFilter.g.cs.meta b/Jolt/Generated/BroadPhaseLayerFilter.g.cs.meta deleted file mode 100644 index 76eba18..0000000 --- a/Jolt/Generated/BroadPhaseLayerFilter.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b04c1afc56f6d7e4cb45a2f758cc830a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/BroadPhaseLayerInterfaceMask.g.cs b/Jolt/Generated/BroadPhaseLayerInterfaceMask.g.cs deleted file mode 100644 index 4fc3cb0..0000000 --- a/Jolt/Generated/BroadPhaseLayerInterfaceMask.g.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct BroadPhaseLayerInterfaceMask : IEquatable - { - #region IEquatable - - public bool Equals(BroadPhaseLayerInterfaceMask other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is BroadPhaseLayerInterfaceMask other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(BroadPhaseLayerInterfaceMask lhs, BroadPhaseLayerInterfaceMask rhs) => lhs.Equals(rhs); - - public static bool operator !=(BroadPhaseLayerInterfaceMask lhs, BroadPhaseLayerInterfaceMask rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_BroadPhaseLayerInterfaceMask - - public void ConfigureLayer(BroadPhaseLayer broadPhaseLayer, uint groupsToInclude, uint groupsToExclude) => Bindings.JPH_BroadPhaseLayerInterfaceMask_ConfigureLayer(Handle.Reinterpret(), broadPhaseLayer, groupsToInclude, groupsToExclude); - - #endregion - - } -} diff --git a/Jolt/Generated/BroadPhaseLayerInterfaceMask.g.cs.meta b/Jolt/Generated/BroadPhaseLayerInterfaceMask.g.cs.meta deleted file mode 100644 index e91186b..0000000 --- a/Jolt/Generated/BroadPhaseLayerInterfaceMask.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 55574a63c92e6094faacb3861a0c6fe5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/BroadPhaseLayerInterfaceTable.g.cs b/Jolt/Generated/BroadPhaseLayerInterfaceTable.g.cs deleted file mode 100644 index 7c800b7..0000000 --- a/Jolt/Generated/BroadPhaseLayerInterfaceTable.g.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct BroadPhaseLayerInterfaceTable : IEquatable - { - #region IEquatable - - public bool Equals(BroadPhaseLayerInterfaceTable other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is BroadPhaseLayerInterfaceTable other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(BroadPhaseLayerInterfaceTable lhs, BroadPhaseLayerInterfaceTable rhs) => lhs.Equals(rhs); - - public static bool operator !=(BroadPhaseLayerInterfaceTable lhs, BroadPhaseLayerInterfaceTable rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_BroadPhaseLayerInterfaceTable - - public void MapObjectToBroadPhaseLayer(ObjectLayer objectLayer, BroadPhaseLayer broadPhaseLayer) => Bindings.JPH_BroadPhaseLayerInterfaceTable_MapObjectToBroadPhaseLayer(Handle.Reinterpret(), objectLayer, broadPhaseLayer); - - #endregion - - } -} diff --git a/Jolt/Generated/BroadPhaseLayerInterfaceTable.g.cs.meta b/Jolt/Generated/BroadPhaseLayerInterfaceTable.g.cs.meta deleted file mode 100644 index 399438c..0000000 --- a/Jolt/Generated/BroadPhaseLayerInterfaceTable.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f8de28da1685df146a591450c300636a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/BroadPhaseQuery.g.cs b/Jolt/Generated/BroadPhaseQuery.g.cs deleted file mode 100644 index c08bc55..0000000 --- a/Jolt/Generated/BroadPhaseQuery.g.cs +++ /dev/null @@ -1,39 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct BroadPhaseQuery : IEquatable - { - #region IEquatable - - public bool Equals(BroadPhaseQuery other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is BroadPhaseQuery other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(BroadPhaseQuery lhs, BroadPhaseQuery rhs) => lhs.Equals(rhs); - - public static bool operator !=(BroadPhaseQuery lhs, BroadPhaseQuery rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_BroadPhaseQuery - - public bool CastRay(float3 origin, float3 direction, BroadPhaseQuery.CastRayCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter) => Bindings.JPH_BroadPhaseQuery_CastRay(Handle, origin, direction, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle); - - public bool CastRay(float3 origin, float3 direction, CollisionCollectorType collisionCollectorType, BroadPhaseQuery.CastRayCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter) => Bindings.JPH_BroadPhaseQuery_CastRay(Handle, origin, direction, collisionCollectorType, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle); - - public bool CollideAABox(AABox box, BroadPhaseQuery.CollideCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter) => Bindings.JPH_BroadPhaseQuery_CollideAABox(Handle, box, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle); - - public bool CollideSphere(float3 center, float radius, BroadPhaseQuery.CollideCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter) => Bindings.JPH_BroadPhaseQuery_CollideSphere(Handle, center, radius, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle); - - public bool CollidePoint(float3 point, BroadPhaseQuery.CollideCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter) => Bindings.JPH_BroadPhaseQuery_CollidePoint(Handle, point, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle); - - #endregion - - } -} diff --git a/Jolt/Generated/BroadPhaseQuery.g.cs.meta b/Jolt/Generated/BroadPhaseQuery.g.cs.meta deleted file mode 100644 index bd0a71a..0000000 --- a/Jolt/Generated/BroadPhaseQuery.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 160998b642600954ca95b88b4280700c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/CapsuleShape.g.cs b/Jolt/Generated/CapsuleShape.g.cs deleted file mode 100644 index c82eaef..0000000 --- a/Jolt/Generated/CapsuleShape.g.cs +++ /dev/null @@ -1,83 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct CapsuleShape : IEquatable - { - #region IEquatable - - public bool Equals(CapsuleShape other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is CapsuleShape other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(CapsuleShape lhs, CapsuleShape rhs) => lhs.Equals(rhs); - - public static bool operator !=(CapsuleShape lhs, CapsuleShape rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_CapsuleShape - - public float GetRadius() => Bindings.JPH_CapsuleShape_GetRadius(Handle); - - public float GetHalfHeightOfCylinder() => Bindings.JPH_CapsuleShape_GetHalfHeightOfCylinder(Handle); - - #endregion - - #region JPH_ConvexShape - - public float GetDensity() => Bindings.JPH_ConvexShape_GetDensity(Handle.Reinterpret()); - - public void SetDensity(float density) => Bindings.JPH_ConvexShape_SetDensity(Handle.Reinterpret(), density); - - #endregion - - #region JPH_Shape - - public void Destroy() => Bindings.JPH_Shape_Destroy(Handle.Reinterpret()); - - public ShapeType GetShapeType() => Bindings.JPH_Shape_GetType(Handle.Reinterpret()); - - public ShapeSubType GetSubType() => Bindings.JPH_Shape_GetSubType(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_Shape_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Shape_SetUserData(Handle.Reinterpret(), userData); - - public bool MustBeStatic() => Bindings.JPH_Shape_MustBeStatic(Handle.Reinterpret()); - - public float3 GetCenterOfMass() => Bindings.JPH_Shape_GetCenterOfMass(Handle.Reinterpret()); - - public AABox GetLocalBounds() => Bindings.JPH_Shape_GetLocalBounds(Handle.Reinterpret()); - - public uint GetSubShapeIDBitsRecursive() => Bindings.JPH_Shape_GetSubShapeIDBitsRecursive(Handle.Reinterpret()); - - public AABox GetWorldSpaceBounds(rmatrix4x4 centerOfMassTransform, float3 scale) => Bindings.JPH_Shape_GetWorldSpaceBounds(Handle.Reinterpret(), centerOfMassTransform, scale); - - public float GetInnerRadius() => Bindings.JPH_Shape_GetInnerRadius(Handle.Reinterpret()); - - public MassProperties GetMassProperties() => Bindings.JPH_Shape_GetMassProperties(Handle.Reinterpret()); - - public PhysicsMaterial GetMaterial(SubShapeID subShapeID) => new PhysicsMaterial { Handle = Bindings.JPH_Shape_GetMaterial(Handle.Reinterpret(), subShapeID) }; - - public float3 GetSurfaceNormal(SubShapeID subShapeID, float3 localPosition) => Bindings.JPH_Shape_GetSurfaceNormal(Handle.Reinterpret(), subShapeID, localPosition); - - public float GetVolume() => Bindings.JPH_Shape_GetVolume(Handle.Reinterpret()); - - public bool IsValidScale(float3 scale) => Bindings.JPH_Shape_IsValidScale(Handle.Reinterpret(), scale); - - public float3 MakeScaleValid(float3 scale) => Bindings.JPH_Shape_MakeScaleValid(Handle.Reinterpret(), scale); - - public Shape ScaleShape(float3 scale) => new Shape { Handle = Bindings.JPH_Shape_ScaleShape(Handle.Reinterpret(), scale) }; - - public bool CastRay(float3 origin, float3 direction, out RayCastResult result) => Bindings.JPH_Shape_CastRay(Handle.Reinterpret(), origin, direction, out result); - - #endregion - - } -} diff --git a/Jolt/Generated/CapsuleShape.g.cs.meta b/Jolt/Generated/CapsuleShape.g.cs.meta deleted file mode 100644 index 82516b2..0000000 --- a/Jolt/Generated/CapsuleShape.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ad3f9c8cc97d66443ac4f118dcb51b6e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/CapsuleShapeSettings.g.cs b/Jolt/Generated/CapsuleShapeSettings.g.cs deleted file mode 100644 index aa5cf18..0000000 --- a/Jolt/Generated/CapsuleShapeSettings.g.cs +++ /dev/null @@ -1,49 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct CapsuleShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(CapsuleShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is CapsuleShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(CapsuleShapeSettings lhs, CapsuleShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(CapsuleShapeSettings lhs, CapsuleShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_CapsuleShapeSettings - - public CapsuleShape CreateShape() => new CapsuleShape { Handle = Bindings.JPH_CapsuleShapeSettings_CreateShape(Handle) }; - - #endregion - - #region JPH_ConvexShapeSettings - - public float GetDensity() => Bindings.JPH_ConvexShapeSettings_GetDensity(Handle.Reinterpret()); - - public void SetDensity(float density) => Bindings.JPH_ConvexShapeSettings_SetDensity(Handle.Reinterpret(), density); - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle.Reinterpret(), data); - - #endregion - - } -} diff --git a/Jolt/Generated/CapsuleShapeSettings.g.cs.meta b/Jolt/Generated/CapsuleShapeSettings.g.cs.meta deleted file mode 100644 index 4ed78fd..0000000 --- a/Jolt/Generated/CapsuleShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cd1fa630fe7461f41bf48fd8f06fffa1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/CompoundShapeSettings.g.cs b/Jolt/Generated/CompoundShapeSettings.g.cs deleted file mode 100644 index 20dbad0..0000000 --- a/Jolt/Generated/CompoundShapeSettings.g.cs +++ /dev/null @@ -1,43 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct CompoundShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(CompoundShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is CompoundShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(CompoundShapeSettings lhs, CompoundShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(CompoundShapeSettings lhs, CompoundShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_CompoundShapeSettings - - public void AddShape(float3 position, quaternion rotation, ShapeSettings settings, uint userData) => Bindings.JPH_CompoundShapeSettings_AddShape(Handle, position, rotation, settings.Handle, userData); - - public void AddShape(float3 position, quaternion rotation, Shape shape, uint userData) => Bindings.JPH_CompoundShapeSettings_AddShape(Handle, position, rotation, shape.Handle, userData); - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle.Reinterpret(), data); - - #endregion - - } -} diff --git a/Jolt/Generated/CompoundShapeSettings.g.cs.meta b/Jolt/Generated/CompoundShapeSettings.g.cs.meta deleted file mode 100644 index 29d78ca..0000000 --- a/Jolt/Generated/CompoundShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 24e3b09ec04ae12498cdaa7b9978d535 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/ConeConstraint.g.cs b/Jolt/Generated/ConeConstraint.g.cs deleted file mode 100644 index 055fa21..0000000 --- a/Jolt/Generated/ConeConstraint.g.cs +++ /dev/null @@ -1,95 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct ConeConstraint : IEquatable - { - #region IEquatable - - public bool Equals(ConeConstraint other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is ConeConstraint other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(ConeConstraint lhs, ConeConstraint rhs) => lhs.Equals(rhs); - - public static bool operator !=(ConeConstraint lhs, ConeConstraint rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_ConeConstraint - - public ConeConstraintSettings GetSettings() => Bindings.JPH_ConeConstraint_GetSettings(Handle); - - public void SetHalfConeAngle(float halfConeAngle) => Bindings.JPH_ConeConstraint_SetHalfConeAngle(Handle, halfConeAngle); - - public float GetCosHalfConeAngle() => Bindings.JPH_ConeConstraint_GetCosHalfConeAngle(Handle); - - public float3 GetTotalLambdaPosition() => Bindings.JPH_ConeConstraint_GetTotalLambdaPosition(Handle); - - public float GetTotalLambdaRotation() => Bindings.JPH_ConeConstraint_GetTotalLambdaRotation(Handle); - - #endregion - - #region JPH_TwoBodyConstraint - - public Body GetBody1() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody1(Handle.Reinterpret()) }; - - public Body GetBody2() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody2(Handle.Reinterpret()) }; - - public float4x4 GetConstraintToBody1Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody1Matrix(Handle.Reinterpret()); - - public float4x4 GetConstraintToBody2Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody2Matrix(Handle.Reinterpret()); - - #endregion - - #region JPH_Constraint - - public void Destroy() => Bindings.JPH_Constraint_Destroy(Handle.Reinterpret()); - - public ConstraintType GetShapeType() => Bindings.JPH_Constraint_GetType(Handle.Reinterpret()); - - public ConstraintSubType GetSubType() => Bindings.JPH_Constraint_GetSubType(Handle.Reinterpret()); - - public uint GetConstraintPriority() => Bindings.JPH_Constraint_GetConstraintPriority(Handle.Reinterpret()); - - public void SetConstraintPriority(uint priority) => Bindings.JPH_Constraint_SetConstraintPriority(Handle.Reinterpret(), priority); - - public uint GetNumVelocityStepsOverride() => Bindings.JPH_Constraint_GetNumVelocityStepsOverride(Handle.Reinterpret()); - - public void SetNumVelocityStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumVelocityStepsOverride(Handle.Reinterpret(), value); - - public uint GetNumPositionStepsOverride() => Bindings.JPH_Constraint_GetNumPositionStepsOverride(Handle.Reinterpret()); - - public void SetNumPositionStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumPositionStepsOverride(Handle.Reinterpret(), value); - - public bool GetEnabled() => Bindings.JPH_Constraint_GetEnabled(Handle.Reinterpret()); - - public void SetEnabled(bool enabled) => Bindings.JPH_Constraint_SetEnabled(Handle.Reinterpret(), enabled); - - public ulong GetUserData() => Bindings.JPH_Constraint_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Constraint_SetUserData(Handle.Reinterpret(), userData); - - public void NotifyShapeChanged(BodyID bodyID, float3 deltaCOM) => Bindings.JPH_Constraint_NotifyShapeChanged(Handle.Reinterpret(), bodyID, deltaCOM); - - public void ResetWarmStart() => Bindings.JPH_Constraint_ResetWarmStart(Handle.Reinterpret()); - - public bool IsActive() => Bindings.JPH_Constraint_IsActive(Handle.Reinterpret()); - - public void SetupVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SetupVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public void WarmStartVelocityConstraint(float warmStartImpulseRatio) => Bindings.JPH_Constraint_WarmStartVelocityConstraint(Handle.Reinterpret(), warmStartImpulseRatio); - - public bool SolveVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SolveVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public bool SolvePositionConstraint(float deltaTime, float baumgarte) => Bindings.JPH_Constraint_SolvePositionConstraint(Handle.Reinterpret(), deltaTime, baumgarte); - - #endregion - - } -} diff --git a/Jolt/Generated/ConeConstraint.g.cs.meta b/Jolt/Generated/ConeConstraint.g.cs.meta deleted file mode 100644 index 3a20ce2..0000000 --- a/Jolt/Generated/ConeConstraint.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a7aece865150d934fb959fdc69bf5892 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/Constraint.g.cs b/Jolt/Generated/Constraint.g.cs deleted file mode 100644 index 67a4a7c..0000000 --- a/Jolt/Generated/Constraint.g.cs +++ /dev/null @@ -1,69 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct Constraint : IEquatable - { - #region IEquatable - - public bool Equals(Constraint other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is Constraint other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(Constraint lhs, Constraint rhs) => lhs.Equals(rhs); - - public static bool operator !=(Constraint lhs, Constraint rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_Constraint - - public void Destroy() => Bindings.JPH_Constraint_Destroy(Handle); - - public ConstraintType GetShapeType() => Bindings.JPH_Constraint_GetType(Handle); - - public ConstraintSubType GetSubType() => Bindings.JPH_Constraint_GetSubType(Handle); - - public uint GetConstraintPriority() => Bindings.JPH_Constraint_GetConstraintPriority(Handle); - - public void SetConstraintPriority(uint priority) => Bindings.JPH_Constraint_SetConstraintPriority(Handle, priority); - - public uint GetNumVelocityStepsOverride() => Bindings.JPH_Constraint_GetNumVelocityStepsOverride(Handle); - - public void SetNumVelocityStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumVelocityStepsOverride(Handle, value); - - public uint GetNumPositionStepsOverride() => Bindings.JPH_Constraint_GetNumPositionStepsOverride(Handle); - - public void SetNumPositionStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumPositionStepsOverride(Handle, value); - - public bool GetEnabled() => Bindings.JPH_Constraint_GetEnabled(Handle); - - public void SetEnabled(bool enabled) => Bindings.JPH_Constraint_SetEnabled(Handle, enabled); - - public ulong GetUserData() => Bindings.JPH_Constraint_GetUserData(Handle); - - public void SetUserData(ulong userData) => Bindings.JPH_Constraint_SetUserData(Handle, userData); - - public void NotifyShapeChanged(BodyID bodyID, float3 deltaCOM) => Bindings.JPH_Constraint_NotifyShapeChanged(Handle, bodyID, deltaCOM); - - public void ResetWarmStart() => Bindings.JPH_Constraint_ResetWarmStart(Handle); - - public bool IsActive() => Bindings.JPH_Constraint_IsActive(Handle); - - public void SetupVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SetupVelocityConstraint(Handle, deltaTime); - - public void WarmStartVelocityConstraint(float warmStartImpulseRatio) => Bindings.JPH_Constraint_WarmStartVelocityConstraint(Handle, warmStartImpulseRatio); - - public bool SolveVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SolveVelocityConstraint(Handle, deltaTime); - - public bool SolvePositionConstraint(float deltaTime, float baumgarte) => Bindings.JPH_Constraint_SolvePositionConstraint(Handle, deltaTime, baumgarte); - - #endregion - - } -} diff --git a/Jolt/Generated/Constraint.g.cs.meta b/Jolt/Generated/Constraint.g.cs.meta deleted file mode 100644 index eca9bdc..0000000 --- a/Jolt/Generated/Constraint.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 46741a82d1bd83240bb2d570f3c47b47 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/ContactListener.g.cs b/Jolt/Generated/ContactListener.g.cs deleted file mode 100644 index 28f9332..0000000 --- a/Jolt/Generated/ContactListener.g.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct ContactListener : IEquatable - { - #region IEquatable - - public bool Equals(ContactListener other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is ContactListener other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(ContactListener lhs, ContactListener rhs) => lhs.Equals(rhs); - - public static bool operator !=(ContactListener lhs, ContactListener rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_ContactListener - - public void Destroy() => Bindings.JPH_ContactListener_Destroy(Handle); - - #endregion - - } -} diff --git a/Jolt/Generated/ContactListener.g.cs.meta b/Jolt/Generated/ContactListener.g.cs.meta deleted file mode 100644 index ba5ef2e..0000000 --- a/Jolt/Generated/ContactListener.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9e1c1cb17dd91be439ecdca051d85077 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/ConvexHullShape.g.cs b/Jolt/Generated/ConvexHullShape.g.cs deleted file mode 100644 index 5ee89b1..0000000 --- a/Jolt/Generated/ConvexHullShape.g.cs +++ /dev/null @@ -1,89 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct ConvexHullShape : IEquatable - { - #region IEquatable - - public bool Equals(ConvexHullShape other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is ConvexHullShape other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(ConvexHullShape lhs, ConvexHullShape rhs) => lhs.Equals(rhs); - - public static bool operator !=(ConvexHullShape lhs, ConvexHullShape rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_ConvexHullShape - - public uint GetNumPoints() => Bindings.JPH_ConvexHullShape_GetNumPoints(Handle); - - public float3 GetPoint(uint index) => Bindings.JPH_ConvexHullShape_GetPoint(Handle, index); - - public uint GetNumFaces() => Bindings.JPH_ConvexHullShape_GetNumFaces(Handle); - - public uint GetNumVerticesInFace(uint faceIndex) => Bindings.JPH_ConvexHullShape_GetNumVerticesInFace(Handle, faceIndex); - - public uint GetFaceVertices(uint faceIndex, NativeArray vertices) => Bindings.JPH_ConvexHullShape_GetFaceVertices(Handle, faceIndex, vertices); - - #endregion - - #region JPH_ConvexShape - - public float GetDensity() => Bindings.JPH_ConvexShape_GetDensity(Handle.Reinterpret()); - - public void SetDensity(float density) => Bindings.JPH_ConvexShape_SetDensity(Handle.Reinterpret(), density); - - #endregion - - #region JPH_Shape - - public void Destroy() => Bindings.JPH_Shape_Destroy(Handle.Reinterpret()); - - public ShapeType GetShapeType() => Bindings.JPH_Shape_GetType(Handle.Reinterpret()); - - public ShapeSubType GetSubType() => Bindings.JPH_Shape_GetSubType(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_Shape_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Shape_SetUserData(Handle.Reinterpret(), userData); - - public bool MustBeStatic() => Bindings.JPH_Shape_MustBeStatic(Handle.Reinterpret()); - - public float3 GetCenterOfMass() => Bindings.JPH_Shape_GetCenterOfMass(Handle.Reinterpret()); - - public AABox GetLocalBounds() => Bindings.JPH_Shape_GetLocalBounds(Handle.Reinterpret()); - - public uint GetSubShapeIDBitsRecursive() => Bindings.JPH_Shape_GetSubShapeIDBitsRecursive(Handle.Reinterpret()); - - public AABox GetWorldSpaceBounds(rmatrix4x4 centerOfMassTransform, float3 scale) => Bindings.JPH_Shape_GetWorldSpaceBounds(Handle.Reinterpret(), centerOfMassTransform, scale); - - public float GetInnerRadius() => Bindings.JPH_Shape_GetInnerRadius(Handle.Reinterpret()); - - public MassProperties GetMassProperties() => Bindings.JPH_Shape_GetMassProperties(Handle.Reinterpret()); - - public PhysicsMaterial GetMaterial(SubShapeID subShapeID) => new PhysicsMaterial { Handle = Bindings.JPH_Shape_GetMaterial(Handle.Reinterpret(), subShapeID) }; - - public float3 GetSurfaceNormal(SubShapeID subShapeID, float3 localPosition) => Bindings.JPH_Shape_GetSurfaceNormal(Handle.Reinterpret(), subShapeID, localPosition); - - public float GetVolume() => Bindings.JPH_Shape_GetVolume(Handle.Reinterpret()); - - public bool IsValidScale(float3 scale) => Bindings.JPH_Shape_IsValidScale(Handle.Reinterpret(), scale); - - public float3 MakeScaleValid(float3 scale) => Bindings.JPH_Shape_MakeScaleValid(Handle.Reinterpret(), scale); - - public Shape ScaleShape(float3 scale) => new Shape { Handle = Bindings.JPH_Shape_ScaleShape(Handle.Reinterpret(), scale) }; - - public bool CastRay(float3 origin, float3 direction, out RayCastResult result) => Bindings.JPH_Shape_CastRay(Handle.Reinterpret(), origin, direction, out result); - - #endregion - - } -} diff --git a/Jolt/Generated/ConvexHullShape.g.cs.meta b/Jolt/Generated/ConvexHullShape.g.cs.meta deleted file mode 100644 index 7629f14..0000000 --- a/Jolt/Generated/ConvexHullShape.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a5815b31160bacb4da94c433f8df7151 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/ConvexHullShapeSettings.g.cs b/Jolt/Generated/ConvexHullShapeSettings.g.cs deleted file mode 100644 index 664858d..0000000 --- a/Jolt/Generated/ConvexHullShapeSettings.g.cs +++ /dev/null @@ -1,49 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct ConvexHullShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(ConvexHullShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is ConvexHullShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(ConvexHullShapeSettings lhs, ConvexHullShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(ConvexHullShapeSettings lhs, ConvexHullShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_ConvexHullShapeSettings - - public ConvexHullShape CreateShape() => new ConvexHullShape { Handle = Bindings.JPH_ConvexHullShapeSettings_CreateShape(Handle) }; - - #endregion - - #region JPH_ConvexShapeSettings - - public float GetDensity() => Bindings.JPH_ConvexShapeSettings_GetDensity(Handle.Reinterpret()); - - public void SetDensity(float density) => Bindings.JPH_ConvexShapeSettings_SetDensity(Handle.Reinterpret(), density); - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle.Reinterpret(), data); - - #endregion - - } -} diff --git a/Jolt/Generated/ConvexHullShapeSettings.g.cs.meta b/Jolt/Generated/ConvexHullShapeSettings.g.cs.meta deleted file mode 100644 index f3fb747..0000000 --- a/Jolt/Generated/ConvexHullShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 163c57f95697c77428ceb9dd6283a455 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/ConvexShape.g.cs b/Jolt/Generated/ConvexShape.g.cs deleted file mode 100644 index f667ad0..0000000 --- a/Jolt/Generated/ConvexShape.g.cs +++ /dev/null @@ -1,75 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct ConvexShape : IEquatable - { - #region IEquatable - - public bool Equals(ConvexShape other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is ConvexShape other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(ConvexShape lhs, ConvexShape rhs) => lhs.Equals(rhs); - - public static bool operator !=(ConvexShape lhs, ConvexShape rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_ConvexShape - - public float GetDensity() => Bindings.JPH_ConvexShape_GetDensity(Handle); - - public void SetDensity(float density) => Bindings.JPH_ConvexShape_SetDensity(Handle, density); - - #endregion - - #region JPH_Shape - - public void Destroy() => Bindings.JPH_Shape_Destroy(Handle.Reinterpret()); - - public ShapeType GetShapeType() => Bindings.JPH_Shape_GetType(Handle.Reinterpret()); - - public ShapeSubType GetSubType() => Bindings.JPH_Shape_GetSubType(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_Shape_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Shape_SetUserData(Handle.Reinterpret(), userData); - - public bool MustBeStatic() => Bindings.JPH_Shape_MustBeStatic(Handle.Reinterpret()); - - public float3 GetCenterOfMass() => Bindings.JPH_Shape_GetCenterOfMass(Handle.Reinterpret()); - - public AABox GetLocalBounds() => Bindings.JPH_Shape_GetLocalBounds(Handle.Reinterpret()); - - public uint GetSubShapeIDBitsRecursive() => Bindings.JPH_Shape_GetSubShapeIDBitsRecursive(Handle.Reinterpret()); - - public AABox GetWorldSpaceBounds(rmatrix4x4 centerOfMassTransform, float3 scale) => Bindings.JPH_Shape_GetWorldSpaceBounds(Handle.Reinterpret(), centerOfMassTransform, scale); - - public float GetInnerRadius() => Bindings.JPH_Shape_GetInnerRadius(Handle.Reinterpret()); - - public MassProperties GetMassProperties() => Bindings.JPH_Shape_GetMassProperties(Handle.Reinterpret()); - - public PhysicsMaterial GetMaterial(SubShapeID subShapeID) => new PhysicsMaterial { Handle = Bindings.JPH_Shape_GetMaterial(Handle.Reinterpret(), subShapeID) }; - - public float3 GetSurfaceNormal(SubShapeID subShapeID, float3 localPosition) => Bindings.JPH_Shape_GetSurfaceNormal(Handle.Reinterpret(), subShapeID, localPosition); - - public float GetVolume() => Bindings.JPH_Shape_GetVolume(Handle.Reinterpret()); - - public bool IsValidScale(float3 scale) => Bindings.JPH_Shape_IsValidScale(Handle.Reinterpret(), scale); - - public float3 MakeScaleValid(float3 scale) => Bindings.JPH_Shape_MakeScaleValid(Handle.Reinterpret(), scale); - - public Shape ScaleShape(float3 scale) => new Shape { Handle = Bindings.JPH_Shape_ScaleShape(Handle.Reinterpret(), scale) }; - - public bool CastRay(float3 origin, float3 direction, out RayCastResult result) => Bindings.JPH_Shape_CastRay(Handle.Reinterpret(), origin, direction, out result); - - #endregion - - } -} diff --git a/Jolt/Generated/ConvexShape.g.cs.meta b/Jolt/Generated/ConvexShape.g.cs.meta deleted file mode 100644 index 66bb1e1..0000000 --- a/Jolt/Generated/ConvexShape.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: aa504423ac84e1040847f6ad9aced5ba -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/CylinderShape.g.cs b/Jolt/Generated/CylinderShape.g.cs deleted file mode 100644 index 79637fb..0000000 --- a/Jolt/Generated/CylinderShape.g.cs +++ /dev/null @@ -1,83 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct CylinderShape : IEquatable - { - #region IEquatable - - public bool Equals(CylinderShape other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is CylinderShape other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(CylinderShape lhs, CylinderShape rhs) => lhs.Equals(rhs); - - public static bool operator !=(CylinderShape lhs, CylinderShape rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_CylinderShape - - public float GetRadius() => Bindings.JPH_CylinderShape_GetRadius(Handle); - - public float GetHalfHeight() => Bindings.JPH_CylinderShape_GetHalfHeight(Handle); - - #endregion - - #region JPH_ConvexShape - - public float GetDensity() => Bindings.JPH_ConvexShape_GetDensity(Handle.Reinterpret()); - - public void SetDensity(float density) => Bindings.JPH_ConvexShape_SetDensity(Handle.Reinterpret(), density); - - #endregion - - #region JPH_Shape - - public void Destroy() => Bindings.JPH_Shape_Destroy(Handle.Reinterpret()); - - public ShapeType GetShapeType() => Bindings.JPH_Shape_GetType(Handle.Reinterpret()); - - public ShapeSubType GetSubType() => Bindings.JPH_Shape_GetSubType(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_Shape_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Shape_SetUserData(Handle.Reinterpret(), userData); - - public bool MustBeStatic() => Bindings.JPH_Shape_MustBeStatic(Handle.Reinterpret()); - - public float3 GetCenterOfMass() => Bindings.JPH_Shape_GetCenterOfMass(Handle.Reinterpret()); - - public AABox GetLocalBounds() => Bindings.JPH_Shape_GetLocalBounds(Handle.Reinterpret()); - - public uint GetSubShapeIDBitsRecursive() => Bindings.JPH_Shape_GetSubShapeIDBitsRecursive(Handle.Reinterpret()); - - public AABox GetWorldSpaceBounds(rmatrix4x4 centerOfMassTransform, float3 scale) => Bindings.JPH_Shape_GetWorldSpaceBounds(Handle.Reinterpret(), centerOfMassTransform, scale); - - public float GetInnerRadius() => Bindings.JPH_Shape_GetInnerRadius(Handle.Reinterpret()); - - public MassProperties GetMassProperties() => Bindings.JPH_Shape_GetMassProperties(Handle.Reinterpret()); - - public PhysicsMaterial GetMaterial(SubShapeID subShapeID) => new PhysicsMaterial { Handle = Bindings.JPH_Shape_GetMaterial(Handle.Reinterpret(), subShapeID) }; - - public float3 GetSurfaceNormal(SubShapeID subShapeID, float3 localPosition) => Bindings.JPH_Shape_GetSurfaceNormal(Handle.Reinterpret(), subShapeID, localPosition); - - public float GetVolume() => Bindings.JPH_Shape_GetVolume(Handle.Reinterpret()); - - public bool IsValidScale(float3 scale) => Bindings.JPH_Shape_IsValidScale(Handle.Reinterpret(), scale); - - public float3 MakeScaleValid(float3 scale) => Bindings.JPH_Shape_MakeScaleValid(Handle.Reinterpret(), scale); - - public Shape ScaleShape(float3 scale) => new Shape { Handle = Bindings.JPH_Shape_ScaleShape(Handle.Reinterpret(), scale) }; - - public bool CastRay(float3 origin, float3 direction, out RayCastResult result) => Bindings.JPH_Shape_CastRay(Handle.Reinterpret(), origin, direction, out result); - - #endregion - - } -} diff --git a/Jolt/Generated/CylinderShape.g.cs.meta b/Jolt/Generated/CylinderShape.g.cs.meta deleted file mode 100644 index 988c91c..0000000 --- a/Jolt/Generated/CylinderShape.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 13d16e54b5b172c468df24ea641a6edc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/CylinderShapeSettings.g.cs b/Jolt/Generated/CylinderShapeSettings.g.cs deleted file mode 100644 index ca9e1eb..0000000 --- a/Jolt/Generated/CylinderShapeSettings.g.cs +++ /dev/null @@ -1,47 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct CylinderShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(CylinderShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is CylinderShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(CylinderShapeSettings lhs, CylinderShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(CylinderShapeSettings lhs, CylinderShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_CylinderShapeSettings - - #endregion - - #region JPH_ConvexShapeSettings - - public float GetDensity() => Bindings.JPH_ConvexShapeSettings_GetDensity(Handle.Reinterpret()); - - public void SetDensity(float density) => Bindings.JPH_ConvexShapeSettings_SetDensity(Handle.Reinterpret(), density); - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle.Reinterpret(), data); - - #endregion - - } -} diff --git a/Jolt/Generated/CylinderShapeSettings.g.cs.meta b/Jolt/Generated/CylinderShapeSettings.g.cs.meta deleted file mode 100644 index f891a42..0000000 --- a/Jolt/Generated/CylinderShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4edbe1d6178a96d40a16e58e6b4f2fb7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/DistanceConstraint.g.cs b/Jolt/Generated/DistanceConstraint.g.cs deleted file mode 100644 index 6df52cf..0000000 --- a/Jolt/Generated/DistanceConstraint.g.cs +++ /dev/null @@ -1,99 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct DistanceConstraint : IEquatable - { - #region IEquatable - - public bool Equals(DistanceConstraint other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is DistanceConstraint other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(DistanceConstraint lhs, DistanceConstraint rhs) => lhs.Equals(rhs); - - public static bool operator !=(DistanceConstraint lhs, DistanceConstraint rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_DistanceConstraint - - public void GetSettings(ref DistanceConstraintSettings settings) => Bindings.JPH_DistanceConstraint_GetSettings(Handle, ref settings); - - public void SetDistance(float minDistance, float maxDistance) => Bindings.JPH_DistanceConstraint_SetDistance(Handle, minDistance, maxDistance); - - public float GetMinDistance() => Bindings.JPH_DistanceConstraint_GetMinDistance(Handle); - - public float GetMaxDistance() => Bindings.JPH_DistanceConstraint_GetMaxDistance(Handle); - - public SpringSettings GetLimitsSpringSettings() => Bindings.JPH_DistanceConstraint_GetLimitsSpringSettings(Handle); - - public void SetLimitsSpringSettings(SpringSettings settings) => Bindings.JPH_DistanceConstraint_SetLimitsSpringSettings(Handle, settings); - - public float GetTotalLambdaPosition() => Bindings.JPH_DistanceConstraint_GetTotalLambdaPosition(Handle); - - #endregion - - #region JPH_TwoBodyConstraint - - public Body GetBody1() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody1(Handle.Reinterpret()) }; - - public Body GetBody2() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody2(Handle.Reinterpret()) }; - - public float4x4 GetConstraintToBody1Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody1Matrix(Handle.Reinterpret()); - - public float4x4 GetConstraintToBody2Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody2Matrix(Handle.Reinterpret()); - - #endregion - - #region JPH_Constraint - - public void Destroy() => Bindings.JPH_Constraint_Destroy(Handle.Reinterpret()); - - public ConstraintType GetShapeType() => Bindings.JPH_Constraint_GetType(Handle.Reinterpret()); - - public ConstraintSubType GetSubType() => Bindings.JPH_Constraint_GetSubType(Handle.Reinterpret()); - - public uint GetConstraintPriority() => Bindings.JPH_Constraint_GetConstraintPriority(Handle.Reinterpret()); - - public void SetConstraintPriority(uint priority) => Bindings.JPH_Constraint_SetConstraintPriority(Handle.Reinterpret(), priority); - - public uint GetNumVelocityStepsOverride() => Bindings.JPH_Constraint_GetNumVelocityStepsOverride(Handle.Reinterpret()); - - public void SetNumVelocityStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumVelocityStepsOverride(Handle.Reinterpret(), value); - - public uint GetNumPositionStepsOverride() => Bindings.JPH_Constraint_GetNumPositionStepsOverride(Handle.Reinterpret()); - - public void SetNumPositionStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumPositionStepsOverride(Handle.Reinterpret(), value); - - public bool GetEnabled() => Bindings.JPH_Constraint_GetEnabled(Handle.Reinterpret()); - - public void SetEnabled(bool enabled) => Bindings.JPH_Constraint_SetEnabled(Handle.Reinterpret(), enabled); - - public ulong GetUserData() => Bindings.JPH_Constraint_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Constraint_SetUserData(Handle.Reinterpret(), userData); - - public void NotifyShapeChanged(BodyID bodyID, float3 deltaCOM) => Bindings.JPH_Constraint_NotifyShapeChanged(Handle.Reinterpret(), bodyID, deltaCOM); - - public void ResetWarmStart() => Bindings.JPH_Constraint_ResetWarmStart(Handle.Reinterpret()); - - public bool IsActive() => Bindings.JPH_Constraint_IsActive(Handle.Reinterpret()); - - public void SetupVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SetupVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public void WarmStartVelocityConstraint(float warmStartImpulseRatio) => Bindings.JPH_Constraint_WarmStartVelocityConstraint(Handle.Reinterpret(), warmStartImpulseRatio); - - public bool SolveVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SolveVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public bool SolvePositionConstraint(float deltaTime, float baumgarte) => Bindings.JPH_Constraint_SolvePositionConstraint(Handle.Reinterpret(), deltaTime, baumgarte); - - #endregion - - } -} diff --git a/Jolt/Generated/DistanceConstraint.g.cs.meta b/Jolt/Generated/DistanceConstraint.g.cs.meta deleted file mode 100644 index 3e03d97..0000000 --- a/Jolt/Generated/DistanceConstraint.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 27d6b7c5029e28640ad5233a3f10cf92 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/FixedConstraint.g.cs b/Jolt/Generated/FixedConstraint.g.cs deleted file mode 100644 index 8620ae3..0000000 --- a/Jolt/Generated/FixedConstraint.g.cs +++ /dev/null @@ -1,91 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct FixedConstraint : IEquatable - { - #region IEquatable - - public bool Equals(FixedConstraint other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is FixedConstraint other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(FixedConstraint lhs, FixedConstraint rhs) => lhs.Equals(rhs); - - public static bool operator !=(FixedConstraint lhs, FixedConstraint rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_FixedConstraint - - public void GetSettings(ref FixedConstraintSettings settings) => Bindings.JPH_FixedConstraint_GetSettings(Handle, ref settings); - - public float3 GetTotalLambdaPosition() => Bindings.JPH_FixedConstraint_GetTotalLambdaPosition(Handle); - - public float3 GetTotalLambdaRotation() => Bindings.JPH_FixedConstraint_GetTotalLambdaRotation(Handle); - - #endregion - - #region JPH_TwoBodyConstraint - - public Body GetBody1() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody1(Handle.Reinterpret()) }; - - public Body GetBody2() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody2(Handle.Reinterpret()) }; - - public float4x4 GetConstraintToBody1Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody1Matrix(Handle.Reinterpret()); - - public float4x4 GetConstraintToBody2Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody2Matrix(Handle.Reinterpret()); - - #endregion - - #region JPH_Constraint - - public void Destroy() => Bindings.JPH_Constraint_Destroy(Handle.Reinterpret()); - - public ConstraintType GetShapeType() => Bindings.JPH_Constraint_GetType(Handle.Reinterpret()); - - public ConstraintSubType GetSubType() => Bindings.JPH_Constraint_GetSubType(Handle.Reinterpret()); - - public uint GetConstraintPriority() => Bindings.JPH_Constraint_GetConstraintPriority(Handle.Reinterpret()); - - public void SetConstraintPriority(uint priority) => Bindings.JPH_Constraint_SetConstraintPriority(Handle.Reinterpret(), priority); - - public uint GetNumVelocityStepsOverride() => Bindings.JPH_Constraint_GetNumVelocityStepsOverride(Handle.Reinterpret()); - - public void SetNumVelocityStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumVelocityStepsOverride(Handle.Reinterpret(), value); - - public uint GetNumPositionStepsOverride() => Bindings.JPH_Constraint_GetNumPositionStepsOverride(Handle.Reinterpret()); - - public void SetNumPositionStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumPositionStepsOverride(Handle.Reinterpret(), value); - - public bool GetEnabled() => Bindings.JPH_Constraint_GetEnabled(Handle.Reinterpret()); - - public void SetEnabled(bool enabled) => Bindings.JPH_Constraint_SetEnabled(Handle.Reinterpret(), enabled); - - public ulong GetUserData() => Bindings.JPH_Constraint_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Constraint_SetUserData(Handle.Reinterpret(), userData); - - public void NotifyShapeChanged(BodyID bodyID, float3 deltaCOM) => Bindings.JPH_Constraint_NotifyShapeChanged(Handle.Reinterpret(), bodyID, deltaCOM); - - public void ResetWarmStart() => Bindings.JPH_Constraint_ResetWarmStart(Handle.Reinterpret()); - - public bool IsActive() => Bindings.JPH_Constraint_IsActive(Handle.Reinterpret()); - - public void SetupVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SetupVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public void WarmStartVelocityConstraint(float warmStartImpulseRatio) => Bindings.JPH_Constraint_WarmStartVelocityConstraint(Handle.Reinterpret(), warmStartImpulseRatio); - - public bool SolveVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SolveVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public bool SolvePositionConstraint(float deltaTime, float baumgarte) => Bindings.JPH_Constraint_SolvePositionConstraint(Handle.Reinterpret(), deltaTime, baumgarte); - - #endregion - - } -} diff --git a/Jolt/Generated/FixedConstraint.g.cs.meta b/Jolt/Generated/FixedConstraint.g.cs.meta deleted file mode 100644 index 09d41f1..0000000 --- a/Jolt/Generated/FixedConstraint.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 43b85bfb774924244a2d24741c789307 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/HingeConstraint.g.cs b/Jolt/Generated/HingeConstraint.g.cs deleted file mode 100644 index 56cc3e2..0000000 --- a/Jolt/Generated/HingeConstraint.g.cs +++ /dev/null @@ -1,141 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct HingeConstraint : IEquatable - { - #region IEquatable - - public bool Equals(HingeConstraint other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is HingeConstraint other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(HingeConstraint lhs, HingeConstraint rhs) => lhs.Equals(rhs); - - public static bool operator !=(HingeConstraint lhs, HingeConstraint rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_HingeConstraint - - public HingeConstraintSettings GetSettings() => Bindings.JPH_HingeConstraint_GetSettings(Handle); - - public float3 GetLocalSpacePoint1() => Bindings.JPH_HingeConstraint_GetLocalSpacePoint1(Handle); - - public float3 GetLocalSpacePoint2() => Bindings.JPH_HingeConstraint_GetLocalSpacePoint2(Handle); - - public float3 GetLocalSpaceHingeAxis1() => Bindings.JPH_HingeConstraint_GetLocalSpaceHingeAxis1(Handle); - - public float3 GetLocalSpaceHingeAxis2() => Bindings.JPH_HingeConstraint_GetLocalSpaceHingeAxis2(Handle); - - public float3 GetLocalSpaceNormalAxis1() => Bindings.JPH_HingeConstraint_GetLocalSpaceNormalAxis1(Handle); - - public float3 GetLocalSpaceNormalAxis2() => Bindings.JPH_HingeConstraint_GetLocalSpaceNormalAxis2(Handle); - - public float GetCurrentAngle() => Bindings.JPH_HingeConstraint_GetCurrentAngle(Handle); - - public void SetMaxFrictionTorque(float frictionTorque) => Bindings.JPH_HingeConstraint_SetMaxFrictionTorque(Handle, frictionTorque); - - public float GetMaxFrictionTorque() => Bindings.JPH_HingeConstraint_GetMaxFrictionTorque(Handle); - - public void SetMotorSettings(MotorSettings settings) => Bindings.JPH_HingeConstraint_SetMotorSettings(Handle, settings); - - public MotorSettings GetMotorSettings() => Bindings.JPH_HingeConstraint_GetMotorSettings(Handle); - - public void SetMotorState(MotorState state) => Bindings.JPH_HingeConstraint_SetMotorState(Handle, state); - - public MotorState GetMotorState() => Bindings.JPH_HingeConstraint_GetMotorState(Handle); - - public void SetTargetAngularVelocity(float angularVelocity) => Bindings.JPH_HingeConstraint_SetTargetAngularVelocity(Handle, angularVelocity); - - public float GetTargetAngularVelocity() => Bindings.JPH_HingeConstraint_GetTargetAngularVelocity(Handle); - - public void SetTargetAngle(float angle) => Bindings.JPH_HingeConstraint_SetTargetAngle(Handle, angle); - - public float GetTargetAngle() => Bindings.JPH_HingeConstraint_GetTargetAngle(Handle); - - public void SetLimits(float min, float max) => Bindings.JPH_HingeConstraint_SetLimits(Handle, min, max); - - public float GetLimitsMin() => Bindings.JPH_HingeConstraint_GetLimitsMin(Handle); - - public float GetLimitsMax() => Bindings.JPH_HingeConstraint_GetLimitsMax(Handle); - - public bool HasLimits() => Bindings.JPH_HingeConstraint_HasLimits(Handle); - - public SpringSettings GetLimitsSpringSettings() => Bindings.JPH_HingeConstraint_GetLimitsSpringSettings(Handle); - - public void SetLimitsSpringSettings(SpringSettings settings) => Bindings.JPH_HingeConstraint_SetLimitsSpringSettings(Handle, settings); - - public float3 GetTotalLambdaPosition() => Bindings.JPH_HingeConstraint_GetTotalLambdaPosition(Handle); - - public float2 GetTotalLambdaRotation() => Bindings.JPH_HingeConstraint_GetTotalLambdaRotation(Handle); - - public float GetTotalLambdaRotationLimits() => Bindings.JPH_HingeConstraint_GetTotalLambdaRotationLimits(Handle); - - public float GetTotalLambdaMotor() => Bindings.JPH_HingeConstraint_GetTotalLambdaMotor(Handle); - - #endregion - - #region JPH_TwoBodyConstraint - - public Body GetBody1() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody1(Handle.Reinterpret()) }; - - public Body GetBody2() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody2(Handle.Reinterpret()) }; - - public float4x4 GetConstraintToBody1Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody1Matrix(Handle.Reinterpret()); - - public float4x4 GetConstraintToBody2Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody2Matrix(Handle.Reinterpret()); - - #endregion - - #region JPH_Constraint - - public void Destroy() => Bindings.JPH_Constraint_Destroy(Handle.Reinterpret()); - - public ConstraintType GetShapeType() => Bindings.JPH_Constraint_GetType(Handle.Reinterpret()); - - public ConstraintSubType GetSubType() => Bindings.JPH_Constraint_GetSubType(Handle.Reinterpret()); - - public uint GetConstraintPriority() => Bindings.JPH_Constraint_GetConstraintPriority(Handle.Reinterpret()); - - public void SetConstraintPriority(uint priority) => Bindings.JPH_Constraint_SetConstraintPriority(Handle.Reinterpret(), priority); - - public uint GetNumVelocityStepsOverride() => Bindings.JPH_Constraint_GetNumVelocityStepsOverride(Handle.Reinterpret()); - - public void SetNumVelocityStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumVelocityStepsOverride(Handle.Reinterpret(), value); - - public uint GetNumPositionStepsOverride() => Bindings.JPH_Constraint_GetNumPositionStepsOverride(Handle.Reinterpret()); - - public void SetNumPositionStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumPositionStepsOverride(Handle.Reinterpret(), value); - - public bool GetEnabled() => Bindings.JPH_Constraint_GetEnabled(Handle.Reinterpret()); - - public void SetEnabled(bool enabled) => Bindings.JPH_Constraint_SetEnabled(Handle.Reinterpret(), enabled); - - public ulong GetUserData() => Bindings.JPH_Constraint_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Constraint_SetUserData(Handle.Reinterpret(), userData); - - public void NotifyShapeChanged(BodyID bodyID, float3 deltaCOM) => Bindings.JPH_Constraint_NotifyShapeChanged(Handle.Reinterpret(), bodyID, deltaCOM); - - public void ResetWarmStart() => Bindings.JPH_Constraint_ResetWarmStart(Handle.Reinterpret()); - - public bool IsActive() => Bindings.JPH_Constraint_IsActive(Handle.Reinterpret()); - - public void SetupVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SetupVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public void WarmStartVelocityConstraint(float warmStartImpulseRatio) => Bindings.JPH_Constraint_WarmStartVelocityConstraint(Handle.Reinterpret(), warmStartImpulseRatio); - - public bool SolveVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SolveVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public bool SolvePositionConstraint(float deltaTime, float baumgarte) => Bindings.JPH_Constraint_SolvePositionConstraint(Handle.Reinterpret(), deltaTime, baumgarte); - - #endregion - - } -} diff --git a/Jolt/Generated/HingeConstraint.g.cs.meta b/Jolt/Generated/HingeConstraint.g.cs.meta deleted file mode 100644 index 1c12d87..0000000 --- a/Jolt/Generated/HingeConstraint.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 830560d925aefa145b92717117e34abf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/JobSystem.g.cs b/Jolt/Generated/JobSystem.g.cs deleted file mode 100644 index c2cc9ae..0000000 --- a/Jolt/Generated/JobSystem.g.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct JobSystem : IEquatable - { - #region IEquatable - - public bool Equals(JobSystem other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is JobSystem other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(JobSystem lhs, JobSystem rhs) => lhs.Equals(rhs); - - public static bool operator !=(JobSystem lhs, JobSystem rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_JobSystem - - public void Destroy() => Bindings.JPH_JobSystem_Destroy(Handle); - - #endregion - - } -} diff --git a/Jolt/Generated/JobSystem.g.cs.meta b/Jolt/Generated/JobSystem.g.cs.meta deleted file mode 100644 index 2bf832c..0000000 --- a/Jolt/Generated/JobSystem.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: df96e75dc9594fc49a24866471935ff3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/MeshShape.g.cs b/Jolt/Generated/MeshShape.g.cs deleted file mode 100644 index b713d63..0000000 --- a/Jolt/Generated/MeshShape.g.cs +++ /dev/null @@ -1,67 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct MeshShape : IEquatable - { - #region IEquatable - - public bool Equals(MeshShape other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is MeshShape other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(MeshShape lhs, MeshShape rhs) => lhs.Equals(rhs); - - public static bool operator !=(MeshShape lhs, MeshShape rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_Shape - - public void Destroy() => Bindings.JPH_Shape_Destroy(Handle.Reinterpret()); - - public ShapeType GetShapeType() => Bindings.JPH_Shape_GetType(Handle.Reinterpret()); - - public ShapeSubType GetSubType() => Bindings.JPH_Shape_GetSubType(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_Shape_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Shape_SetUserData(Handle.Reinterpret(), userData); - - public bool MustBeStatic() => Bindings.JPH_Shape_MustBeStatic(Handle.Reinterpret()); - - public float3 GetCenterOfMass() => Bindings.JPH_Shape_GetCenterOfMass(Handle.Reinterpret()); - - public AABox GetLocalBounds() => Bindings.JPH_Shape_GetLocalBounds(Handle.Reinterpret()); - - public uint GetSubShapeIDBitsRecursive() => Bindings.JPH_Shape_GetSubShapeIDBitsRecursive(Handle.Reinterpret()); - - public AABox GetWorldSpaceBounds(rmatrix4x4 centerOfMassTransform, float3 scale) => Bindings.JPH_Shape_GetWorldSpaceBounds(Handle.Reinterpret(), centerOfMassTransform, scale); - - public float GetInnerRadius() => Bindings.JPH_Shape_GetInnerRadius(Handle.Reinterpret()); - - public MassProperties GetMassProperties() => Bindings.JPH_Shape_GetMassProperties(Handle.Reinterpret()); - - public PhysicsMaterial GetMaterial(SubShapeID subShapeID) => new PhysicsMaterial { Handle = Bindings.JPH_Shape_GetMaterial(Handle.Reinterpret(), subShapeID) }; - - public float3 GetSurfaceNormal(SubShapeID subShapeID, float3 localPosition) => Bindings.JPH_Shape_GetSurfaceNormal(Handle.Reinterpret(), subShapeID, localPosition); - - public float GetVolume() => Bindings.JPH_Shape_GetVolume(Handle.Reinterpret()); - - public bool IsValidScale(float3 scale) => Bindings.JPH_Shape_IsValidScale(Handle.Reinterpret(), scale); - - public float3 MakeScaleValid(float3 scale) => Bindings.JPH_Shape_MakeScaleValid(Handle.Reinterpret(), scale); - - public Shape ScaleShape(float3 scale) => new Shape { Handle = Bindings.JPH_Shape_ScaleShape(Handle.Reinterpret(), scale) }; - - public bool CastRay(float3 origin, float3 direction, out RayCastResult result) => Bindings.JPH_Shape_CastRay(Handle.Reinterpret(), origin, direction, out result); - - #endregion - - } -} diff --git a/Jolt/Generated/MeshShape.g.cs.meta b/Jolt/Generated/MeshShape.g.cs.meta deleted file mode 100644 index f102c13..0000000 --- a/Jolt/Generated/MeshShape.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2b65740848f8c98489033e507087b73e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/MeshShapeSettings.g.cs b/Jolt/Generated/MeshShapeSettings.g.cs deleted file mode 100644 index 4252a03..0000000 --- a/Jolt/Generated/MeshShapeSettings.g.cs +++ /dev/null @@ -1,43 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct MeshShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(MeshShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is MeshShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(MeshShapeSettings lhs, MeshShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(MeshShapeSettings lhs, MeshShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_MeshShapeSettings - - public void Sanitize() => Bindings.JPH_MeshShapeSettings_Sanitize(Handle); - - public MeshShape CreateShape() => new MeshShape { Handle = Bindings.JPH_MeshShapeSettings_CreateShape(Handle) }; - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle.Reinterpret(), data); - - #endregion - - } -} diff --git a/Jolt/Generated/MeshShapeSettings.g.cs.meta b/Jolt/Generated/MeshShapeSettings.g.cs.meta deleted file mode 100644 index f646464..0000000 --- a/Jolt/Generated/MeshShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9d670f89e42881441bed73e4b05a83ef -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/MotionProperties.g.cs b/Jolt/Generated/MotionProperties.g.cs deleted file mode 100644 index 44b7491..0000000 --- a/Jolt/Generated/MotionProperties.g.cs +++ /dev/null @@ -1,51 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct MotionProperties : IEquatable - { - #region IEquatable - - public bool Equals(MotionProperties other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is MotionProperties other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(MotionProperties lhs, MotionProperties rhs) => lhs.Equals(rhs); - - public static bool operator !=(MotionProperties lhs, MotionProperties rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_MotionProperties - - public AllowedDOFs GetAllowedDOFs() => Bindings.JPH_MotionProperties_GetAllowedDOFs(Handle); - - public void SetLinearDamping(float damping) => Bindings.JPH_MotionProperties_SetLinearDamping(Handle, damping); - - public float GetLinearDamping() => Bindings.JPH_MotionProperties_GetLinearDamping(Handle); - - public void SetAngularDamping(float damping) => Bindings.JPH_MotionProperties_SetAngularDamping(Handle, damping); - - public float GetAngularDamping() => Bindings.JPH_MotionProperties_GetAngularDamping(Handle); - - public void SetMassProperties(AllowedDOFs allowedDOFs, MassProperties massProperties) => Bindings.JPH_MotionProperties_SetMassProperties(Handle, allowedDOFs, massProperties); - - public float GetInverseMassUnchecked() => Bindings.JPH_MotionProperties_GetInverseMassUnchecked(Handle); - - public void SetInverseMass(float inverseMass) => Bindings.JPH_MotionProperties_SetInverseMass(Handle, inverseMass); - - public float3 GetInverseInertiaDiagonal() => Bindings.JPH_MotionProperties_GetInverseInertiaDiagonal(Handle); - - public quaternion GetInertiaRotation() => Bindings.JPH_MotionProperties_GetInertiaRotation(Handle); - - public void SetInverseInertia(float3 diagonal, quaternion rotation) => Bindings.JPH_MotionProperties_SetInverseInertia(Handle, diagonal, rotation); - - #endregion - - } -} diff --git a/Jolt/Generated/MotionProperties.g.cs.meta b/Jolt/Generated/MotionProperties.g.cs.meta deleted file mode 100644 index 6b1b2e4..0000000 --- a/Jolt/Generated/MotionProperties.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a52424ab9dccc8e438aac8a215c56932 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/MutableCompoundShapeSettings.g.cs b/Jolt/Generated/MutableCompoundShapeSettings.g.cs deleted file mode 100644 index e19fa96..0000000 --- a/Jolt/Generated/MutableCompoundShapeSettings.g.cs +++ /dev/null @@ -1,47 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct MutableCompoundShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(MutableCompoundShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is MutableCompoundShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(MutableCompoundShapeSettings lhs, MutableCompoundShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(MutableCompoundShapeSettings lhs, MutableCompoundShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_MutableCompoundShapeSettings - - #endregion - - #region JPH_CompoundShapeSettings - - public void AddShape(float3 position, quaternion rotation, ShapeSettings settings, uint userData) => Bindings.JPH_CompoundShapeSettings_AddShape(Handle.Reinterpret(), position, rotation, settings.Handle, userData); - - public void AddShape(float3 position, quaternion rotation, Shape shape, uint userData) => Bindings.JPH_CompoundShapeSettings_AddShape(Handle.Reinterpret(), position, rotation, shape.Handle, userData); - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle.Reinterpret(), data); - - #endregion - - } -} diff --git a/Jolt/Generated/MutableCompoundShapeSettings.g.cs.meta b/Jolt/Generated/MutableCompoundShapeSettings.g.cs.meta deleted file mode 100644 index 0d1d8b1..0000000 --- a/Jolt/Generated/MutableCompoundShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7cd072c175930b74ea23293084c62f63 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/NarrowPhaseQuery.g.cs b/Jolt/Generated/NarrowPhaseQuery.g.cs deleted file mode 100644 index bbe2dc2..0000000 --- a/Jolt/Generated/NarrowPhaseQuery.g.cs +++ /dev/null @@ -1,47 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct NarrowPhaseQuery : IEquatable - { - #region IEquatable - - public bool Equals(NarrowPhaseQuery other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is NarrowPhaseQuery other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(NarrowPhaseQuery lhs, NarrowPhaseQuery rhs) => lhs.Equals(rhs); - - public static bool operator !=(NarrowPhaseQuery lhs, NarrowPhaseQuery rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_NarrowPhaseQuery - - public bool CastRay(rvec3 origin, float3 direction, out RayCastResult hit, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter, BodyFilter bodyFilter) => Bindings.JPH_NarrowPhaseQuery_CastRay(Handle, origin, direction, out hit, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle, bodyFilter.Handle); - - public bool CastRay(rvec3 origin, float3 direction, RayCastSettings settings, NarrowPhaseQuery.CastRayCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter, BodyFilter bodyFilter, ShapeFilter shapeFilter) => Bindings.JPH_NarrowPhaseQuery_CastRay(Handle, origin, direction, settings, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle, bodyFilter.Handle, shapeFilter.Handle); - - public bool CastRay(rvec3 origin, float3 direction, RayCastSettings settings, CollisionCollectorType collector, NarrowPhaseQuery.CastRayCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter, BodyFilter bodyFilter, ShapeFilter shapeFilter) => Bindings.JPH_NarrowPhaseQuery_CastRay(Handle, origin, direction, settings, collector, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle, bodyFilter.Handle, shapeFilter.Handle); - - public bool CollidePoint(rvec3 point, NarrowPhaseQuery.CollidePointCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter, BodyFilter bodyFilter, ShapeFilter shapeFilter) => Bindings.JPH_NarrowPhaseQuery_CollidePoint(Handle, point, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle, bodyFilter.Handle, shapeFilter.Handle); - - public bool CollidePoint2(rvec3 point, CollisionCollectorType collector, NarrowPhaseQuery.CollidePointCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter, BodyFilter bodyFilter, ShapeFilter shapeFilter) => Bindings.JPH_NarrowPhaseQuery_CollidePoint2(Handle, point, collector, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle, bodyFilter.Handle, shapeFilter.Handle); - - public bool CollideShape(Shape shape, float3 scale, rmatrix4x4 com, CollideShapeSettings settings, rvec3 offset, NarrowPhaseQuery.CollideShapeCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter, BodyFilter bodyFilter, ShapeFilter shapeFilter) => Bindings.JPH_NarrowPhaseQuery_CollideShape(Handle, shape.Handle, scale, com, settings, offset, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle, bodyFilter.Handle, shapeFilter.Handle); - - public bool CollideShape(Shape shape, float3 scale, rmatrix4x4 com, CollideShapeSettings settings, rvec3 offset, CollisionCollectorType collector, NarrowPhaseQuery.CollideShapeCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter, BodyFilter bodyFilter, ShapeFilter shapeFilter) => Bindings.JPH_NarrowPhaseQuery_CollideShape(Handle, shape.Handle, scale, com, settings, offset, collector, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle, bodyFilter.Handle, shapeFilter.Handle); - - public bool CastShape(Shape shape, rmatrix4x4 worldTransform, float3 direction, ShapeCastSettings settings, rvec3 baseOffset, NarrowPhaseQuery.CollideShapeCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter, BodyFilter bodyFilter, ShapeFilter shapeFilter) => Bindings.JPH_NarrowPhaseQuery_CastShape(Handle, shape.Handle, worldTransform, direction, settings, baseOffset, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle, bodyFilter.Handle, shapeFilter.Handle); - - public bool CastShape(Shape shape, rmatrix4x4 worldTransform, float3 direction, ShapeCastSettings settings, rvec3 baseOffset, CollisionCollectorType collector, NarrowPhaseQuery.CollideShapeCallback callback, BroadPhaseLayerFilter broadPhaseLayerFilter, ObjectLayerFilter objectLayerFilter, BodyFilter bodyFilter, ShapeFilter shapeFilter) => Bindings.JPH_NarrowPhaseQuery_CastShape(Handle, shape.Handle, worldTransform, direction, settings, baseOffset, collector, callback, broadPhaseLayerFilter.Handle, objectLayerFilter.Handle, bodyFilter.Handle, shapeFilter.Handle); - - #endregion - - } -} diff --git a/Jolt/Generated/NarrowPhaseQuery.g.cs.meta b/Jolt/Generated/NarrowPhaseQuery.g.cs.meta deleted file mode 100644 index 6bdd44f..0000000 --- a/Jolt/Generated/NarrowPhaseQuery.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b6a94144b1f882d408a32a10fc6889ac -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/ObjectLayerFilter.g.cs b/Jolt/Generated/ObjectLayerFilter.g.cs deleted file mode 100644 index 52d53bd..0000000 --- a/Jolt/Generated/ObjectLayerFilter.g.cs +++ /dev/null @@ -1,33 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct ObjectLayerFilter : IEquatable - { - #region IEquatable - - public bool Equals(ObjectLayerFilter other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is ObjectLayerFilter other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(ObjectLayerFilter lhs, ObjectLayerFilter rhs) => lhs.Equals(rhs); - - public static bool operator !=(ObjectLayerFilter lhs, ObjectLayerFilter rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_ObjectLayerFilter - - public void SetProcs() => Bindings.JPH_ObjectLayerFilter_SetProcs(Handle); - - public void Destroy() => Bindings.JPH_ObjectLayerFilter_Destroy(Handle); - - #endregion - - } -} diff --git a/Jolt/Generated/ObjectLayerFilter.g.cs.meta b/Jolt/Generated/ObjectLayerFilter.g.cs.meta deleted file mode 100644 index be007e7..0000000 --- a/Jolt/Generated/ObjectLayerFilter.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5c929f4230b591648988156a99e450dd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/ObjectLayerPairFilterMask.g.cs b/Jolt/Generated/ObjectLayerPairFilterMask.g.cs deleted file mode 100644 index c57366b..0000000 --- a/Jolt/Generated/ObjectLayerPairFilterMask.g.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct ObjectLayerPairFilterMask : IEquatable - { - #region IEquatable - - public bool Equals(ObjectLayerPairFilterMask other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is ObjectLayerPairFilterMask other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(ObjectLayerPairFilterMask lhs, ObjectLayerPairFilterMask rhs) => lhs.Equals(rhs); - - public static bool operator !=(ObjectLayerPairFilterMask lhs, ObjectLayerPairFilterMask rhs) => !lhs.Equals(rhs); - - #endregion - - } -} diff --git a/Jolt/Generated/ObjectLayerPairFilterMask.g.cs.meta b/Jolt/Generated/ObjectLayerPairFilterMask.g.cs.meta deleted file mode 100644 index df42c77..0000000 --- a/Jolt/Generated/ObjectLayerPairFilterMask.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6edecda0e36ee484ca77b86f7da86cfb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/PhysicsMaterial.g.cs b/Jolt/Generated/PhysicsMaterial.g.cs deleted file mode 100644 index 18d7b89..0000000 --- a/Jolt/Generated/PhysicsMaterial.g.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct PhysicsMaterial : IEquatable - { - #region IEquatable - - public bool Equals(PhysicsMaterial other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is PhysicsMaterial other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(PhysicsMaterial lhs, PhysicsMaterial rhs) => lhs.Equals(rhs); - - public static bool operator !=(PhysicsMaterial lhs, PhysicsMaterial rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_PhysicsMaterial - - public void Destroy() => Bindings.JPH_PhysicsMaterial_Destroy(Handle); - - public string GetDebugName() => Bindings.JPH_PhysicsMaterial_GetDebugName(Handle); - - public uint GetDebugColor() => Bindings.JPH_PhysicsMaterial_GetDebugColor(Handle); - - #endregion - - } -} diff --git a/Jolt/Generated/PhysicsMaterial.g.cs.meta b/Jolt/Generated/PhysicsMaterial.g.cs.meta deleted file mode 100644 index aea5ae6..0000000 --- a/Jolt/Generated/PhysicsMaterial.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fa3a0707890cd4344958fd41ca79422a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/PhysicsSystem.g.cs b/Jolt/Generated/PhysicsSystem.g.cs deleted file mode 100644 index 0ce0591..0000000 --- a/Jolt/Generated/PhysicsSystem.g.cs +++ /dev/null @@ -1,69 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct PhysicsSystem : IEquatable - { - #region IEquatable - - public bool Equals(PhysicsSystem other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is PhysicsSystem other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(PhysicsSystem lhs, PhysicsSystem rhs) => lhs.Equals(rhs); - - public static bool operator !=(PhysicsSystem lhs, PhysicsSystem rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_PhysicsSystem - - public void Destroy() => Bindings.JPH_PhysicsSystem_Destroy(Handle); - - public void SetPhysicsSettings(ref PhysicsSettings settings) => Bindings.JPH_PhysicsSystem_SetPhysicsSettings(Handle, ref settings); - - public void GetPhysicsSettings(ref PhysicsSettings settings) => Bindings.JPH_PhysicsSystem_GetPhysicsSettings(Handle, ref settings); - - public void OptimizeBroadPhase() => Bindings.JPH_PhysicsSystem_OptimizeBroadPhase(Handle); - - public BodyInterface GetBodyInterface() => new BodyInterface { Handle = Bindings.JPH_PhysicsSystem_GetBodyInterface(Handle) }; - - public BodyInterface GetBodyInterfaceNoLock() => new BodyInterface { Handle = Bindings.JPH_PhysicsSystem_GetBodyInterfaceNoLock(Handle) }; - - public BodyLockInterface GetBodyLockInterface() => new BodyLockInterface { Handle = Bindings.JPH_PhysicsSystem_GetBodyLockInterface(Handle) }; - - public BodyLockInterface GetBodyLockInterfaceNoLock() => new BodyLockInterface { Handle = Bindings.JPH_PhysicsSystem_GetBodyLockInterfaceNoLock(Handle) }; - - public BroadPhaseQuery GetBroadPhaseQuery() => new BroadPhaseQuery { Handle = Bindings.JPH_PhysicsSystem_GetBroadPhaseQuery(Handle) }; - - public NarrowPhaseQuery GetNarrowPhaseQuery() => new NarrowPhaseQuery { Handle = Bindings.JPH_PhysicsSystem_GetNarrowPhaseQuery(Handle) }; - - public NarrowPhaseQuery GetNarrowPhaseQueryNoLock() => new NarrowPhaseQuery { Handle = Bindings.JPH_PhysicsSystem_GetNarrowPhaseQueryNoLock(Handle) }; - - public bool WereBodiesInContact(BodyID a, BodyID b) => Bindings.JPH_PhysicsSystem_WereBodiesInContact(Handle, a, b); - - public uint GetNumBodies() => Bindings.JPH_PhysicsSystem_GetNumBodies(Handle); - - public uint GetNumActiveBodies(BodyType type) => Bindings.JPH_PhysicsSystem_GetNumActiveBodies(Handle, type); - - public uint GetMaxBodies() => Bindings.JPH_PhysicsSystem_GetMaxBodies(Handle); - - public uint GetNumConstraints() => Bindings.JPH_PhysicsSystem_GetNumConstraints(Handle); - - public void SetGravity(float3 gravity) => Bindings.JPH_PhysicsSystem_SetGravity(Handle, gravity); - - public float3 GetGravity() => Bindings.JPH_PhysicsSystem_GetGravity(Handle); - - public void AddConstraint(Constraint constraint) => Bindings.JPH_PhysicsSystem_AddConstraint(Handle, constraint.Handle); - - public void RemoveConstraint(Constraint constraint) => Bindings.JPH_PhysicsSystem_RemoveConstraint(Handle, constraint.Handle); - - #endregion - - } -} diff --git a/Jolt/Generated/PhysicsSystem.g.cs.meta b/Jolt/Generated/PhysicsSystem.g.cs.meta deleted file mode 100644 index 5a4f6c3..0000000 --- a/Jolt/Generated/PhysicsSystem.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a7085636cd11a5a48a72f281e7fceb63 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/PlaneShape.g.cs b/Jolt/Generated/PlaneShape.g.cs deleted file mode 100644 index 47355cd..0000000 --- a/Jolt/Generated/PlaneShape.g.cs +++ /dev/null @@ -1,75 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct PlaneShape : IEquatable - { - #region IEquatable - - public bool Equals(PlaneShape other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is PlaneShape other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(PlaneShape lhs, PlaneShape rhs) => lhs.Equals(rhs); - - public static bool operator !=(PlaneShape lhs, PlaneShape rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_PlaneShape - - public Plane GetPlane() => Bindings.JPH_PlaneShape_GetPlane(Handle); - - public float GetHalfExtent() => Bindings.JPH_PlaneShape_GetHalfExtent(Handle); - - #endregion - - #region JPH_Shape - - public void Destroy() => Bindings.JPH_Shape_Destroy(Handle.Reinterpret()); - - public ShapeType GetShapeType() => Bindings.JPH_Shape_GetType(Handle.Reinterpret()); - - public ShapeSubType GetSubType() => Bindings.JPH_Shape_GetSubType(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_Shape_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Shape_SetUserData(Handle.Reinterpret(), userData); - - public bool MustBeStatic() => Bindings.JPH_Shape_MustBeStatic(Handle.Reinterpret()); - - public float3 GetCenterOfMass() => Bindings.JPH_Shape_GetCenterOfMass(Handle.Reinterpret()); - - public AABox GetLocalBounds() => Bindings.JPH_Shape_GetLocalBounds(Handle.Reinterpret()); - - public uint GetSubShapeIDBitsRecursive() => Bindings.JPH_Shape_GetSubShapeIDBitsRecursive(Handle.Reinterpret()); - - public AABox GetWorldSpaceBounds(rmatrix4x4 centerOfMassTransform, float3 scale) => Bindings.JPH_Shape_GetWorldSpaceBounds(Handle.Reinterpret(), centerOfMassTransform, scale); - - public float GetInnerRadius() => Bindings.JPH_Shape_GetInnerRadius(Handle.Reinterpret()); - - public MassProperties GetMassProperties() => Bindings.JPH_Shape_GetMassProperties(Handle.Reinterpret()); - - public PhysicsMaterial GetMaterial(SubShapeID subShapeID) => new PhysicsMaterial { Handle = Bindings.JPH_Shape_GetMaterial(Handle.Reinterpret(), subShapeID) }; - - public float3 GetSurfaceNormal(SubShapeID subShapeID, float3 localPosition) => Bindings.JPH_Shape_GetSurfaceNormal(Handle.Reinterpret(), subShapeID, localPosition); - - public float GetVolume() => Bindings.JPH_Shape_GetVolume(Handle.Reinterpret()); - - public bool IsValidScale(float3 scale) => Bindings.JPH_Shape_IsValidScale(Handle.Reinterpret(), scale); - - public float3 MakeScaleValid(float3 scale) => Bindings.JPH_Shape_MakeScaleValid(Handle.Reinterpret(), scale); - - public Shape ScaleShape(float3 scale) => new Shape { Handle = Bindings.JPH_Shape_ScaleShape(Handle.Reinterpret(), scale) }; - - public bool CastRay(float3 origin, float3 direction, out RayCastResult result) => Bindings.JPH_Shape_CastRay(Handle.Reinterpret(), origin, direction, out result); - - #endregion - - } -} diff --git a/Jolt/Generated/PlaneShape.g.cs.meta b/Jolt/Generated/PlaneShape.g.cs.meta deleted file mode 100644 index f567843..0000000 --- a/Jolt/Generated/PlaneShape.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ed8d5bcfcb51e3545b0556a6b54c12dd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/PlaneShapeSettings.g.cs b/Jolt/Generated/PlaneShapeSettings.g.cs deleted file mode 100644 index af0a409..0000000 --- a/Jolt/Generated/PlaneShapeSettings.g.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct PlaneShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(PlaneShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is PlaneShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(PlaneShapeSettings lhs, PlaneShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(PlaneShapeSettings lhs, PlaneShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_PlaneShapeSettings - - public PlaneShape CreateShape() => new PlaneShape { Handle = Bindings.JPH_PlaneShapeSettings_CreateShape(Handle) }; - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle.Reinterpret(), data); - - #endregion - - } -} diff --git a/Jolt/Generated/PlaneShapeSettings.g.cs.meta b/Jolt/Generated/PlaneShapeSettings.g.cs.meta deleted file mode 100644 index b8feab0..0000000 --- a/Jolt/Generated/PlaneShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6036fa29edcf82b4c896ad068c528da7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/PointConstraint.g.cs b/Jolt/Generated/PointConstraint.g.cs deleted file mode 100644 index 6592c73..0000000 --- a/Jolt/Generated/PointConstraint.g.cs +++ /dev/null @@ -1,95 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct PointConstraint : IEquatable - { - #region IEquatable - - public bool Equals(PointConstraint other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is PointConstraint other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(PointConstraint lhs, PointConstraint rhs) => lhs.Equals(rhs); - - public static bool operator !=(PointConstraint lhs, PointConstraint rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_PointConstraint - - public void SetPoint1(ConstraintSpace space, rvec3 value) => Bindings.JPH_PointConstraint_SetPoint1(Handle, space, value); - - public void SetPoint2(ConstraintSpace space, rvec3 value) => Bindings.JPH_PointConstraint_SetPoint2(Handle, space, value); - - public float3 GetLocalSpacePoint1() => Bindings.JPH_PointConstraint_GetLocalSpacePoint1(Handle); - - public float3 GetLocalSpacePoint2() => Bindings.JPH_PointConstraint_GetLocalSpacePoint2(Handle); - - public float3 GetTotalLambdaPosition() => Bindings.JPH_PointConstraint_GetTotalLambdaPosition(Handle); - - #endregion - - #region JPH_TwoBodyConstraint - - public Body GetBody1() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody1(Handle.Reinterpret()) }; - - public Body GetBody2() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody2(Handle.Reinterpret()) }; - - public float4x4 GetConstraintToBody1Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody1Matrix(Handle.Reinterpret()); - - public float4x4 GetConstraintToBody2Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody2Matrix(Handle.Reinterpret()); - - #endregion - - #region JPH_Constraint - - public void Destroy() => Bindings.JPH_Constraint_Destroy(Handle.Reinterpret()); - - public ConstraintType GetShapeType() => Bindings.JPH_Constraint_GetType(Handle.Reinterpret()); - - public ConstraintSubType GetSubType() => Bindings.JPH_Constraint_GetSubType(Handle.Reinterpret()); - - public uint GetConstraintPriority() => Bindings.JPH_Constraint_GetConstraintPriority(Handle.Reinterpret()); - - public void SetConstraintPriority(uint priority) => Bindings.JPH_Constraint_SetConstraintPriority(Handle.Reinterpret(), priority); - - public uint GetNumVelocityStepsOverride() => Bindings.JPH_Constraint_GetNumVelocityStepsOverride(Handle.Reinterpret()); - - public void SetNumVelocityStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumVelocityStepsOverride(Handle.Reinterpret(), value); - - public uint GetNumPositionStepsOverride() => Bindings.JPH_Constraint_GetNumPositionStepsOverride(Handle.Reinterpret()); - - public void SetNumPositionStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumPositionStepsOverride(Handle.Reinterpret(), value); - - public bool GetEnabled() => Bindings.JPH_Constraint_GetEnabled(Handle.Reinterpret()); - - public void SetEnabled(bool enabled) => Bindings.JPH_Constraint_SetEnabled(Handle.Reinterpret(), enabled); - - public ulong GetUserData() => Bindings.JPH_Constraint_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Constraint_SetUserData(Handle.Reinterpret(), userData); - - public void NotifyShapeChanged(BodyID bodyID, float3 deltaCOM) => Bindings.JPH_Constraint_NotifyShapeChanged(Handle.Reinterpret(), bodyID, deltaCOM); - - public void ResetWarmStart() => Bindings.JPH_Constraint_ResetWarmStart(Handle.Reinterpret()); - - public bool IsActive() => Bindings.JPH_Constraint_IsActive(Handle.Reinterpret()); - - public void SetupVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SetupVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public void WarmStartVelocityConstraint(float warmStartImpulseRatio) => Bindings.JPH_Constraint_WarmStartVelocityConstraint(Handle.Reinterpret(), warmStartImpulseRatio); - - public bool SolveVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SolveVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public bool SolvePositionConstraint(float deltaTime, float baumgarte) => Bindings.JPH_Constraint_SolvePositionConstraint(Handle.Reinterpret(), deltaTime, baumgarte); - - #endregion - - } -} diff --git a/Jolt/Generated/PointConstraint.g.cs.meta b/Jolt/Generated/PointConstraint.g.cs.meta deleted file mode 100644 index 4bfd9c4..0000000 --- a/Jolt/Generated/PointConstraint.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a22b7a18d5eea274d9abb113c1ea6269 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/Shape.g.cs b/Jolt/Generated/Shape.g.cs deleted file mode 100644 index 4e52899..0000000 --- a/Jolt/Generated/Shape.g.cs +++ /dev/null @@ -1,67 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct Shape : IEquatable - { - #region IEquatable - - public bool Equals(Shape other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is Shape other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(Shape lhs, Shape rhs) => lhs.Equals(rhs); - - public static bool operator !=(Shape lhs, Shape rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_Shape - - public void Destroy() => Bindings.JPH_Shape_Destroy(Handle); - - public ShapeType GetShapeType() => Bindings.JPH_Shape_GetType(Handle); - - public ShapeSubType GetSubType() => Bindings.JPH_Shape_GetSubType(Handle); - - public ulong GetUserData() => Bindings.JPH_Shape_GetUserData(Handle); - - public void SetUserData(ulong userData) => Bindings.JPH_Shape_SetUserData(Handle, userData); - - public bool MustBeStatic() => Bindings.JPH_Shape_MustBeStatic(Handle); - - public float3 GetCenterOfMass() => Bindings.JPH_Shape_GetCenterOfMass(Handle); - - public AABox GetLocalBounds() => Bindings.JPH_Shape_GetLocalBounds(Handle); - - public uint GetSubShapeIDBitsRecursive() => Bindings.JPH_Shape_GetSubShapeIDBitsRecursive(Handle); - - public AABox GetWorldSpaceBounds(rmatrix4x4 centerOfMassTransform, float3 scale) => Bindings.JPH_Shape_GetWorldSpaceBounds(Handle, centerOfMassTransform, scale); - - public float GetInnerRadius() => Bindings.JPH_Shape_GetInnerRadius(Handle); - - public MassProperties GetMassProperties() => Bindings.JPH_Shape_GetMassProperties(Handle); - - public PhysicsMaterial GetMaterial(SubShapeID subShapeID) => new PhysicsMaterial { Handle = Bindings.JPH_Shape_GetMaterial(Handle, subShapeID) }; - - public float3 GetSurfaceNormal(SubShapeID subShapeID, float3 localPosition) => Bindings.JPH_Shape_GetSurfaceNormal(Handle, subShapeID, localPosition); - - public float GetVolume() => Bindings.JPH_Shape_GetVolume(Handle); - - public bool IsValidScale(float3 scale) => Bindings.JPH_Shape_IsValidScale(Handle, scale); - - public float3 MakeScaleValid(float3 scale) => Bindings.JPH_Shape_MakeScaleValid(Handle, scale); - - public Shape ScaleShape(float3 scale) => new Shape { Handle = Bindings.JPH_Shape_ScaleShape(Handle, scale) }; - - public bool CastRay(float3 origin, float3 direction, out RayCastResult result) => Bindings.JPH_Shape_CastRay(Handle, origin, direction, out result); - - #endregion - - } -} diff --git a/Jolt/Generated/Shape.g.cs.meta b/Jolt/Generated/Shape.g.cs.meta deleted file mode 100644 index f65373a..0000000 --- a/Jolt/Generated/Shape.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4a76acf8c1828e844b4745f9c40ed1c3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/ShapeFilter.g.cs b/Jolt/Generated/ShapeFilter.g.cs deleted file mode 100644 index c50b020..0000000 --- a/Jolt/Generated/ShapeFilter.g.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct ShapeFilter : IEquatable - { - #region IEquatable - - public bool Equals(ShapeFilter other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is ShapeFilter other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(ShapeFilter lhs, ShapeFilter rhs) => lhs.Equals(rhs); - - public static bool operator !=(ShapeFilter lhs, ShapeFilter rhs) => !lhs.Equals(rhs); - - #endregion - - } -} diff --git a/Jolt/Generated/ShapeFilter.g.cs.meta b/Jolt/Generated/ShapeFilter.g.cs.meta deleted file mode 100644 index 3c12fc2..0000000 --- a/Jolt/Generated/ShapeFilter.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 93012f585f3eaf64592f35339d89a6f5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/ShapeSettings.g.cs b/Jolt/Generated/ShapeSettings.g.cs deleted file mode 100644 index 723de32..0000000 --- a/Jolt/Generated/ShapeSettings.g.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct ShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(ShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is ShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(ShapeSettings lhs, ShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(ShapeSettings lhs, ShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle, data); - - #endregion - - } -} diff --git a/Jolt/Generated/ShapeSettings.g.cs.meta b/Jolt/Generated/ShapeSettings.g.cs.meta deleted file mode 100644 index 0cdbe94..0000000 --- a/Jolt/Generated/ShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2edbe45825795804eb8efdddb9713929 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/SixDOFConstraint.g.cs b/Jolt/Generated/SixDOFConstraint.g.cs deleted file mode 100644 index 2da5105..0000000 --- a/Jolt/Generated/SixDOFConstraint.g.cs +++ /dev/null @@ -1,99 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct SixDOFConstraint : IEquatable - { - #region IEquatable - - public bool Equals(SixDOFConstraint other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is SixDOFConstraint other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(SixDOFConstraint lhs, SixDOFConstraint rhs) => lhs.Equals(rhs); - - public static bool operator !=(SixDOFConstraint lhs, SixDOFConstraint rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_SixDOFConstraint - - public SixDOFConstraintSettings GetSettings() => Bindings.JPH_SixDOFConstraint_GetSettings(Handle); - - public float GetLimitsMin(SixDOFConstraintAxis axis) => Bindings.JPH_SixDOFConstraint_GetLimitsMin(Handle, axis); - - public float GetLimitsMax(SixDOFConstraintAxis axis) => Bindings.JPH_SixDOFConstraint_GetLimitsMax(Handle, axis); - - public float3 GetTotalLambdaPosition() => Bindings.JPH_SixDOFConstraint_GetTotalLambdaPosition(Handle); - - public float3 GetTotalLambdaRotation() => Bindings.JPH_SixDOFConstraint_GetTotalLambdaRotation(Handle); - - public float3 GetTotalLambdaMotorTranslation() => Bindings.JPH_SixDOFConstraint_GetTotalLambdaMotorTranslation(Handle); - - public float3 GetTotalLambdaMotorRotation() => Bindings.JPH_SixDOFConstraint_GetTotalLambdaMotorRotation(Handle); - - #endregion - - #region JPH_TwoBodyConstraint - - public Body GetBody1() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody1(Handle.Reinterpret()) }; - - public Body GetBody2() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody2(Handle.Reinterpret()) }; - - public float4x4 GetConstraintToBody1Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody1Matrix(Handle.Reinterpret()); - - public float4x4 GetConstraintToBody2Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody2Matrix(Handle.Reinterpret()); - - #endregion - - #region JPH_Constraint - - public void Destroy() => Bindings.JPH_Constraint_Destroy(Handle.Reinterpret()); - - public ConstraintType GetShapeType() => Bindings.JPH_Constraint_GetType(Handle.Reinterpret()); - - public ConstraintSubType GetSubType() => Bindings.JPH_Constraint_GetSubType(Handle.Reinterpret()); - - public uint GetConstraintPriority() => Bindings.JPH_Constraint_GetConstraintPriority(Handle.Reinterpret()); - - public void SetConstraintPriority(uint priority) => Bindings.JPH_Constraint_SetConstraintPriority(Handle.Reinterpret(), priority); - - public uint GetNumVelocityStepsOverride() => Bindings.JPH_Constraint_GetNumVelocityStepsOverride(Handle.Reinterpret()); - - public void SetNumVelocityStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumVelocityStepsOverride(Handle.Reinterpret(), value); - - public uint GetNumPositionStepsOverride() => Bindings.JPH_Constraint_GetNumPositionStepsOverride(Handle.Reinterpret()); - - public void SetNumPositionStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumPositionStepsOverride(Handle.Reinterpret(), value); - - public bool GetEnabled() => Bindings.JPH_Constraint_GetEnabled(Handle.Reinterpret()); - - public void SetEnabled(bool enabled) => Bindings.JPH_Constraint_SetEnabled(Handle.Reinterpret(), enabled); - - public ulong GetUserData() => Bindings.JPH_Constraint_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Constraint_SetUserData(Handle.Reinterpret(), userData); - - public void NotifyShapeChanged(BodyID bodyID, float3 deltaCOM) => Bindings.JPH_Constraint_NotifyShapeChanged(Handle.Reinterpret(), bodyID, deltaCOM); - - public void ResetWarmStart() => Bindings.JPH_Constraint_ResetWarmStart(Handle.Reinterpret()); - - public bool IsActive() => Bindings.JPH_Constraint_IsActive(Handle.Reinterpret()); - - public void SetupVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SetupVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public void WarmStartVelocityConstraint(float warmStartImpulseRatio) => Bindings.JPH_Constraint_WarmStartVelocityConstraint(Handle.Reinterpret(), warmStartImpulseRatio); - - public bool SolveVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SolveVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public bool SolvePositionConstraint(float deltaTime, float baumgarte) => Bindings.JPH_Constraint_SolvePositionConstraint(Handle.Reinterpret(), deltaTime, baumgarte); - - #endregion - - } -} diff --git a/Jolt/Generated/SixDOFConstraint.g.cs.meta b/Jolt/Generated/SixDOFConstraint.g.cs.meta deleted file mode 100644 index 6be2283..0000000 --- a/Jolt/Generated/SixDOFConstraint.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e37d1f6463b67464798715bfac7967ed -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/SliderConstraint.g.cs b/Jolt/Generated/SliderConstraint.g.cs deleted file mode 100644 index 2d5f12a..0000000 --- a/Jolt/Generated/SliderConstraint.g.cs +++ /dev/null @@ -1,129 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct SliderConstraint : IEquatable - { - #region IEquatable - - public bool Equals(SliderConstraint other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is SliderConstraint other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(SliderConstraint lhs, SliderConstraint rhs) => lhs.Equals(rhs); - - public static bool operator !=(SliderConstraint lhs, SliderConstraint rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_SliderConstraint - - public SliderConstraintSettings GetSettings() => Bindings.JPH_SliderConstraint_GetSettings(Handle); - - public float GetCurrentPosition() => Bindings.JPH_SliderConstraint_GetCurrentPosition(Handle); - - public void SetMaxFrictionForce(float force) => Bindings.JPH_SliderConstraint_SetMaxFrictionForce(Handle, force); - - public float GetMaxFrictionForce() => Bindings.JPH_SliderConstraint_GetMaxFrictionForce(Handle); - - public void SetMotorSettings(MotorSettings settings) => Bindings.JPH_SliderConstraint_SetMotorSettings(Handle, settings); - - public MotorSettings GetMotorSettings() => Bindings.JPH_SliderConstraint_GetMotorSettings(Handle); - - public void SetMotorState(MotorState state) => Bindings.JPH_SliderConstraint_SetMotorState(Handle, state); - - public MotorState GetMotorState() => Bindings.JPH_SliderConstraint_GetMotorState(Handle); - - public void SetTargetVelocity(float velocity) => Bindings.JPH_SliderConstraint_SetTargetVelocity(Handle, velocity); - - public float GetTargetVelocity() => Bindings.JPH_SliderConstraint_GetTargetVelocity(Handle); - - public void SetTargetPosition(float position) => Bindings.JPH_SliderConstraint_SetTargetPosition(Handle, position); - - public float GetTargetPosition() => Bindings.JPH_SliderConstraint_GetTargetPosition(Handle); - - public void SetLimits(float min, float max) => Bindings.JPH_SliderConstraint_SetLimits(Handle, min, max); - - public float GetLimitsMin() => Bindings.JPH_SliderConstraint_GetLimitsMin(Handle); - - public float GetLimitsMax() => Bindings.JPH_SliderConstraint_GetLimitsMax(Handle); - - public bool HasLimits() => Bindings.JPH_SliderConstraint_HasLimits(Handle); - - public SpringSettings GetLimitsSpringSettings() => Bindings.JPH_SliderConstraint_GetLimitsSpringSettings(Handle); - - public void SetLimitsSpringSettings(SpringSettings settings) => Bindings.JPH_SliderConstraint_SetLimitsSpringSettings(Handle, settings); - - public float2 GetTotalLambdaPosition() => Bindings.JPH_SliderConstraint_GetTotalLambdaPosition(Handle); - - public float GetTotalLambdaPositionLimits() => Bindings.JPH_SliderConstraint_GetTotalLambdaPositionLimits(Handle); - - public float3 GetTotalLambdaRotation() => Bindings.JPH_SliderConstraint_GetTotalLambdaRotation(Handle); - - public float GetTotalLambdaMotor() => Bindings.JPH_SliderConstraint_GetTotalLambdaMotor(Handle); - - #endregion - - #region JPH_TwoBodyConstraint - - public Body GetBody1() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody1(Handle.Reinterpret()) }; - - public Body GetBody2() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody2(Handle.Reinterpret()) }; - - public float4x4 GetConstraintToBody1Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody1Matrix(Handle.Reinterpret()); - - public float4x4 GetConstraintToBody2Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody2Matrix(Handle.Reinterpret()); - - #endregion - - #region JPH_Constraint - - public void Destroy() => Bindings.JPH_Constraint_Destroy(Handle.Reinterpret()); - - public ConstraintType GetShapeType() => Bindings.JPH_Constraint_GetType(Handle.Reinterpret()); - - public ConstraintSubType GetSubType() => Bindings.JPH_Constraint_GetSubType(Handle.Reinterpret()); - - public uint GetConstraintPriority() => Bindings.JPH_Constraint_GetConstraintPriority(Handle.Reinterpret()); - - public void SetConstraintPriority(uint priority) => Bindings.JPH_Constraint_SetConstraintPriority(Handle.Reinterpret(), priority); - - public uint GetNumVelocityStepsOverride() => Bindings.JPH_Constraint_GetNumVelocityStepsOverride(Handle.Reinterpret()); - - public void SetNumVelocityStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumVelocityStepsOverride(Handle.Reinterpret(), value); - - public uint GetNumPositionStepsOverride() => Bindings.JPH_Constraint_GetNumPositionStepsOverride(Handle.Reinterpret()); - - public void SetNumPositionStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumPositionStepsOverride(Handle.Reinterpret(), value); - - public bool GetEnabled() => Bindings.JPH_Constraint_GetEnabled(Handle.Reinterpret()); - - public void SetEnabled(bool enabled) => Bindings.JPH_Constraint_SetEnabled(Handle.Reinterpret(), enabled); - - public ulong GetUserData() => Bindings.JPH_Constraint_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Constraint_SetUserData(Handle.Reinterpret(), userData); - - public void NotifyShapeChanged(BodyID bodyID, float3 deltaCOM) => Bindings.JPH_Constraint_NotifyShapeChanged(Handle.Reinterpret(), bodyID, deltaCOM); - - public void ResetWarmStart() => Bindings.JPH_Constraint_ResetWarmStart(Handle.Reinterpret()); - - public bool IsActive() => Bindings.JPH_Constraint_IsActive(Handle.Reinterpret()); - - public void SetupVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SetupVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public void WarmStartVelocityConstraint(float warmStartImpulseRatio) => Bindings.JPH_Constraint_WarmStartVelocityConstraint(Handle.Reinterpret(), warmStartImpulseRatio); - - public bool SolveVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SolveVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public bool SolvePositionConstraint(float deltaTime, float baumgarte) => Bindings.JPH_Constraint_SolvePositionConstraint(Handle.Reinterpret(), deltaTime, baumgarte); - - #endregion - - } -} diff --git a/Jolt/Generated/SliderConstraint.g.cs.meta b/Jolt/Generated/SliderConstraint.g.cs.meta deleted file mode 100644 index fb4b5c7..0000000 --- a/Jolt/Generated/SliderConstraint.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f11cf2fccfe319549a07e77739bc41ec -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/SoftBodyCreationSettings.g.cs b/Jolt/Generated/SoftBodyCreationSettings.g.cs deleted file mode 100644 index b4875de..0000000 --- a/Jolt/Generated/SoftBodyCreationSettings.g.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct SoftBodyCreationSettings : IEquatable - { - #region IEquatable - - public bool Equals(SoftBodyCreationSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is SoftBodyCreationSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(SoftBodyCreationSettings lhs, SoftBodyCreationSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(SoftBodyCreationSettings lhs, SoftBodyCreationSettings rhs) => !lhs.Equals(rhs); - - #endregion - - } -} diff --git a/Jolt/Generated/SoftBodyCreationSettings.g.cs.meta b/Jolt/Generated/SoftBodyCreationSettings.g.cs.meta deleted file mode 100644 index e01eacb..0000000 --- a/Jolt/Generated/SoftBodyCreationSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ba83618b0f75b7e44b3702727d700718 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/SphereShape.g.cs b/Jolt/Generated/SphereShape.g.cs deleted file mode 100644 index 95e900b..0000000 --- a/Jolt/Generated/SphereShape.g.cs +++ /dev/null @@ -1,81 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct SphereShape : IEquatable - { - #region IEquatable - - public bool Equals(SphereShape other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is SphereShape other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(SphereShape lhs, SphereShape rhs) => lhs.Equals(rhs); - - public static bool operator !=(SphereShape lhs, SphereShape rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_SphereShape - - public float GetRadius() => Bindings.JPH_SphereShape_GetRadius(Handle); - - #endregion - - #region JPH_ConvexShape - - public float GetDensity() => Bindings.JPH_ConvexShape_GetDensity(Handle.Reinterpret()); - - public void SetDensity(float density) => Bindings.JPH_ConvexShape_SetDensity(Handle.Reinterpret(), density); - - #endregion - - #region JPH_Shape - - public void Destroy() => Bindings.JPH_Shape_Destroy(Handle.Reinterpret()); - - public ShapeType GetShapeType() => Bindings.JPH_Shape_GetType(Handle.Reinterpret()); - - public ShapeSubType GetSubType() => Bindings.JPH_Shape_GetSubType(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_Shape_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Shape_SetUserData(Handle.Reinterpret(), userData); - - public bool MustBeStatic() => Bindings.JPH_Shape_MustBeStatic(Handle.Reinterpret()); - - public float3 GetCenterOfMass() => Bindings.JPH_Shape_GetCenterOfMass(Handle.Reinterpret()); - - public AABox GetLocalBounds() => Bindings.JPH_Shape_GetLocalBounds(Handle.Reinterpret()); - - public uint GetSubShapeIDBitsRecursive() => Bindings.JPH_Shape_GetSubShapeIDBitsRecursive(Handle.Reinterpret()); - - public AABox GetWorldSpaceBounds(rmatrix4x4 centerOfMassTransform, float3 scale) => Bindings.JPH_Shape_GetWorldSpaceBounds(Handle.Reinterpret(), centerOfMassTransform, scale); - - public float GetInnerRadius() => Bindings.JPH_Shape_GetInnerRadius(Handle.Reinterpret()); - - public MassProperties GetMassProperties() => Bindings.JPH_Shape_GetMassProperties(Handle.Reinterpret()); - - public PhysicsMaterial GetMaterial(SubShapeID subShapeID) => new PhysicsMaterial { Handle = Bindings.JPH_Shape_GetMaterial(Handle.Reinterpret(), subShapeID) }; - - public float3 GetSurfaceNormal(SubShapeID subShapeID, float3 localPosition) => Bindings.JPH_Shape_GetSurfaceNormal(Handle.Reinterpret(), subShapeID, localPosition); - - public float GetVolume() => Bindings.JPH_Shape_GetVolume(Handle.Reinterpret()); - - public bool IsValidScale(float3 scale) => Bindings.JPH_Shape_IsValidScale(Handle.Reinterpret(), scale); - - public float3 MakeScaleValid(float3 scale) => Bindings.JPH_Shape_MakeScaleValid(Handle.Reinterpret(), scale); - - public Shape ScaleShape(float3 scale) => new Shape { Handle = Bindings.JPH_Shape_ScaleShape(Handle.Reinterpret(), scale) }; - - public bool CastRay(float3 origin, float3 direction, out RayCastResult result) => Bindings.JPH_Shape_CastRay(Handle.Reinterpret(), origin, direction, out result); - - #endregion - - } -} diff --git a/Jolt/Generated/SphereShape.g.cs.meta b/Jolt/Generated/SphereShape.g.cs.meta deleted file mode 100644 index 793ca91..0000000 --- a/Jolt/Generated/SphereShape.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 627d21544b5a5d64dae66d178ec7a1dd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/SphereShapeSettings.g.cs b/Jolt/Generated/SphereShapeSettings.g.cs deleted file mode 100644 index 1004927..0000000 --- a/Jolt/Generated/SphereShapeSettings.g.cs +++ /dev/null @@ -1,53 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct SphereShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(SphereShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is SphereShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(SphereShapeSettings lhs, SphereShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(SphereShapeSettings lhs, SphereShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_SphereShapeSettings - - public SphereShape CreateShape() => new SphereShape { Handle = Bindings.JPH_SphereShapeSettings_CreateShape(Handle) }; - - public float GetRadius() => Bindings.JPH_SphereShapeSettings_GetRadius(Handle); - - public void SetRadius(float radius) => Bindings.JPH_SphereShapeSettings_SetRadius(Handle, radius); - - #endregion - - #region JPH_ConvexShapeSettings - - public float GetDensity() => Bindings.JPH_ConvexShapeSettings_GetDensity(Handle.Reinterpret()); - - public void SetDensity(float density) => Bindings.JPH_ConvexShapeSettings_SetDensity(Handle.Reinterpret(), density); - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle.Reinterpret(), data); - - #endregion - - } -} diff --git a/Jolt/Generated/SphereShapeSettings.g.cs.meta b/Jolt/Generated/SphereShapeSettings.g.cs.meta deleted file mode 100644 index b96ec00..0000000 --- a/Jolt/Generated/SphereShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5ae8597f05fa1714dbaa62f6645e2ab8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/StaticCompoundShapeSettings.g.cs b/Jolt/Generated/StaticCompoundShapeSettings.g.cs deleted file mode 100644 index aceba53..0000000 --- a/Jolt/Generated/StaticCompoundShapeSettings.g.cs +++ /dev/null @@ -1,47 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct StaticCompoundShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(StaticCompoundShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is StaticCompoundShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(StaticCompoundShapeSettings lhs, StaticCompoundShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(StaticCompoundShapeSettings lhs, StaticCompoundShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_StaticCompoundShapeSettings - - #endregion - - #region JPH_CompoundShapeSettings - - public void AddShape(float3 position, quaternion rotation, ShapeSettings settings, uint userData) => Bindings.JPH_CompoundShapeSettings_AddShape(Handle.Reinterpret(), position, rotation, settings.Handle, userData); - - public void AddShape(float3 position, quaternion rotation, Shape shape, uint userData) => Bindings.JPH_CompoundShapeSettings_AddShape(Handle.Reinterpret(), position, rotation, shape.Handle, userData); - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle.Reinterpret(), data); - - #endregion - - } -} diff --git a/Jolt/Generated/StaticCompoundShapeSettings.g.cs.meta b/Jolt/Generated/StaticCompoundShapeSettings.g.cs.meta deleted file mode 100644 index 0eef5cf..0000000 --- a/Jolt/Generated/StaticCompoundShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5246561b18d797046b1b441b91d30357 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/SwingTwistConstraint.g.cs b/Jolt/Generated/SwingTwistConstraint.g.cs deleted file mode 100644 index ee5d622..0000000 --- a/Jolt/Generated/SwingTwistConstraint.g.cs +++ /dev/null @@ -1,97 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct SwingTwistConstraint : IEquatable - { - #region IEquatable - - public bool Equals(SwingTwistConstraint other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is SwingTwistConstraint other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(SwingTwistConstraint lhs, SwingTwistConstraint rhs) => lhs.Equals(rhs); - - public static bool operator !=(SwingTwistConstraint lhs, SwingTwistConstraint rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_SwingTwistConstraint - - public float GetNormalHalfConeAngle() => Bindings.JPH_SwingTwistConstraint_GetNormalHalfConeAngle(Handle); - - public float3 GetTotalLambdaPosition() => Bindings.JPH_SwingTwistConstraint_GetTotalLambdaPosition(Handle); - - public float GetTotalLambdaTwist() => Bindings.JPH_SwingTwistConstraint_GetTotalLambdaTwist(Handle); - - public float GetTotalLambdaSwingY() => Bindings.JPH_SwingTwistConstraint_GetTotalLambdaSwingY(Handle); - - public float GetTotalLambdaSwingZ() => Bindings.JPH_SwingTwistConstraint_GetTotalLambdaSwingZ(Handle); - - public float3 GetTotalLambdaMotor() => Bindings.JPH_SwingTwistConstraint_GetTotalLambdaMotor(Handle); - - #endregion - - #region JPH_TwoBodyConstraint - - public Body GetBody1() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody1(Handle.Reinterpret()) }; - - public Body GetBody2() => new Body { Handle = Bindings.JPH_TwoBodyConstraint_GetBody2(Handle.Reinterpret()) }; - - public float4x4 GetConstraintToBody1Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody1Matrix(Handle.Reinterpret()); - - public float4x4 GetConstraintToBody2Matrix() => Bindings.JPH_TwoBodyConstraint_GetConstraintToBody2Matrix(Handle.Reinterpret()); - - #endregion - - #region JPH_Constraint - - public void Destroy() => Bindings.JPH_Constraint_Destroy(Handle.Reinterpret()); - - public ConstraintType GetShapeType() => Bindings.JPH_Constraint_GetType(Handle.Reinterpret()); - - public ConstraintSubType GetSubType() => Bindings.JPH_Constraint_GetSubType(Handle.Reinterpret()); - - public uint GetConstraintPriority() => Bindings.JPH_Constraint_GetConstraintPriority(Handle.Reinterpret()); - - public void SetConstraintPriority(uint priority) => Bindings.JPH_Constraint_SetConstraintPriority(Handle.Reinterpret(), priority); - - public uint GetNumVelocityStepsOverride() => Bindings.JPH_Constraint_GetNumVelocityStepsOverride(Handle.Reinterpret()); - - public void SetNumVelocityStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumVelocityStepsOverride(Handle.Reinterpret(), value); - - public uint GetNumPositionStepsOverride() => Bindings.JPH_Constraint_GetNumPositionStepsOverride(Handle.Reinterpret()); - - public void SetNumPositionStepsOverride(uint value) => Bindings.JPH_Constraint_SetNumPositionStepsOverride(Handle.Reinterpret(), value); - - public bool GetEnabled() => Bindings.JPH_Constraint_GetEnabled(Handle.Reinterpret()); - - public void SetEnabled(bool enabled) => Bindings.JPH_Constraint_SetEnabled(Handle.Reinterpret(), enabled); - - public ulong GetUserData() => Bindings.JPH_Constraint_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Constraint_SetUserData(Handle.Reinterpret(), userData); - - public void NotifyShapeChanged(BodyID bodyID, float3 deltaCOM) => Bindings.JPH_Constraint_NotifyShapeChanged(Handle.Reinterpret(), bodyID, deltaCOM); - - public void ResetWarmStart() => Bindings.JPH_Constraint_ResetWarmStart(Handle.Reinterpret()); - - public bool IsActive() => Bindings.JPH_Constraint_IsActive(Handle.Reinterpret()); - - public void SetupVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SetupVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public void WarmStartVelocityConstraint(float warmStartImpulseRatio) => Bindings.JPH_Constraint_WarmStartVelocityConstraint(Handle.Reinterpret(), warmStartImpulseRatio); - - public bool SolveVelocityConstraint(float deltaTime) => Bindings.JPH_Constraint_SolveVelocityConstraint(Handle.Reinterpret(), deltaTime); - - public bool SolvePositionConstraint(float deltaTime, float baumgarte) => Bindings.JPH_Constraint_SolvePositionConstraint(Handle.Reinterpret(), deltaTime, baumgarte); - - #endregion - - } -} diff --git a/Jolt/Generated/SwingTwistConstraint.g.cs.meta b/Jolt/Generated/SwingTwistConstraint.g.cs.meta deleted file mode 100644 index 5995b5f..0000000 --- a/Jolt/Generated/SwingTwistConstraint.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a2c434a2d975a324590df01ed3b6834b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/TaperedCapsuleShape.g.cs b/Jolt/Generated/TaperedCapsuleShape.g.cs deleted file mode 100644 index d2edff3..0000000 --- a/Jolt/Generated/TaperedCapsuleShape.g.cs +++ /dev/null @@ -1,85 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct TaperedCapsuleShape : IEquatable - { - #region IEquatable - - public bool Equals(TaperedCapsuleShape other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is TaperedCapsuleShape other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(TaperedCapsuleShape lhs, TaperedCapsuleShape rhs) => lhs.Equals(rhs); - - public static bool operator !=(TaperedCapsuleShape lhs, TaperedCapsuleShape rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_TaperedCapsuleShape - - public float GetTopRadius() => Bindings.JPH_TaperedCapsuleShape_GetTopRadius(Handle); - - public float GetBottomRadius() => Bindings.JPH_TaperedCapsuleShape_GetBottomRadius(Handle); - - public float GetHalfHeight() => Bindings.JPH_TaperedCapsuleShape_GetHalfHeight(Handle); - - #endregion - - #region JPH_ConvexShape - - public float GetDensity() => Bindings.JPH_ConvexShape_GetDensity(Handle.Reinterpret()); - - public void SetDensity(float density) => Bindings.JPH_ConvexShape_SetDensity(Handle.Reinterpret(), density); - - #endregion - - #region JPH_Shape - - public void Destroy() => Bindings.JPH_Shape_Destroy(Handle.Reinterpret()); - - public ShapeType GetShapeType() => Bindings.JPH_Shape_GetType(Handle.Reinterpret()); - - public ShapeSubType GetSubType() => Bindings.JPH_Shape_GetSubType(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_Shape_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Shape_SetUserData(Handle.Reinterpret(), userData); - - public bool MustBeStatic() => Bindings.JPH_Shape_MustBeStatic(Handle.Reinterpret()); - - public float3 GetCenterOfMass() => Bindings.JPH_Shape_GetCenterOfMass(Handle.Reinterpret()); - - public AABox GetLocalBounds() => Bindings.JPH_Shape_GetLocalBounds(Handle.Reinterpret()); - - public uint GetSubShapeIDBitsRecursive() => Bindings.JPH_Shape_GetSubShapeIDBitsRecursive(Handle.Reinterpret()); - - public AABox GetWorldSpaceBounds(rmatrix4x4 centerOfMassTransform, float3 scale) => Bindings.JPH_Shape_GetWorldSpaceBounds(Handle.Reinterpret(), centerOfMassTransform, scale); - - public float GetInnerRadius() => Bindings.JPH_Shape_GetInnerRadius(Handle.Reinterpret()); - - public MassProperties GetMassProperties() => Bindings.JPH_Shape_GetMassProperties(Handle.Reinterpret()); - - public PhysicsMaterial GetMaterial(SubShapeID subShapeID) => new PhysicsMaterial { Handle = Bindings.JPH_Shape_GetMaterial(Handle.Reinterpret(), subShapeID) }; - - public float3 GetSurfaceNormal(SubShapeID subShapeID, float3 localPosition) => Bindings.JPH_Shape_GetSurfaceNormal(Handle.Reinterpret(), subShapeID, localPosition); - - public float GetVolume() => Bindings.JPH_Shape_GetVolume(Handle.Reinterpret()); - - public bool IsValidScale(float3 scale) => Bindings.JPH_Shape_IsValidScale(Handle.Reinterpret(), scale); - - public float3 MakeScaleValid(float3 scale) => Bindings.JPH_Shape_MakeScaleValid(Handle.Reinterpret(), scale); - - public Shape ScaleShape(float3 scale) => new Shape { Handle = Bindings.JPH_Shape_ScaleShape(Handle.Reinterpret(), scale) }; - - public bool CastRay(float3 origin, float3 direction, out RayCastResult result) => Bindings.JPH_Shape_CastRay(Handle.Reinterpret(), origin, direction, out result); - - #endregion - - } -} diff --git a/Jolt/Generated/TaperedCapsuleShape.g.cs.meta b/Jolt/Generated/TaperedCapsuleShape.g.cs.meta deleted file mode 100644 index 8fa0ca4..0000000 --- a/Jolt/Generated/TaperedCapsuleShape.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 71bd1a5161f4bde478e5b20b6c1f1a88 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/TaperedCapsuleShapeSettings.g.cs b/Jolt/Generated/TaperedCapsuleShapeSettings.g.cs deleted file mode 100644 index f57288a..0000000 --- a/Jolt/Generated/TaperedCapsuleShapeSettings.g.cs +++ /dev/null @@ -1,49 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct TaperedCapsuleShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(TaperedCapsuleShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is TaperedCapsuleShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(TaperedCapsuleShapeSettings lhs, TaperedCapsuleShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(TaperedCapsuleShapeSettings lhs, TaperedCapsuleShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_TaperedCapsuleShapeSettings - - public TaperedCapsuleShape CreateShape() => new TaperedCapsuleShape { Handle = Bindings.JPH_TaperedCapsuleShapeSettings_CreateShape(Handle) }; - - #endregion - - #region JPH_ConvexShapeSettings - - public float GetDensity() => Bindings.JPH_ConvexShapeSettings_GetDensity(Handle.Reinterpret()); - - public void SetDensity(float density) => Bindings.JPH_ConvexShapeSettings_SetDensity(Handle.Reinterpret(), density); - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle.Reinterpret(), data); - - #endregion - - } -} diff --git a/Jolt/Generated/TaperedCapsuleShapeSettings.g.cs.meta b/Jolt/Generated/TaperedCapsuleShapeSettings.g.cs.meta deleted file mode 100644 index b61bcf7..0000000 --- a/Jolt/Generated/TaperedCapsuleShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d1af6feca4a2f9847ab05f72c746ff92 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/TriangleShape.g.cs b/Jolt/Generated/TriangleShape.g.cs deleted file mode 100644 index a69cf9e..0000000 --- a/Jolt/Generated/TriangleShape.g.cs +++ /dev/null @@ -1,79 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct TriangleShape : IEquatable - { - #region IEquatable - - public bool Equals(TriangleShape other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is TriangleShape other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(TriangleShape lhs, TriangleShape rhs) => lhs.Equals(rhs); - - public static bool operator !=(TriangleShape lhs, TriangleShape rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_TriangleShape - - public float GetConvexRadius() => Bindings.JPH_TriangleShape_GetConvexRadius(Handle); - - public float3 GetVertex1() => Bindings.JPH_TriangleShape_GetVertex1(Handle); - - public float3 GetVertex2() => Bindings.JPH_TriangleShape_GetVertex2(Handle); - - public float3 GetVertex3() => Bindings.JPH_TriangleShape_GetVertex3(Handle); - - #endregion - - #region JPH_Shape - - public void Destroy() => Bindings.JPH_Shape_Destroy(Handle.Reinterpret()); - - public ShapeType GetShapeType() => Bindings.JPH_Shape_GetType(Handle.Reinterpret()); - - public ShapeSubType GetSubType() => Bindings.JPH_Shape_GetSubType(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_Shape_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong userData) => Bindings.JPH_Shape_SetUserData(Handle.Reinterpret(), userData); - - public bool MustBeStatic() => Bindings.JPH_Shape_MustBeStatic(Handle.Reinterpret()); - - public float3 GetCenterOfMass() => Bindings.JPH_Shape_GetCenterOfMass(Handle.Reinterpret()); - - public AABox GetLocalBounds() => Bindings.JPH_Shape_GetLocalBounds(Handle.Reinterpret()); - - public uint GetSubShapeIDBitsRecursive() => Bindings.JPH_Shape_GetSubShapeIDBitsRecursive(Handle.Reinterpret()); - - public AABox GetWorldSpaceBounds(rmatrix4x4 centerOfMassTransform, float3 scale) => Bindings.JPH_Shape_GetWorldSpaceBounds(Handle.Reinterpret(), centerOfMassTransform, scale); - - public float GetInnerRadius() => Bindings.JPH_Shape_GetInnerRadius(Handle.Reinterpret()); - - public MassProperties GetMassProperties() => Bindings.JPH_Shape_GetMassProperties(Handle.Reinterpret()); - - public PhysicsMaterial GetMaterial(SubShapeID subShapeID) => new PhysicsMaterial { Handle = Bindings.JPH_Shape_GetMaterial(Handle.Reinterpret(), subShapeID) }; - - public float3 GetSurfaceNormal(SubShapeID subShapeID, float3 localPosition) => Bindings.JPH_Shape_GetSurfaceNormal(Handle.Reinterpret(), subShapeID, localPosition); - - public float GetVolume() => Bindings.JPH_Shape_GetVolume(Handle.Reinterpret()); - - public bool IsValidScale(float3 scale) => Bindings.JPH_Shape_IsValidScale(Handle.Reinterpret(), scale); - - public float3 MakeScaleValid(float3 scale) => Bindings.JPH_Shape_MakeScaleValid(Handle.Reinterpret(), scale); - - public Shape ScaleShape(float3 scale) => new Shape { Handle = Bindings.JPH_Shape_ScaleShape(Handle.Reinterpret(), scale) }; - - public bool CastRay(float3 origin, float3 direction, out RayCastResult result) => Bindings.JPH_Shape_CastRay(Handle.Reinterpret(), origin, direction, out result); - - #endregion - - } -} diff --git a/Jolt/Generated/TriangleShape.g.cs.meta b/Jolt/Generated/TriangleShape.g.cs.meta deleted file mode 100644 index cb71b37..0000000 --- a/Jolt/Generated/TriangleShape.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c5c773912617f5e45930b14da56e2b05 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Generated/TriangleShapeSettings.g.cs b/Jolt/Generated/TriangleShapeSettings.g.cs deleted file mode 100644 index 357cc11..0000000 --- a/Jolt/Generated/TriangleShapeSettings.g.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System; -using Jolt; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - public partial struct TriangleShapeSettings : IEquatable - { - #region IEquatable - - public bool Equals(TriangleShapeSettings other) => Handle.Equals(other.Handle); - - public override bool Equals(object obj) => obj is TriangleShapeSettings other && Equals(other); - - public override int GetHashCode() => Handle.GetHashCode(); - - public static bool operator ==(TriangleShapeSettings lhs, TriangleShapeSettings rhs) => lhs.Equals(rhs); - - public static bool operator !=(TriangleShapeSettings lhs, TriangleShapeSettings rhs) => !lhs.Equals(rhs); - - #endregion - - #region JPH_TriangleShapeSettings - - public TriangleShape CreateShape() => new TriangleShape { Handle = Bindings.JPH_TriangleShapeSettings_CreateShape(Handle) }; - - #endregion - - #region JPH_ShapeSettings - - public void Destroy() => Bindings.JPH_ShapeSettings_Destroy(Handle.Reinterpret()); - - public ulong GetUserData() => Bindings.JPH_ShapeSettings_GetUserData(Handle.Reinterpret()); - - public void SetUserData(ulong data) => Bindings.JPH_ShapeSettings_SetUserData(Handle.Reinterpret(), data); - - #endregion - - } -} diff --git a/Jolt/Generated/TriangleShapeSettings.g.cs.meta b/Jolt/Generated/TriangleShapeSettings.g.cs.meta deleted file mode 100644 index 7617837..0000000 --- a/Jolt/Generated/TriangleShapeSettings.g.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7bcf774abab8cb8449268896dc1d0bea -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Jolt.SourceGenerator.dll b/Jolt/Jolt.SourceGenerator.dll new file mode 100644 index 0000000..b822e4e Binary files /dev/null and b/Jolt/Jolt.SourceGenerator.dll differ diff --git a/Jolt/Jolt.SourceGenerator.dll.meta b/Jolt/Jolt.SourceGenerator.dll.meta new file mode 100644 index 0000000..24a2f41 --- /dev/null +++ b/Jolt/Jolt.SourceGenerator.dll.meta @@ -0,0 +1,60 @@ +fileFormatVersion: 2 +guid: b8da296c430a24d379ad4d08a2e208b9 +labels: +- RoslynAnalyzer +PluginImporter: + externalObjects: {} + serializedVersion: 3 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + Any: + enabled: 0 + settings: + Exclude Editor: 1 + Exclude Linux64: 1 + Exclude OSXUniversal: 1 + Exclude Win: 1 + Exclude Win64: 1 + Exclude iOS: 1 + Editor: + enabled: 0 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: AnyOS + Linux64: + enabled: 0 + settings: + CPU: None + OSXUniversal: + enabled: 0 + settings: + CPU: None + Win: + enabled: 0 + settings: + CPU: None + Win64: + enabled: 0 + settings: + CPU: None + WindowsStoreApps: + enabled: 0 + settings: + CPU: AnyCPU + iOS: + enabled: 0 + settings: + AddToEmbeddedBinaries: false + CPU: AnyCPU + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Jolt/Jolt.SourceGenerator.pdb b/Jolt/Jolt.SourceGenerator.pdb new file mode 100644 index 0000000..a5594a9 Binary files /dev/null and b/Jolt/Jolt.SourceGenerator.pdb differ diff --git a/Jolt/Native.meta b/Jolt/Jolt.SourceGenerator.pdb.meta similarity index 67% rename from Jolt/Native.meta rename to Jolt/Jolt.SourceGenerator.pdb.meta index f2308cb..00bc8ff 100644 --- a/Jolt/Native.meta +++ b/Jolt/Jolt.SourceGenerator.pdb.meta @@ -1,6 +1,5 @@ fileFormatVersion: 2 -guid: acdedc0da61ca434b98bb87751ecf712 -folderAsset: yes +guid: 0d5b169815a7145968339aaaf3fae727 DefaultImporter: externalObjects: {} userData: diff --git a/Jolt/Jolt.asmdef b/Jolt/Jolt.asmdef index c77cb5c..3a5db41 100644 --- a/Jolt/Jolt.asmdef +++ b/Jolt/Jolt.asmdef @@ -2,9 +2,6 @@ "name": "Jolt", "rootNamespace": "", "references": [ - "GUID:11387d2655e74408a69cb1837fae80c7", - "GUID:2665a8d13d1b3f18800f46e256720795", - "GUID:e0cd26848372d4e5c891c569017e11f1", "GUID:d8b63aba1907145bea998dd612889d6b" ], "includePlatforms": [], diff --git a/Jolt/Jolt.asmdef.meta b/Jolt/Jolt.asmdef.meta index 5906520..ee2ef87 100644 --- a/Jolt/Jolt.asmdef.meta +++ b/Jolt/Jolt.asmdef.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: a27d84b966358f640a9a96cddf1d0136 +guid: 8b18e559bac4e4ba3a04bc49752565a1 AssemblyDefinitionImporter: externalObjects: {} userData: diff --git a/Jolt/Jolt.cs b/Jolt/Jolt.cs deleted file mode 100644 index 1b536bf..0000000 --- a/Jolt/Jolt.cs +++ /dev/null @@ -1,43 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - public static class Jolt - { - /// - /// True Jolt is current initialized. - /// - public static bool Initialized { get; private set; } - - /// - /// Initialize Jolt, returning true if initialization succeeded. - /// - public static bool Initialize() - { - if (!Initialized) - { - Initialized = JPH_Init(); - } - - return Initialized; - } - - /// - /// Set the assertion failure handler for Jolt. - /// - public static void SetAssertFailureHandler(AssertFailureHandler handler) - { - JPH_SetAssertFailureHandler(handler); - } - - /// - /// Shutdown Jolt. - /// - public static void Shutdown() - { - JPH_Shutdown(); - - Initialized = false; - } - } -} diff --git a/Jolt/Jolt.cs.meta b/Jolt/Jolt.cs.meta deleted file mode 100644 index e999302..0000000 --- a/Jolt/Jolt.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: fc8ba3acd1364976b2dc0f3d76ceaa78 -timeCreated: 1717426150 \ No newline at end of file diff --git a/Jolt/Mathematics.meta b/Jolt/Mathematics.meta index b7e4660..0f19e99 100644 --- a/Jolt/Mathematics.meta +++ b/Jolt/Mathematics.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: dc62984bf0bd2864e99dd5c047f41ed2 +guid: d32a07cc0c748483087496b2bf52bdc3 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Jolt/Mathematics/rvec3.cs b/Jolt/Mathematics/rvec3.cs index d3d2ecd..bda6d0b 100644 --- a/Jolt/Mathematics/rvec3.cs +++ b/Jolt/Mathematics/rvec3.cs @@ -1,5 +1,6 @@ using System.Runtime.InteropServices; using Unity.Mathematics; +using UnityEngine; namespace Jolt { @@ -40,6 +41,11 @@ public static unsafe implicit operator rvec3(float3 vec) { return *((rvec3*) &vec); } + + public static unsafe implicit operator rvec3(Vector3 vec) + { + return *((rvec3*) &vec); + } public static rvec3 one => new rvec3(1f, 1f, 1f); diff --git a/Jolt/Native/NativeBool.cs b/Jolt/Native/NativeBool.cs deleted file mode 100644 index 1252b93..0000000 --- a/Jolt/Native/NativeBool.cs +++ /dev/null @@ -1,40 +0,0 @@ -using System; - -namespace Jolt -{ - /// - /// A uint with implicit bool casting, providing consistent interop with native "bool" uints. - /// - public struct NativeBool : IEquatable - { - public byte Value; - - public static implicit operator bool(NativeBool value) - { - return value.Value != 0; - } - - public static implicit operator NativeBool(bool value) - { - return new NativeBool { Value = value ? (byte)1 : (byte)0 }; - } - - public static bool operator false(NativeBool value) => value.Value == 0; - - public static bool operator true(NativeBool value) => value.Value != 0; - - public static bool operator ==(NativeBool lhs, NativeBool rhs) => lhs.Value == rhs.Value; - - public static bool operator !=(NativeBool lhs, NativeBool rhs) => lhs.Value != rhs.Value; - - #region IEquatable - - public bool Equals(NativeBool other) => Value == other.Value; - - public override bool Equals(object obj) => obj is NativeBool other && Equals(other); - - public override int GetHashCode() => Value.GetHashCode(); - - #endregion - } -} diff --git a/Jolt/Native/NativeBool.cs.meta b/Jolt/Native/NativeBool.cs.meta deleted file mode 100644 index df1b5a9..0000000 --- a/Jolt/Native/NativeBool.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 430e9cd9ce2f6974cb6e762552bb9da6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Native/NativeHandle.cs b/Jolt/Native/NativeHandle.cs deleted file mode 100644 index 9a29ac5..0000000 --- a/Jolt/Native/NativeHandle.cs +++ /dev/null @@ -1,116 +0,0 @@ -using System; -using System.Runtime.CompilerServices; - -namespace Jolt -{ - /// - /// A pointer to a native resource with optional safety checks against use-after-free. - /// - internal unsafe struct NativeHandle : IDisposable, IEquatable> where T : unmanaged - { - #if !JOLT_DISABLE_SAFETY_CHECKS - private NativeSafetyHandle safety; - #endif - - private T* ptr; - - public nint RawValue => (nint)ptr; - - public NativeHandle(T* ptr) - { - #if !JOLT_DISABLE_SAFETY_CHECKS - safety = NativeSafetyHandle.Create((nint)ptr); - #endif - - this.ptr = ptr; - } - - /// - /// Create a NativeHandle to a new pointer with the same safety handle as this handle. If this handle is disposed of, the owned handle will throw if it is dereferenced. - /// - public NativeHandle CreateOwnedHandle(U* ptr) where U : unmanaged - { - #if !JOLT_DISABLE_SAFETY_CHECKS - return new NativeHandle { ptr = ptr, safety = safety }; - #else - return new NativeHandle { ptr = ptr }; - #endif - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public readonly NativeHandle Reinterpret() where U : unmanaged - { - #if !JOLT_DISABLE_SAFETY_CHECKS - return new NativeHandle { ptr = (U*) ptr, safety = safety }; - #else - return new NativeHandle { ptr = (U*) ptr }; - #endif - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public readonly T* IntoPointer() - { - #if !JOLT_DISABLE_SAFETY_CHECKS - NativeSafetyHandle.Assert(safety); - #endif - - return ptr; - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static implicit operator T* (NativeHandle handle) - { - return handle.IntoPointer(); - } - - #region IDisposable - - public void Dispose() - { - #if !JOLT_DISABLE_SAFETY_CHECKS - NativeSafetyHandle.Release(safety); - #endif - - ptr = null; - } - - #endregion - - #region IEquatable - - public bool Equals(NativeHandle other) - { - #if !JOLT_DISABLE_SAFETY_CHECKS - return ptr == other.ptr && safety == other.safety; - #else - return ptr == other.ptr; - #endif - } - - public override bool Equals(object obj) - { - return obj is NativeHandle other && Equals(other); - } - - public override int GetHashCode() - { - #if !JOLT_DISABLE_SAFETY_CHECKS - return HashCode.Combine((nint)ptr, safety); - #else - return ((nint)ptr).GetHashCode(); - #endif - } - - public static bool operator ==(NativeHandle lhs, NativeHandle rhs) - { - return lhs.Equals(rhs); - } - - public static bool operator !=(NativeHandle lhs, NativeHandle rhs) - { - return !lhs.Equals(rhs); - } - - #endregion - } -} diff --git a/Jolt/Native/NativeHandle.cs.meta b/Jolt/Native/NativeHandle.cs.meta deleted file mode 100644 index 2673662..0000000 --- a/Jolt/Native/NativeHandle.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 88051e5acfbbe774a93ae1c885baca00 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Native/NativeSafetyHandle.cs b/Jolt/Native/NativeSafetyHandle.cs deleted file mode 100644 index 0a3de9e..0000000 --- a/Jolt/Native/NativeSafetyHandle.cs +++ /dev/null @@ -1,156 +0,0 @@ -#if !JOLT_DISABLE_SAFETY_CHECKS - -using System; -using System.Runtime.CompilerServices; -using Unity.Collections; -using UnityEngine; - -[assembly: InternalsVisibleTo("Jolt.Unity")] -[assembly: InternalsVisibleTo("Jolt.Editor")] - -namespace Jolt -{ - /// - /// A safety handle for detecting use-after-free access of native objects. - /// - public struct NativeSafetyHandle : IEquatable - { - private static NativeHashMap indexes; - - private static NativeList versions; - - private static readonly object @lock = new(); - - private static bool initialized; - - private int index; - private int version; - - internal static void Initialize() - { - if (initialized) - { - return; - } - - lock (@lock) - { - indexes = new(1024, Allocator.Persistent); - versions = new(1024, Allocator.Persistent); - initialized = true; - } - } - - internal static void Dispose() - { - lock (@lock) - { - indexes.Dispose(); - versions.Dispose(); - initialized = false; - } - } - - /// - /// Create (or reuse) a safety handle for a . - /// - public static NativeSafetyHandle Create(nint ptr) - { - Initialize(); - - lock (@lock) - { - if (indexes.TryGetValue(ptr, out var index)) - { - // Pointer is already registered. This pattern happens a lot; Body.GetMaterial is a good example. - // The material is a single ref counted resource in Jolt, but the binding code can create a lot - // of distinct handles to it from different bodies. They should all share the same safety - // handle so that destroying the material invalidates all of the handles. - return new NativeSafetyHandle { index = index, version = versions[index] }; - } - - index = versions.Length; - - indexes.Add(ptr, index); - versions.Add(1); - - return new NativeSafetyHandle { index = index, version = 1 }; - } - } - - /// - /// Release a safety handle. A future attempt to assert the handle will throw an exception. - /// - public static void Release(in NativeSafetyHandle handle) - { - Initialize(); - - lock (@lock) - { - if (versions.Length < handle.index) - { - Debug.LogWarning("A NativeSafetyHandle is being released for a handle index that is out of range."); - return; - } - - if (versions[handle.index] != handle.version) - { - Debug.LogWarning("A NativeSafetyHandle is being released for a handle index that was already released."); - return; - } - - versions[handle.index] += 1; - } - } - - public static void Assert(in NativeSafetyHandle handle) - { - Initialize(); - - lock (@lock) - { - if (versions.Length < handle.index) - { - // very unexpected situation, this would be a safety handle that survived a domain reload - throw new ObjectDisposedException("The native resource has been disposed."); - } - - if (versions[handle.index] != handle.version) - { - throw new ObjectDisposedException("The native resource has been disposed."); - } - } - } - - #region IEquatable - - public bool Equals(NativeSafetyHandle other) - { - return index == other.index && version == other.version; - } - - public override bool Equals(object obj) - { - return obj is NativeSafetyHandle other && Equals(other); - } - - public override int GetHashCode() - { - return HashCode.Combine(index, version); - } - - public static bool operator ==(NativeSafetyHandle left, NativeSafetyHandle right) - { - return left.Equals(right); - } - - public static bool operator !=(NativeSafetyHandle left, NativeSafetyHandle right) - { - return !left.Equals(right); - } - - #endregion - } -} - -#endif diff --git a/Jolt/Native/NativeSafetyHandle.cs.meta b/Jolt/Native/NativeSafetyHandle.cs.meta deleted file mode 100644 index 0a097ba..0000000 --- a/Jolt/Native/NativeSafetyHandle.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 479bf48cb7c24484810383ce4903cdf6 -timeCreated: 1713113885 \ No newline at end of file diff --git a/Jolt/Native/NativeTypeNameAttribute.cs b/Jolt/Native/NativeTypeNameAttribute.cs deleted file mode 100644 index 27a574f..0000000 --- a/Jolt/Native/NativeTypeNameAttribute.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; - -namespace Jolt -{ - internal class NativeTypeNameAttribute : Attribute - { - public string NativeTypeName; - - public NativeTypeNameAttribute(string s) - { - NativeTypeName = s; - } - } -} diff --git a/Jolt/Native/NativeTypeNameAttribute.cs.meta b/Jolt/Native/NativeTypeNameAttribute.cs.meta deleted file mode 100644 index 93c0df7..0000000 --- a/Jolt/Native/NativeTypeNameAttribute.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 67dae67f14ec046468e70e234442fb05 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types.meta b/Jolt/Types.meta deleted file mode 100644 index e915d96..0000000 --- a/Jolt/Types.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f1e5146b24a2434094e3da7558423c3d -timeCreated: 1740845450 \ No newline at end of file diff --git a/Jolt/Types/AABox.cs b/Jolt/Types/AABox.cs deleted file mode 100644 index c0be061..0000000 --- a/Jolt/Types/AABox.cs +++ /dev/null @@ -1,42 +0,0 @@ -using System; -using System.Runtime.InteropServices; -using Unity.Mathematics; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_AABox))] - public struct AABox : IEquatable - { - public float3 Min; - public float3 Max; - - #region IEquatable - - public bool Equals(AABox other) - { - return Min.Equals(other.Min) && Max.Equals(other.Max); - } - - public override bool Equals(object obj) - { - return obj is AABox other && Equals(other); - } - - public override int GetHashCode() - { - return HashCode.Combine(Min, Max); - } - - public static bool operator ==(AABox lhs, AABox rhs) - { - return lhs.Equals(rhs); - } - - public static bool operator !=(AABox lhs, AABox rhs) - { - return !lhs.Equals(rhs); - } - - #endregion - } -} diff --git a/Jolt/Types/AABox.cs.meta b/Jolt/Types/AABox.cs.meta deleted file mode 100644 index 306e8ec..0000000 --- a/Jolt/Types/AABox.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 993185daed32d0543929d2b174c212ad -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/Activation.cs b/Jolt/Types/Activation.cs deleted file mode 100644 index 5738a05..0000000 --- a/Jolt/Types/Activation.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - public enum Activation : uint - { - Activate = 0, - DontActivate = 1, - } -} diff --git a/Jolt/Types/Activation.cs.meta b/Jolt/Types/Activation.cs.meta deleted file mode 100644 index a46b581..0000000 --- a/Jolt/Types/Activation.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 20b4148ea95f1d3438f0a7ec9b1026d4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/ActiveEdgeMode.cs b/Jolt/Types/ActiveEdgeMode.cs deleted file mode 100644 index ea1833e..0000000 --- a/Jolt/Types/ActiveEdgeMode.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - public enum ActiveEdgeMode : uint - { - CollideOnlyWithActive = 0, - CollideWithAll = 1, - } -} diff --git a/Jolt/Types/ActiveEdgeMode.cs.meta b/Jolt/Types/ActiveEdgeMode.cs.meta deleted file mode 100644 index 7c44668..0000000 --- a/Jolt/Types/ActiveEdgeMode.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 82431c32b0e94fceacb9d81ffacbea67 -timeCreated: 1741012335 \ No newline at end of file diff --git a/Jolt/Types/AllowedDOFs.cs b/Jolt/Types/AllowedDOFs.cs deleted file mode 100644 index 36bbc4b..0000000 --- a/Jolt/Types/AllowedDOFs.cs +++ /dev/null @@ -1,45 +0,0 @@ -namespace Jolt -{ - public enum AllowedDOFs : uint - { - /// - /// All degrees of freedom are allowed. - /// - All = 0b111111, - - /// - /// Body can move in world space X axis. - /// - TranslationX = 0b000001, - - /// - /// Body can move in world space Y axis. - /// - TranslationY = 0b000010, - - /// - /// Body can move in world space Z axis. - /// - TranslationZ = 0b000100, - - /// - /// Body can rotate around local space X axis. - /// - RotationX = 0b001000, - - /// - /// Body can rotate around local space Y axis. - /// - RotationY = 0b010000, - - /// - /// Body can rotate around local space Z axis. - /// - RotationZ = 0b100000, - - /// - /// Body can only move in world space X and Y axis and rotate around local space Z axis. - /// - Plane2D = TranslationX | TranslationY | RotationZ, - } -} diff --git a/Jolt/Types/AllowedDOFs.cs.meta b/Jolt/Types/AllowedDOFs.cs.meta deleted file mode 100644 index b8b8f80..0000000 --- a/Jolt/Types/AllowedDOFs.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 324336c3395fc33409268a1792d6f9aa -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/BackFaceMode.cs b/Jolt/Types/BackFaceMode.cs deleted file mode 100644 index b67144e..0000000 --- a/Jolt/Types/BackFaceMode.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - public enum BackFaceMode : uint - { - IgnoreBackFaces = 0, - CollideWithBackFaces = 1, - } -} \ No newline at end of file diff --git a/Jolt/Types/BackFaceMode.cs.meta b/Jolt/Types/BackFaceMode.cs.meta deleted file mode 100644 index e813778..0000000 --- a/Jolt/Types/BackFaceMode.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 0ba719e0bd3c4bbabdca3c0e9fc55f95 -timeCreated: 1726416868 \ No newline at end of file diff --git a/Jolt/Types/Body.cs b/Jolt/Types/Body.cs deleted file mode 100644 index 84429d2..0000000 --- a/Jolt/Types/Body.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_Body")] - public partial struct Body - { - internal NativeHandle Handle; - - public static Body GetFixedToWorldBody() - { - return new Body { Handle = JPH_Body_GetFixedToWorldBody() }; // TODO generate - } - } -} diff --git a/Jolt/Types/Body.cs.meta b/Jolt/Types/Body.cs.meta deleted file mode 100644 index cddef69..0000000 --- a/Jolt/Types/Body.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a47953cc6e89b52429d112140cde40a8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/BodyActivationListener.cs b/Jolt/Types/BodyActivationListener.cs deleted file mode 100644 index 1ea7ce1..0000000 --- a/Jolt/Types/BodyActivationListener.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_BodyActivationListener")] - public partial struct BodyActivationListener - { - internal NativeHandle Handle; - - public static BodyActivationListener Create(IBodyActivationListener delegates) - { - return new BodyActivationListener { Handle = JPH_BodyActivationListener_Create(delegates) }; - } - } -} diff --git a/Jolt/Types/BodyActivationListener.cs.meta b/Jolt/Types/BodyActivationListener.cs.meta deleted file mode 100644 index 77bd08f..0000000 --- a/Jolt/Types/BodyActivationListener.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 994e3cc468db4bbf8228de37a7a8543f -timeCreated: 1739197202 \ No newline at end of file diff --git a/Jolt/Types/BodyCreationSettings.cs b/Jolt/Types/BodyCreationSettings.cs deleted file mode 100644 index 675190f..0000000 --- a/Jolt/Types/BodyCreationSettings.cs +++ /dev/null @@ -1,27 +0,0 @@ -using Unity.Mathematics; - -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_BodyCreationSettings")] - public partial struct BodyCreationSettings - { - internal NativeHandle Handle; - - public static BodyCreationSettings Create() - { - return new BodyCreationSettings { Handle = JPH_BodyCreationSettings_Create() }; - } - - public static BodyCreationSettings Create(ShapeSettings settings, rvec3 position, quaternion rotation, MotionType motion, ObjectLayer layer) - { - return new BodyCreationSettings { Handle = JPH_BodyCreationSettings_Create(settings.Handle, position, rotation, motion, layer) }; - } - - public static BodyCreationSettings Create(Shape shape, rvec3 position, quaternion rotation, MotionType motion, ObjectLayer layer) - { - return new BodyCreationSettings { Handle = JPH_BodyCreationSettings_Create(shape.Handle, position, rotation, motion, layer) }; - } - } -} diff --git a/Jolt/Types/BodyCreationSettings.cs.meta b/Jolt/Types/BodyCreationSettings.cs.meta deleted file mode 100644 index 344a767..0000000 --- a/Jolt/Types/BodyCreationSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f0732a34ca905494aa37e4c505359d30 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/BodyFilter.cs b/Jolt/Types/BodyFilter.cs deleted file mode 100644 index 8605fb6..0000000 --- a/Jolt/Types/BodyFilter.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_BodyFilter")] - public partial struct BodyFilter - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/BodyFilter.cs.meta b/Jolt/Types/BodyFilter.cs.meta deleted file mode 100644 index d7cefda..0000000 --- a/Jolt/Types/BodyFilter.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 4b2dd7ec23e9489dac759dfb56a05159 -timeCreated: 1742568271 \ No newline at end of file diff --git a/Jolt/Types/BodyID.cs b/Jolt/Types/BodyID.cs deleted file mode 100644 index e5f3bb3..0000000 --- a/Jolt/Types/BodyID.cs +++ /dev/null @@ -1,40 +0,0 @@ -using System; -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(uint))] - public struct BodyID : IEquatable - { - public uint Value; - - #region IEquatable - - public bool Equals(BodyID other) - { - return Value == other.Value; - } - - public override bool Equals(object obj) - { - return obj is BodyID other && Equals(other); - } - - public override int GetHashCode() - { - return (int) Value; - } - - public static bool operator ==(BodyID lhs, BodyID rhs) - { - return lhs.Equals(rhs); - } - - public static bool operator !=(BodyID lhs, BodyID rhs) - { - return !lhs.Equals(rhs); - } - - #endregion - } -} diff --git a/Jolt/Types/BodyID.cs.meta b/Jolt/Types/BodyID.cs.meta deleted file mode 100644 index 78f3a6f..0000000 --- a/Jolt/Types/BodyID.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 90cf0d29af1b02947a1e2082e44526ff -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/BodyInterface.cs b/Jolt/Types/BodyInterface.cs deleted file mode 100644 index f513f5c..0000000 --- a/Jolt/Types/BodyInterface.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_BodyInterface")] - public partial struct BodyInterface - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/BodyInterface.cs.meta b/Jolt/Types/BodyInterface.cs.meta deleted file mode 100644 index 2e74bfd..0000000 --- a/Jolt/Types/BodyInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9e8a66b2b55e7a044a0430953f2da532 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/BodyLockInterface.cs b/Jolt/Types/BodyLockInterface.cs deleted file mode 100644 index 4df56fa..0000000 --- a/Jolt/Types/BodyLockInterface.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_BodyLockInterface")] - public partial struct BodyLockInterface - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/BodyLockInterface.cs.meta b/Jolt/Types/BodyLockInterface.cs.meta deleted file mode 100644 index df329fe..0000000 --- a/Jolt/Types/BodyLockInterface.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f0451fe567124dc5ba981dddb0d1bbc7 -timeCreated: 1740938280 \ No newline at end of file diff --git a/Jolt/Types/BodyType.cs b/Jolt/Types/BodyType.cs deleted file mode 100644 index b2e1e96..0000000 --- a/Jolt/Types/BodyType.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace Jolt -{ - public enum BodyType : uint - { - /// - /// Rigid body consisting of a rigid shape. - /// - Rigid = 0, - - /// - /// Soft body consisting of a deformable shape. - /// - Soft = 1, - } -} diff --git a/Jolt/Types/BodyType.cs.meta b/Jolt/Types/BodyType.cs.meta deleted file mode 100644 index 23e30eb..0000000 --- a/Jolt/Types/BodyType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fc5780be6f1830045b5db5e5e06e8410 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/BoxShape.cs b/Jolt/Types/BoxShape.cs deleted file mode 100644 index e109e45..0000000 --- a/Jolt/Types/BoxShape.cs +++ /dev/null @@ -1,16 +0,0 @@ -using Unity.Mathematics; -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_BoxShape", "JPH_ConvexShape", "JPH_Shape")] - public partial struct BoxShape - { - internal NativeHandle Handle; - - public static BoxShape Create(float3 halfExtent, float convexRadius = PhysicsSettings.DefaultConvexRadius) - { - return new BoxShape { Handle = JPH_BoxShape_Create(halfExtent, convexRadius) }; - } - } -} diff --git a/Jolt/Types/BoxShape.cs.meta b/Jolt/Types/BoxShape.cs.meta deleted file mode 100644 index 79dad4e..0000000 --- a/Jolt/Types/BoxShape.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8bb5787ea892b1b48ab16cb0859b548c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/BoxShapeSettings.cs b/Jolt/Types/BoxShapeSettings.cs deleted file mode 100644 index 28a9cda..0000000 --- a/Jolt/Types/BoxShapeSettings.cs +++ /dev/null @@ -1,17 +0,0 @@ -using Unity.Mathematics; - -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_BoxShapeSettings", "JPH_ConvexShapeSettings", "JPH_ShapeSettings")] - public partial struct BoxShapeSettings - { - internal NativeHandle Handle; - - public static BoxShapeSettings Create(float3 halfExtent, float convexRadius = PhysicsSettings.DefaultConvexRadius) - { - return new BoxShapeSettings { Handle = JPH_BoxShapeSettings_Create(halfExtent, convexRadius) }; - } - } -} diff --git a/Jolt/Types/BoxShapeSettings.cs.meta b/Jolt/Types/BoxShapeSettings.cs.meta deleted file mode 100644 index dceae10..0000000 --- a/Jolt/Types/BoxShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 31625fe3b6850a34a89f548e2aef894f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/BroadPhaseCastResult.cs b/Jolt/Types/BroadPhaseCastResult.cs deleted file mode 100644 index 8efc100..0000000 --- a/Jolt/Types/BroadPhaseCastResult.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_BroadPhaseCastResult))] - public struct BroadPhaseCastResult - { - public BodyID BodyID; - - public float Fraction; - } -} diff --git a/Jolt/Types/BroadPhaseCastResult.cs.meta b/Jolt/Types/BroadPhaseCastResult.cs.meta deleted file mode 100644 index a3a1709..0000000 --- a/Jolt/Types/BroadPhaseCastResult.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 67506e1bb8df43ff8b1b8de7113496c7 -timeCreated: 1726417587 \ No newline at end of file diff --git a/Jolt/Types/BroadPhaseLayer.cs b/Jolt/Types/BroadPhaseLayer.cs deleted file mode 100644 index f0a348e..0000000 --- a/Jolt/Types/BroadPhaseLayer.cs +++ /dev/null @@ -1,55 +0,0 @@ -using System; -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(byte))] - public readonly struct BroadPhaseLayer : IEquatable - { - // A distinct type wrapper around a byte. See https://github.com/jrouwe/JoltPhysics/blob/master/Jolt/Physics/Collision/BroadPhase/BroadPhaseLayer.h - - public readonly byte Value; - - public BroadPhaseLayer(byte value) - { - Value = value; - } - - /// - /// Implicit cast from byte. The inverse is not available to avoid confusion. - /// - public static implicit operator BroadPhaseLayer(byte layer) - { - return new BroadPhaseLayer(layer); - } - - #region IEquatable - - public bool Equals(BroadPhaseLayer other) - { - return Value == other.Value; - } - - public override bool Equals(object obj) - { - return obj is BroadPhaseLayer other && Equals(other); - } - - public override int GetHashCode() - { - return Value.GetHashCode(); - } - - public static bool operator ==(BroadPhaseLayer lhs, BroadPhaseLayer rhs) - { - return lhs.Equals(rhs); - } - - public static bool operator !=(BroadPhaseLayer lhs, BroadPhaseLayer rhs) - { - return !lhs.Equals(rhs); - } - - #endregion - } -} diff --git a/Jolt/Types/BroadPhaseLayer.cs.meta b/Jolt/Types/BroadPhaseLayer.cs.meta deleted file mode 100644 index c821dd3..0000000 --- a/Jolt/Types/BroadPhaseLayer.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 6763fa27c12c4a83929f271e85dbbf1d -timeCreated: 1713714769 \ No newline at end of file diff --git a/Jolt/Types/BroadPhaseLayerFilter.cs b/Jolt/Types/BroadPhaseLayerFilter.cs deleted file mode 100644 index e0a4851..0000000 --- a/Jolt/Types/BroadPhaseLayerFilter.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_BroadPhaseLayerFilter")] - public partial struct BroadPhaseLayerFilter - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/BroadPhaseLayerFilter.cs.meta b/Jolt/Types/BroadPhaseLayerFilter.cs.meta deleted file mode 100644 index d7aeba6..0000000 --- a/Jolt/Types/BroadPhaseLayerFilter.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 407ea725fe9f44b580b0d6307a9815dd -timeCreated: 1741138634 \ No newline at end of file diff --git a/Jolt/Types/BroadPhaseLayerInterface.cs b/Jolt/Types/BroadPhaseLayerInterface.cs deleted file mode 100644 index 433f6a9..0000000 --- a/Jolt/Types/BroadPhaseLayerInterface.cs +++ /dev/null @@ -1,17 +0,0 @@ -namespace Jolt -{ - public partial struct BroadPhaseLayerInterface - { - internal NativeHandle Handle; - - public static implicit operator BroadPhaseLayerInterface(BroadPhaseLayerInterfaceMask mask) - { - return new BroadPhaseLayerInterface { Handle = mask.Handle }; - } - - public static implicit operator BroadPhaseLayerInterface(BroadPhaseLayerInterfaceTable table) - { - return new BroadPhaseLayerInterface { Handle = table.Handle }; - } - } -} diff --git a/Jolt/Types/BroadPhaseLayerInterface.cs.meta b/Jolt/Types/BroadPhaseLayerInterface.cs.meta deleted file mode 100644 index 0ae2f28..0000000 --- a/Jolt/Types/BroadPhaseLayerInterface.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b2885f68c02f4e44a62f3c3343233c57 -timeCreated: 1704918736 \ No newline at end of file diff --git a/Jolt/Types/BroadPhaseLayerInterfaceMask.cs b/Jolt/Types/BroadPhaseLayerInterfaceMask.cs deleted file mode 100644 index 9d9c934..0000000 --- a/Jolt/Types/BroadPhaseLayerInterfaceMask.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_BroadPhaseLayerInterfaceMask")] - public partial struct BroadPhaseLayerInterfaceMask - { - internal NativeHandle Handle; - - public static BroadPhaseLayerInterfaceMask Create(uint numBroadPhaseLayers) - { - return new BroadPhaseLayerInterfaceMask { Handle = JPH_BroadPhaseLayerInterfaceMask_Create(numBroadPhaseLayers) }; - } - } -} diff --git a/Jolt/Types/BroadPhaseLayerInterfaceMask.cs.meta b/Jolt/Types/BroadPhaseLayerInterfaceMask.cs.meta deleted file mode 100644 index d3735cd..0000000 --- a/Jolt/Types/BroadPhaseLayerInterfaceMask.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 9309114d6f3649bb9ff9501a61c4d287 -timeCreated: 1713670133 \ No newline at end of file diff --git a/Jolt/Types/BroadPhaseLayerInterfaceTable.cs b/Jolt/Types/BroadPhaseLayerInterfaceTable.cs deleted file mode 100644 index f5e3630..0000000 --- a/Jolt/Types/BroadPhaseLayerInterfaceTable.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_BroadPhaseLayerInterfaceTable")] - public partial struct BroadPhaseLayerInterfaceTable - { - internal NativeHandle Handle; - - public static BroadPhaseLayerInterfaceTable Create(uint numObjectLayers, uint numBroadPhaseLayers) - { - return new BroadPhaseLayerInterfaceTable { Handle = JPH_BroadPhaseLayerInterfaceTable_Create(numObjectLayers, numBroadPhaseLayers) }; - } - } -} diff --git a/Jolt/Types/BroadPhaseLayerInterfaceTable.cs.meta b/Jolt/Types/BroadPhaseLayerInterfaceTable.cs.meta deleted file mode 100644 index 5c9de1c..0000000 --- a/Jolt/Types/BroadPhaseLayerInterfaceTable.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: e74d47c17aac4fc4be124a8ce6138d36 -timeCreated: 1713672141 \ No newline at end of file diff --git a/Jolt/Types/BroadPhaseQuery.cs b/Jolt/Types/BroadPhaseQuery.cs deleted file mode 100644 index 478e4aa..0000000 --- a/Jolt/Types/BroadPhaseQuery.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_BroadPhaseQuery")] - public partial struct BroadPhaseQuery - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/BroadPhaseQuery.cs.meta b/Jolt/Types/BroadPhaseQuery.cs.meta deleted file mode 100644 index 65d14bc..0000000 --- a/Jolt/Types/BroadPhaseQuery.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b3e1281a52df452f916dba1ff7e3692e -timeCreated: 1740964137 \ No newline at end of file diff --git a/Jolt/Types/CapsuleShape.cs b/Jolt/Types/CapsuleShape.cs deleted file mode 100644 index 6c02868..0000000 --- a/Jolt/Types/CapsuleShape.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_CapsuleShape", "JPH_ConvexShape", "JPH_Shape")] - public partial struct CapsuleShape - { - internal NativeHandle Handle; - - public static CapsuleShape Create(float halfHeightOfCylinder, float radius) - { - return new CapsuleShape { Handle = JPH_CapsuleShape_Create(halfHeightOfCylinder, radius) }; - } - } -} diff --git a/Jolt/Types/CapsuleShape.cs.meta b/Jolt/Types/CapsuleShape.cs.meta deleted file mode 100644 index a87e8ff..0000000 --- a/Jolt/Types/CapsuleShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: c69b92c161194b11bb554c674160c65c -timeCreated: 1706372189 \ No newline at end of file diff --git a/Jolt/Types/CapsuleShapeSettings.cs b/Jolt/Types/CapsuleShapeSettings.cs deleted file mode 100644 index 7497eb0..0000000 --- a/Jolt/Types/CapsuleShapeSettings.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System; -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_CapsuleShapeSettings", "JPH_ConvexShapeSettings", "JPH_ShapeSettings")] - public partial struct CapsuleShapeSettings - { - internal NativeHandle Handle; - - public static CapsuleShapeSettings Create(float halfHeightOfCylinder, float radius) - { - return new CapsuleShapeSettings { Handle = JPH_CapsuleShapeSettings_Create(halfHeightOfCylinder, radius) }; - } - } -} diff --git a/Jolt/Types/CapsuleShapeSettings.cs.meta b/Jolt/Types/CapsuleShapeSettings.cs.meta deleted file mode 100644 index 4e65b25..0000000 --- a/Jolt/Types/CapsuleShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: e9873b9b8592435a8116e81c3d4c382a -timeCreated: 1706372942 \ No newline at end of file diff --git a/Jolt/Types/CollectFacesMode.cs b/Jolt/Types/CollectFacesMode.cs deleted file mode 100644 index aec2511..0000000 --- a/Jolt/Types/CollectFacesMode.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - public enum CollectFacesMode : uint - { - CollectFaces = 0, - NoFaces = 1, - } -} diff --git a/Jolt/Types/CollectFacesMode.cs.meta b/Jolt/Types/CollectFacesMode.cs.meta deleted file mode 100644 index dd009b6..0000000 --- a/Jolt/Types/CollectFacesMode.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f0d9905d54ee4a1bb29c6416be23a937 -timeCreated: 1741012494 \ No newline at end of file diff --git a/Jolt/Types/CollidePointResult.cs b/Jolt/Types/CollidePointResult.cs deleted file mode 100644 index c87da97..0000000 --- a/Jolt/Types/CollidePointResult.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_CollidePointResult))] - public struct CollidePointResult - { - public BodyID BodyID; - - public SubShapeID SubShapeID; - } -} diff --git a/Jolt/Types/CollidePointResult.cs.meta b/Jolt/Types/CollidePointResult.cs.meta deleted file mode 100644 index fa53b4e..0000000 --- a/Jolt/Types/CollidePointResult.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 3883573bbb654ce9a6df666451f8d677 -timeCreated: 1726417765 \ No newline at end of file diff --git a/Jolt/Types/CollideSettings.cs b/Jolt/Types/CollideSettings.cs deleted file mode 100644 index fcea8b5..0000000 --- a/Jolt/Types/CollideSettings.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Mathematics; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_CollideSettingsBase))] - public struct CollideSettings - { - public ActiveEdgeMode ActiveEdgeMode; - - public CollectFacesMode CollectFacesMode; - - public float CollisionTolerance; - - public float PenetrationTolerance; - - public float3 ActiveEdgeMovementDirection; - } -} diff --git a/Jolt/Types/CollideSettings.cs.meta b/Jolt/Types/CollideSettings.cs.meta deleted file mode 100644 index 93d85e4..0000000 --- a/Jolt/Types/CollideSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 0077a1a10ccd46fd89968e973b8ff639 -timeCreated: 1741185887 \ No newline at end of file diff --git a/Jolt/Types/CollideShapeResult.cs b/Jolt/Types/CollideShapeResult.cs deleted file mode 100644 index 128e271..0000000 --- a/Jolt/Types/CollideShapeResult.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Collections; -using Unity.Mathematics; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_CollideShapeResult))] - public struct CollideShapeResult - { - public float3 ContactPointOn1; - - public float3 ContactPointOn2; - - public float3 PenetrationAxis; - - public float PenetrationDepth; - - public SubShapeID SubShapeID1; - - public SubShapeID SubShapeID2; - - public BodyID BodyID2; - - public uint Shape1FaceCount; - - public nint Shape1Faces; // TODO use NativeArray - - public uint Shape2FaceCount; - - public nint Shape2Faces; // TODO use NativeArray - } -} diff --git a/Jolt/Types/CollideShapeResult.cs.meta b/Jolt/Types/CollideShapeResult.cs.meta deleted file mode 100644 index d0888ee..0000000 --- a/Jolt/Types/CollideShapeResult.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f9faef1bd4f6402c861bab75ca235ffe -timeCreated: 1726417856 \ No newline at end of file diff --git a/Jolt/Types/CollideShapeSettings.cs b/Jolt/Types/CollideShapeSettings.cs deleted file mode 100644 index d584607..0000000 --- a/Jolt/Types/CollideShapeSettings.cs +++ /dev/null @@ -1,57 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Mathematics; - -using static Jolt.Bindings; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_CollideShapeSettings))] - public struct CollideShapeSettings - { - /// - /// Create a new instance initialized with the default values. - /// - public static CollideShapeSettings Create() - { - CollideShapeSettings result = default; - JPH_CollideShapeSettings_Init(ref result); - return result; - } - - private CollideSettings @base; - - public ActiveEdgeMode ActiveEdgeMode - { - get => @base.ActiveEdgeMode; - set => @base.ActiveEdgeMode = value; - } - - public CollectFacesMode CollectFacesMode - { - get => @base.CollectFacesMode; - set => @base.CollectFacesMode = value; - } - - public float CollisionTolerance - { - get => @base.CollisionTolerance; - set => @base.CollisionTolerance = value; - } - - public float PenetrationTolerance - { - get => @base.PenetrationTolerance; - set => @base.PenetrationTolerance = value; - } - - public float3 ActiveEdgeMovementDirection - { - get => @base.ActiveEdgeMovementDirection; - set => @base.ActiveEdgeMovementDirection = value; - } - - public float MaxSeparationDistance; - - public BackFaceMode BackFaceMode; - } -} diff --git a/Jolt/Types/CollideShapeSettings.cs.meta b/Jolt/Types/CollideShapeSettings.cs.meta deleted file mode 100644 index 2b73a65..0000000 --- a/Jolt/Types/CollideShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2d9ece83158c41b59bca786de003aa0f -timeCreated: 1741185850 \ No newline at end of file diff --git a/Jolt/Types/CollisionCollectorType.cs b/Jolt/Types/CollisionCollectorType.cs deleted file mode 100644 index c7418d8..0000000 --- a/Jolt/Types/CollisionCollectorType.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace Jolt -{ - public enum CollisionCollectorType : uint - { - AllHit = 0, - AllHitSorted = 1, - ClosestHit = 2, - AnyHit = 3, - } -} diff --git a/Jolt/Types/CollisionCollectorType.cs.meta b/Jolt/Types/CollisionCollectorType.cs.meta deleted file mode 100644 index 50d3d4b..0000000 --- a/Jolt/Types/CollisionCollectorType.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ac3c4c7aff694b3fabc55146c4e2c292 -timeCreated: 1740965244 \ No newline at end of file diff --git a/Jolt/Types/CompoundShapeSettings.cs b/Jolt/Types/CompoundShapeSettings.cs deleted file mode 100644 index 515c028..0000000 --- a/Jolt/Types/CompoundShapeSettings.cs +++ /dev/null @@ -1,21 +0,0 @@ -namespace Jolt -{ - /// - /// A widened CompoundShapeSettings instance handle. - /// - [GenerateBindings("JPH_CompoundShapeSettings", "JPH_ShapeSettings")] - public partial struct CompoundShapeSettings - { - internal NativeHandle Handle; - - public static implicit operator CompoundShapeSettings(MutableCompoundShapeSettings settings) - { - return new CompoundShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - - public static implicit operator CompoundShapeSettings(StaticCompoundShapeSettings settings) - { - return new CompoundShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - } -} diff --git a/Jolt/Types/CompoundShapeSettings.cs.meta b/Jolt/Types/CompoundShapeSettings.cs.meta deleted file mode 100644 index 25c4d85..0000000 --- a/Jolt/Types/CompoundShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 43d8efc329a2417db9e70df554b7e1dd -timeCreated: 1708191901 \ No newline at end of file diff --git a/Jolt/Types/ConeConstraint.cs b/Jolt/Types/ConeConstraint.cs deleted file mode 100644 index 6fe7c9a..0000000 --- a/Jolt/Types/ConeConstraint.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_ConeConstraint", "JPH_TwoBodyConstraint", "JPH_Constraint")] - public partial struct ConeConstraint - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/ConeConstraint.cs.meta b/Jolt/Types/ConeConstraint.cs.meta deleted file mode 100644 index bb7e05b..0000000 --- a/Jolt/Types/ConeConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2bb9e7be0e474d6bb16ebcd01604eaee -timeCreated: 1726410327 \ No newline at end of file diff --git a/Jolt/Types/ConeConstraintSettings.cs b/Jolt/Types/ConeConstraintSettings.cs deleted file mode 100644 index bffe81c..0000000 --- a/Jolt/Types/ConeConstraintSettings.cs +++ /dev/null @@ -1,71 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Mathematics; - -using static Jolt.Bindings; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_ConeConstraintSettings))] - public struct ConeConstraintSettings - { - /// - /// Create a new instance initialized with the default values. - /// - public static ConeConstraintSettings Create() - { - var result = new ConeConstraintSettings(); - JPH_ConeConstraintSettings_Init(ref result); - return result; - } - - private ConstraintSettings @base; - - public NativeBool Enabled - { - get => @base.Enabled; - set => @base.Enabled = value; - } - - public uint ConstraintPriority - { - get => @base.ConstraintPriority; - set => @base.ConstraintPriority = value; - } - - public uint NumVelocityStepsOverride - { - get => @base.NumVelocityStepsOverride; - set => @base.NumVelocityStepsOverride = value; - } - - public uint NumPositionStepsOverride - { - get => @base.NumPositionStepsOverride; - set => @base.NumPositionStepsOverride = value; - } - - public float DrawConstraintSize - { - get => @base.DrawConstraintSize; - set => @base.DrawConstraintSize = value; - } - - public ulong UserData - { - get => @base.UserData; - set => @base.UserData = value; - } - - public ConstraintSpace Space; - - public rvec3 Point1; - - public float3 TwistAxis1; - - public rvec3 Point2; - - public float3 TwistAxis2; - - public float HalfConeAngle; - } -} diff --git a/Jolt/Types/ConeConstraintSettings.cs.meta b/Jolt/Types/ConeConstraintSettings.cs.meta deleted file mode 100644 index a82a4c7..0000000 --- a/Jolt/Types/ConeConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 8da989911bdc4e9fbcf722e9e963a565 -timeCreated: 1726410924 \ No newline at end of file diff --git a/Jolt/Types/Constraint.cs b/Jolt/Types/Constraint.cs deleted file mode 100644 index eabe3e1..0000000 --- a/Jolt/Types/Constraint.cs +++ /dev/null @@ -1,33 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_Constraint")] - public partial struct Constraint - { - internal NativeHandle Handle; - - public static implicit operator Constraint(DistanceConstraint constraint) - { - return new Constraint { Handle = constraint.Handle.Reinterpret() }; - } - - public static implicit operator Constraint(FixedConstraint constraint) - { - return new Constraint { Handle = constraint.Handle.Reinterpret() }; - } - - public static implicit operator Constraint(PointConstraint constraint) - { - return new Constraint { Handle = constraint.Handle.Reinterpret() }; - } - - public static implicit operator Constraint(HingeConstraint constraint) - { - return new Constraint { Handle = constraint.Handle.Reinterpret() }; - } - - public static implicit operator Constraint(SliderConstraint constraint) - { - return new Constraint { Handle = constraint.Handle.Reinterpret() }; - } - } -} diff --git a/Jolt/Types/Constraint.cs.meta b/Jolt/Types/Constraint.cs.meta deleted file mode 100644 index cf476ee..0000000 --- a/Jolt/Types/Constraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 0a69359be92a4593a30111ce1484e2da -timeCreated: 1716838540 \ No newline at end of file diff --git a/Jolt/Types/ConstraintSettings.cs b/Jolt/Types/ConstraintSettings.cs deleted file mode 100644 index 50f5821..0000000 --- a/Jolt/Types/ConstraintSettings.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_ConstraintSettings))] - public struct ConstraintSettings - { - public NativeBool Enabled; - - public uint ConstraintPriority; - - public uint NumVelocityStepsOverride; - - public uint NumPositionStepsOverride; - - public float DrawConstraintSize; - - public ulong UserData; - } -} diff --git a/Jolt/Types/ConstraintSettings.cs.meta b/Jolt/Types/ConstraintSettings.cs.meta deleted file mode 100644 index 6f6c631..0000000 --- a/Jolt/Types/ConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: cb267bb390554b35a9de9d406534b8ff -timeCreated: 1716838976 \ No newline at end of file diff --git a/Jolt/Types/ConstraintSpace.cs b/Jolt/Types/ConstraintSpace.cs deleted file mode 100644 index e03fccd..0000000 --- a/Jolt/Types/ConstraintSpace.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - public enum ConstraintSpace : uint - { - LocalToBodyCOM = 0, - WorldSpace = 1, - } -} \ No newline at end of file diff --git a/Jolt/Types/ConstraintSpace.cs.meta b/Jolt/Types/ConstraintSpace.cs.meta deleted file mode 100644 index 6079c4a..0000000 --- a/Jolt/Types/ConstraintSpace.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a486e7c72a1447a49fe5e8403c4bf715 -timeCreated: 1716838534 \ No newline at end of file diff --git a/Jolt/Types/ConstraintSubType.cs b/Jolt/Types/ConstraintSubType.cs deleted file mode 100644 index ca56d14..0000000 --- a/Jolt/Types/ConstraintSubType.cs +++ /dev/null @@ -1,23 +0,0 @@ -namespace Jolt -{ - public enum ConstraintSubType : uint - { - Fixed = 0, - Point = 1, - Hinge = 2, - Slider = 3, - Distance = 4, - Cone = 5, - SwingTwist = 6, - SixDOF = 7, - Path = 8, - Vehicle = 9, - RackAndPinion = 10, - Gear = 11, - Pulley = 12, - User1 = 13, - User2 = 14, - User3 = 15, - User4 = 16, - } -} diff --git a/Jolt/Types/ConstraintSubType.cs.meta b/Jolt/Types/ConstraintSubType.cs.meta deleted file mode 100644 index a2c3869..0000000 --- a/Jolt/Types/ConstraintSubType.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 3e0664eac94f4f7d84812d13fece8ee6 -timeCreated: 1716837396 \ No newline at end of file diff --git a/Jolt/Types/ConstraintType.cs b/Jolt/Types/ConstraintType.cs deleted file mode 100644 index e7e399e..0000000 --- a/Jolt/Types/ConstraintType.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - public enum ConstraintType : uint - { - Constraint = 0, - TwoBodyConstraint = 1, - } -} diff --git a/Jolt/Types/ConstraintType.cs.meta b/Jolt/Types/ConstraintType.cs.meta deleted file mode 100644 index 51039a1..0000000 --- a/Jolt/Types/ConstraintType.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 67d7a583eb2d443da0356e1ea59fd09e -timeCreated: 1716837350 \ No newline at end of file diff --git a/Jolt/Types/ContactListener.cs b/Jolt/Types/ContactListener.cs deleted file mode 100644 index 6e2a7b3..0000000 --- a/Jolt/Types/ContactListener.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_ContactListener")] - public partial struct ContactListener - { - internal NativeHandle Handle; - - public static ContactListener Create(IContactListener delegates) - { - return new ContactListener { Handle = JPH_ContactListener_Create(delegates) }; - } - } -} diff --git a/Jolt/Types/ContactListener.cs.meta b/Jolt/Types/ContactListener.cs.meta deleted file mode 100644 index 34ff67a..0000000 --- a/Jolt/Types/ContactListener.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f0b1cd8d13e54ee69616dedc89f4b107 -timeCreated: 1739196981 \ No newline at end of file diff --git a/Jolt/Types/ConvexHullShape.cs b/Jolt/Types/ConvexHullShape.cs deleted file mode 100644 index 0ff8223..0000000 --- a/Jolt/Types/ConvexHullShape.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_ConvexHullShape", "JPH_ConvexShape", "JPH_Shape")] - public partial struct ConvexHullShape - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/ConvexHullShape.cs.meta b/Jolt/Types/ConvexHullShape.cs.meta deleted file mode 100644 index 4e2bc29..0000000 --- a/Jolt/Types/ConvexHullShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 7836e87c8af2439fb5a895a028124712 -timeCreated: 1707880636 \ No newline at end of file diff --git a/Jolt/Types/ConvexHullShapeSettings.cs b/Jolt/Types/ConvexHullShapeSettings.cs deleted file mode 100644 index 5b50290..0000000 --- a/Jolt/Types/ConvexHullShapeSettings.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using Unity.Mathematics; -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_ConvexHullShapeSettings", "JPH_ConvexShapeSettings", "JPH_ShapeSettings")] - public partial struct ConvexHullShapeSettings - { - internal NativeHandle Handle; - - public static ConvexHullShapeSettings Create(ReadOnlySpan points, float maxConvexRadius) - { - return new ConvexHullShapeSettings { Handle = JPH_ConvexHullShapeSettings_Create(points, maxConvexRadius) }; - } - } -} diff --git a/Jolt/Types/ConvexHullShapeSettings.cs.meta b/Jolt/Types/ConvexHullShapeSettings.cs.meta deleted file mode 100644 index eaa7d91..0000000 --- a/Jolt/Types/ConvexHullShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ec18576f3251415e9db887dedc30c2a0 -timeCreated: 1707881650 \ No newline at end of file diff --git a/Jolt/Types/ConvexShape.cs b/Jolt/Types/ConvexShape.cs deleted file mode 100644 index 12faba6..0000000 --- a/Jolt/Types/ConvexShape.cs +++ /dev/null @@ -1,41 +0,0 @@ -namespace Jolt -{ - /// - /// A widened ConvexShape instance handle. - /// - [GenerateBindings("JPH_ConvexShape", "JPH_Shape")] - public partial struct ConvexShape - { - internal NativeHandle Handle; - - public static implicit operator ConvexShape(BoxShape shape) - { - return new ConvexShape { Handle = shape.Handle.Reinterpret() }; - } - - public static implicit operator ConvexShape(CapsuleShape shape) - { - return new ConvexShape { Handle = shape.Handle.Reinterpret() }; - } - - public static implicit operator ConvexShape(ConvexHullShape shape) - { - return new ConvexShape { Handle = shape.Handle.Reinterpret() }; - } - - public static implicit operator ConvexShape(CylinderShape shape) - { - return new ConvexShape { Handle = shape.Handle.Reinterpret() }; - } - - public static implicit operator ConvexShape(SphereShape shape) - { - return new ConvexShape { Handle = shape.Handle.Reinterpret() }; - } - - public static implicit operator ConvexShape(TaperedCapsuleShape shape) - { - return new ConvexShape { Handle = shape.Handle.Reinterpret() }; - } - } -} diff --git a/Jolt/Types/ConvexShape.cs.meta b/Jolt/Types/ConvexShape.cs.meta deleted file mode 100644 index c1a5505..0000000 --- a/Jolt/Types/ConvexShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 67465ede366f454eb74fe41a0eea6797 -timeCreated: 1708223431 \ No newline at end of file diff --git a/Jolt/Types/CylinderShape.cs b/Jolt/Types/CylinderShape.cs deleted file mode 100644 index 1958f51..0000000 --- a/Jolt/Types/CylinderShape.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_CylinderShape", "JPH_ConvexShape", "JPH_Shape")] - public partial struct CylinderShape - { - internal NativeHandle Handle; - - public static CylinderShape Create(float halfHeightOfCylinder, float radius) - { - return new CylinderShape { Handle = JPH_CylinderShape_Create(halfHeightOfCylinder, radius) }; - } - } -} diff --git a/Jolt/Types/CylinderShape.cs.meta b/Jolt/Types/CylinderShape.cs.meta deleted file mode 100644 index 1814697..0000000 --- a/Jolt/Types/CylinderShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 3c19fc80b3ce4249830d00fd54e913f5 -timeCreated: 1707671418 \ No newline at end of file diff --git a/Jolt/Types/CylinderShapeSettings.cs b/Jolt/Types/CylinderShapeSettings.cs deleted file mode 100644 index 503f69a..0000000 --- a/Jolt/Types/CylinderShapeSettings.cs +++ /dev/null @@ -1,20 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_CylinderShapeSettings", "JPH_ConvexShapeSettings", "JPH_ShapeSettings")] - public partial struct CylinderShapeSettings - { - internal NativeHandle Handle; - - /// - /// Allocate a new native CylinderShapeSettings and return the handle. - /// - public static CylinderShapeSettings Create(float halfHeight, float radius, float convexRadius) - { - // TODO JPH_CylinderShapeSettings_Create takes convex radius but JPH_CylinderShape_Create does not? - - return new CylinderShapeSettings { Handle = JPH_CylinderShapeSettings_Create(halfHeight, radius, convexRadius) }; - } - } -} diff --git a/Jolt/Types/CylinderShapeSettings.cs.meta b/Jolt/Types/CylinderShapeSettings.cs.meta deleted file mode 100644 index c01b54d..0000000 --- a/Jolt/Types/CylinderShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f9343e92163c4c248a5543d2839cd6dc -timeCreated: 1707671537 \ No newline at end of file diff --git a/Jolt/Types/DistanceConstraint.cs b/Jolt/Types/DistanceConstraint.cs deleted file mode 100644 index 14d44a7..0000000 --- a/Jolt/Types/DistanceConstraint.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_DistanceConstraint", "JPH_TwoBodyConstraint", "JPH_Constraint")] - public partial struct DistanceConstraint - { - internal NativeHandle Handle; - - public static DistanceConstraint Create(ref DistanceConstraintSettings settings, Body bodyA, Body bodyB) - { - return new DistanceConstraint { Handle = JPH_DistanceConstraint_Create(ref settings, bodyA.Handle, bodyB.Handle) }; - } - } -} diff --git a/Jolt/Types/DistanceConstraint.cs.meta b/Jolt/Types/DistanceConstraint.cs.meta deleted file mode 100644 index bef98ae..0000000 --- a/Jolt/Types/DistanceConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ba654ffc2f144f7ea6077304243608a6 -timeCreated: 1718319896 \ No newline at end of file diff --git a/Jolt/Types/DistanceConstraintSettings.cs b/Jolt/Types/DistanceConstraintSettings.cs deleted file mode 100644 index aa1a8a9..0000000 --- a/Jolt/Types/DistanceConstraintSettings.cs +++ /dev/null @@ -1,70 +0,0 @@ -using System.Runtime.InteropServices; - -using static Jolt.Bindings; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_DistanceConstraintSettings))] - public struct DistanceConstraintSettings - { - /// - /// Create a new instance initialized with the default values. - /// - public static DistanceConstraintSettings Create() - { - var result = new DistanceConstraintSettings(); - JPH_DistanceConstraintSettings_Init(ref result); - return result; - } - - private ConstraintSettings @base; - - public NativeBool Enabled - { - get => @base.Enabled; - set => @base.Enabled = value; - } - - public uint ConstraintPriority - { - get => @base.ConstraintPriority; - set => @base.ConstraintPriority = value; - } - - public uint NumVelocityStepsOverride - { - get => @base.NumVelocityStepsOverride; - set => @base.NumVelocityStepsOverride = value; - } - - public uint NumPositionStepsOverride - { - get => @base.NumPositionStepsOverride; - set => @base.NumPositionStepsOverride = value; - } - - public float DrawConstraintSize - { - get => @base.DrawConstraintSize; - set => @base.DrawConstraintSize = value; - } - - public ulong UserData - { - get => @base.UserData; - set => @base.UserData = value; - } - - public ConstraintSpace Space; - - public rvec3 Point1; - - public rvec3 Point2; - - public float MinDistance; - - public float MaxDistance; - - public SpringSettings LimitsSpringSettings; - } -} diff --git a/Jolt/Types/DistanceConstraintSettings.cs.meta b/Jolt/Types/DistanceConstraintSettings.cs.meta deleted file mode 100644 index 16b25e1..0000000 --- a/Jolt/Types/DistanceConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 34b47892007b42eda755afb212840c2f -timeCreated: 1718319972 \ No newline at end of file diff --git a/Jolt/Types/FixedConstraint.cs b/Jolt/Types/FixedConstraint.cs deleted file mode 100644 index b69ff6a..0000000 --- a/Jolt/Types/FixedConstraint.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_FixedConstraint", "JPH_TwoBodyConstraint", "JPH_Constraint")] - public partial struct FixedConstraint - { - internal NativeHandle Handle; - - public static FixedConstraint Create(ref FixedConstraintSettings settings, Body bodyA, Body bodyB) - { - return new FixedConstraint { Handle = JPH_FixedConstraint_Create(ref settings, bodyA.Handle, bodyB.Handle) }; - } - } -} diff --git a/Jolt/Types/FixedConstraint.cs.meta b/Jolt/Types/FixedConstraint.cs.meta deleted file mode 100644 index 1d00b25..0000000 --- a/Jolt/Types/FixedConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 08022d7a020f41ec8ace22b94f7089cb -timeCreated: 1717875117 \ No newline at end of file diff --git a/Jolt/Types/FixedConstraintSettings.cs b/Jolt/Types/FixedConstraintSettings.cs deleted file mode 100644 index 499ec96..0000000 --- a/Jolt/Types/FixedConstraintSettings.cs +++ /dev/null @@ -1,50 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Mathematics; - -using static Jolt.Bindings; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_FixedConstraintSettings))] - public struct FixedConstraintSettings - { - public static FixedConstraintSettings Create() - { - var instance = new FixedConstraintSettings(); - JPH_FixedConstraintSettings_Init(ref instance); - return instance; - } - - #region ConstraintSettings - - public NativeBool Enabled; - - public uint ConstraintPriority; - - public uint NumVelocityStepsOverride; - - public uint NumPositionStepsOverride; - - public float DrawConstraintSize; - - public ulong UserData; - - #endregion - - public ConstraintSpace Space; - - public NativeBool AutoDetectPoint; - - public rvec3 Point1; - - public float3 AxisX1; - - public float3 AxisY1; - - public rvec3 Point2; - - public float3 AxisX2; - - public float3 AxisY2; - } -} diff --git a/Jolt/Types/FixedConstraintSettings.cs.meta b/Jolt/Types/FixedConstraintSettings.cs.meta deleted file mode 100644 index 08aba74..0000000 --- a/Jolt/Types/FixedConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 270baeac98ac4d75933b9ca4fb72523a -timeCreated: 1717870872 \ No newline at end of file diff --git a/Jolt/Types/GearConstraintSettings.cs b/Jolt/Types/GearConstraintSettings.cs deleted file mode 100644 index 6de2f99..0000000 --- a/Jolt/Types/GearConstraintSettings.cs +++ /dev/null @@ -1,66 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Mathematics; -using static Jolt.Bindings; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_GearConstraintSettings))] - public struct GearConstraintSettings - { - /// - /// Create a new instance initialized with the default values. - /// - public static GearConstraintSettings Create() - { - var result = new GearConstraintSettings(); - JPH_GearConstraintSettings_Init(ref result); - return result; - } - - private ConstraintSettings @base; - - public NativeBool Enabled - { - get => @base.Enabled; - set => @base.Enabled = value; - } - - public uint ConstraintPriority - { - get => @base.ConstraintPriority; - set => @base.ConstraintPriority = value; - } - - public uint NumVelocityStepsOverride - { - get => @base.NumVelocityStepsOverride; - set => @base.NumVelocityStepsOverride = value; - } - - public uint NumPositionStepsOverride - { - get => @base.NumPositionStepsOverride; - set => @base.NumPositionStepsOverride = value; - } - - public float DrawConstraintSize - { - get => @base.DrawConstraintSize; - set => @base.DrawConstraintSize = value; - } - - public ulong UserData - { - get => @base.UserData; - set => @base.UserData = value; - } - - public ConstraintSpace Space; - - public float3 HingeAxis1; - - public float3 HingeAxis2; - - public float Ratio; - } -} diff --git a/Jolt/Types/GearConstraintSettings.cs.meta b/Jolt/Types/GearConstraintSettings.cs.meta deleted file mode 100644 index 10ac367..0000000 --- a/Jolt/Types/GearConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 1d73a6863c0948e8933802c2f3262664 -timeCreated: 1741875142 \ No newline at end of file diff --git a/Jolt/Types/GroundState.cs b/Jolt/Types/GroundState.cs deleted file mode 100644 index 3673828..0000000 --- a/Jolt/Types/GroundState.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace Jolt -{ - public enum GroundState: uint - { - OnGround = 0, - OnSteepGround = 1, - NotSupported = 2, - InAir = 3, - } -} diff --git a/Jolt/Types/GroundState.cs.meta b/Jolt/Types/GroundState.cs.meta deleted file mode 100644 index a1020b7..0000000 --- a/Jolt/Types/GroundState.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: fc0f1f2aedba48c4b38f2e85846d497a -timeCreated: 1705550382 \ No newline at end of file diff --git a/Jolt/Types/HingeConstraint.cs b/Jolt/Types/HingeConstraint.cs deleted file mode 100644 index 6ed16bb..0000000 --- a/Jolt/Types/HingeConstraint.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_HingeConstraint", "JPH_TwoBodyConstraint", "JPH_Constraint")] - public partial struct HingeConstraint - { - internal NativeHandle Handle; - - public static HingeConstraint Create(ref HingeConstraintSettings settings, Body bodyA, Body bodyB) - { - return new HingeConstraint { Handle = JPH_HingeConstraint_Create(ref settings, bodyA.Handle, bodyB.Handle) }; - } - } -} diff --git a/Jolt/Types/HingeConstraint.cs.meta b/Jolt/Types/HingeConstraint.cs.meta deleted file mode 100644 index 0345f22..0000000 --- a/Jolt/Types/HingeConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 5e3dfaec4d6f4c0bb2333b23f6409a58 -timeCreated: 1725318236 \ No newline at end of file diff --git a/Jolt/Types/HingeConstraintSettings.cs b/Jolt/Types/HingeConstraintSettings.cs deleted file mode 100644 index 73efb34..0000000 --- a/Jolt/Types/HingeConstraintSettings.cs +++ /dev/null @@ -1,58 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Mathematics; - -using static Jolt.Bindings; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_HingeConstraintSettings))] - public struct HingeConstraintSettings - { - public static HingeConstraintSettings Create() - { - var instance = new HingeConstraintSettings(); - JPH_HingeConstraintSettings_Init(ref instance); - return instance; - } - - #region ConstraintSettings - - public NativeBool Enabled; - - public uint ConstraintPriority; - - public uint NumVelocityStepsOverride; - - public uint NumPositionStepsOverride; - - public float DrawConstraintSize; - - public ulong UserData; - - #endregion - - public ConstraintSpace Space; - - public rvec3 Point1; - - public float3 HingeAxis1; - - public float3 NormalAxis1; - - public rvec3 Point2; - - public float3 HingeAxis2; - - public float3 NormalAxis2; - - public float LimitsMin; - - public float LimitsMax; - - public SpringSettings LimitsSpringSettings; - - public float MaxFrictionTorque; - - public MotorSettings MotorSettings; - } -} diff --git a/Jolt/Types/HingeConstraintSettings.cs.meta b/Jolt/Types/HingeConstraintSettings.cs.meta deleted file mode 100644 index 33609a2..0000000 --- a/Jolt/Types/HingeConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 4bfb66c5ee99458190cac772b549de3f -timeCreated: 1725318266 \ No newline at end of file diff --git a/Jolt/Types/IBodyActivationListener.cs b/Jolt/Types/IBodyActivationListener.cs deleted file mode 100644 index 0f3a5f0..0000000 --- a/Jolt/Types/IBodyActivationListener.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace Jolt -{ - public interface IBodyActivationListener - { - public void OnBodyActivated(BodyID bodyID, ulong bodyUserData); - - public void OnBodyDeactivated(BodyID bodyID, ulong bodyUserData); - } -} diff --git a/Jolt/Types/IBodyActivationListener.cs.meta b/Jolt/Types/IBodyActivationListener.cs.meta deleted file mode 100644 index ee66b3b..0000000 --- a/Jolt/Types/IBodyActivationListener.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7a88889314f4cf340b902d413a0c66fa -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/IContactListeners.cs b/Jolt/Types/IContactListeners.cs deleted file mode 100644 index 2c82959..0000000 --- a/Jolt/Types/IContactListeners.cs +++ /dev/null @@ -1,13 +0,0 @@ -namespace Jolt -{ - public interface IContactListener - { - public ValidateResult OnContactValidate(); - - public void OnContactAdded(); - - public void OnContactPersisted(); - - public void OnContactRemoved(); - } -} diff --git a/Jolt/Types/IContactListeners.cs.meta b/Jolt/Types/IContactListeners.cs.meta deleted file mode 100644 index 79d484c..0000000 --- a/Jolt/Types/IContactListeners.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b0241f0a6d7e4fdf9c86200bb7b0d7db -timeCreated: 1705719293 \ No newline at end of file diff --git a/Jolt/Types/IndexedTriangle.cs b/Jolt/Types/IndexedTriangle.cs deleted file mode 100644 index dc638e0..0000000 --- a/Jolt/Types/IndexedTriangle.cs +++ /dev/null @@ -1,57 +0,0 @@ -using System; -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential)] - public readonly struct IndexedTriangle : IEquatable - { - public readonly uint I1; - public readonly uint I2; - public readonly uint I3; - - public readonly uint MaterialIndex; - - public readonly uint UserData; - - public IndexedTriangle(uint i1, uint i2, uint i3, uint materialIndex, uint userData = 0) - { - I1 = i1; - I2 = i2; - I3 = i3; - - MaterialIndex = materialIndex; - - UserData = userData; - } - - #region IEquatable - - public bool Equals(IndexedTriangle other) - { - return I1 == other.I1 && I2 == other.I2 && I3 == other.I3 && MaterialIndex == other.MaterialIndex && UserData == other.UserData; - } - - public override bool Equals(object obj) - { - return obj is IndexedTriangle other && Equals(other); - } - - public override int GetHashCode() - { - return HashCode.Combine(I1, I2, I3, MaterialIndex, UserData); - } - - public static bool operator ==(IndexedTriangle lhs, IndexedTriangle rhs) - { - return lhs.Equals(rhs); - } - - public static bool operator !=(IndexedTriangle lhs, IndexedTriangle rhs) - { - return !lhs.Equals(rhs); - } - - #endregion - } -} diff --git a/Jolt/Types/IndexedTriangle.cs.meta b/Jolt/Types/IndexedTriangle.cs.meta deleted file mode 100644 index 0540b91..0000000 --- a/Jolt/Types/IndexedTriangle.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: fead0871a99c48ec96ed9419e95a71c4 -timeCreated: 1708010355 \ No newline at end of file diff --git a/Jolt/Types/IndexedTriangleNoMaterial.cs b/Jolt/Types/IndexedTriangleNoMaterial.cs deleted file mode 100644 index 2743d01..0000000 --- a/Jolt/Types/IndexedTriangleNoMaterial.cs +++ /dev/null @@ -1,49 +0,0 @@ -using System; -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_IndexedTriangleNoMaterial))] - public struct IndexedTriangleNoMaterial : IEquatable - { - public readonly uint I1; - public readonly uint I2; - public readonly uint I3; - - public IndexedTriangleNoMaterial(uint i1, uint i2, uint i3) - { - I1 = i1; - I2 = i2; - I3 = i3; - } - - #region IEquatable - - public bool Equals(IndexedTriangleNoMaterial other) - { - return I1 == other.I1 && I2 == other.I2 && I3 == other.I3; - } - - public override bool Equals(object obj) - { - return obj is IndexedTriangleNoMaterial other && Equals(other); - } - - public override int GetHashCode() - { - return HashCode.Combine(I1, I2, I3); - } - - public static bool operator ==(IndexedTriangleNoMaterial lhs, IndexedTriangleNoMaterial rhs) - { - return lhs.Equals(rhs); - } - - public static bool operator !=(IndexedTriangleNoMaterial lhs, IndexedTriangleNoMaterial rhs) - { - return !lhs.Equals(rhs); - } - - #endregion - } -} diff --git a/Jolt/Types/IndexedTriangleNoMaterial.cs.meta b/Jolt/Types/IndexedTriangleNoMaterial.cs.meta deleted file mode 100644 index 7ad2cef..0000000 --- a/Jolt/Types/IndexedTriangleNoMaterial.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 47eeab4ea318476db73b79d5efe7b550 -timeCreated: 1708010367 \ No newline at end of file diff --git a/Jolt/Types/JobSystem.cs b/Jolt/Types/JobSystem.cs deleted file mode 100644 index 947603d..0000000 --- a/Jolt/Types/JobSystem.cs +++ /dev/null @@ -1,33 +0,0 @@ -using System; - -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_JobSystem")] - public partial struct JobSystem : IDisposable - { - internal NativeHandle Handle; - - /// - /// Allocate a new native JobSystem from a thead pool config. Pass default to use the max threads available. - /// - public static JobSystem Create(JobSystemThreadPoolConfig config = default) - { - return new JobSystem { Handle = JPH_JobSystemThreadPool_Create(config) }; - } - - /// - /// Allocate a new native JobSystem from a callback config. - /// - public static JobSystem Create(JobSystemConfig config) - { - return new JobSystem { Handle = JPH_JobSystemCallback_Create(config) }; - } - - public void Dispose() - { - Handle.Dispose(); - } - } -} diff --git a/Jolt/Types/JobSystem.cs.meta b/Jolt/Types/JobSystem.cs.meta deleted file mode 100644 index b7812c2..0000000 --- a/Jolt/Types/JobSystem.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 4a9d51d036814093adc409b8e0da01e0 -timeCreated: 1739057824 \ No newline at end of file diff --git a/Jolt/Types/JobSystemConfig.cs b/Jolt/Types/JobSystemConfig.cs deleted file mode 100644 index f8ed54f..0000000 --- a/Jolt/Types/JobSystemConfig.cs +++ /dev/null @@ -1,18 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_JobSystemConfig))] - public struct JobSystemConfig - { - public nint Context; // TODO replace nint - - public nint QueueJob; // TODO replace nint - - public nint QueueJobs; // TODO replace nint - - public uint MaxConcurrency; - - public uint MaxBarriers; - } -} diff --git a/Jolt/Types/JobSystemConfig.cs.meta b/Jolt/Types/JobSystemConfig.cs.meta deleted file mode 100644 index b98ed5a..0000000 --- a/Jolt/Types/JobSystemConfig.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 46919bca27d542cab2636e28533cf2ad -timeCreated: 1739057343 \ No newline at end of file diff --git a/Jolt/Types/JobSystemThreadPoolConfig.cs b/Jolt/Types/JobSystemThreadPoolConfig.cs deleted file mode 100644 index 934e635..0000000 --- a/Jolt/Types/JobSystemThreadPoolConfig.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_JobSystemThreadPoolConfig))] - public struct JobSystemThreadPoolConfig - { - public uint MaxJobs; - - public uint MaxBarriers; - - public int NumThreads; - } -} diff --git a/Jolt/Types/JobSystemThreadPoolConfig.cs.meta b/Jolt/Types/JobSystemThreadPoolConfig.cs.meta deleted file mode 100644 index e42525b..0000000 --- a/Jolt/Types/JobSystemThreadPoolConfig.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 0f57802cd1214c5e8b382fbda3ce90a5 -timeCreated: 1739057307 \ No newline at end of file diff --git a/Jolt/Types/MassProperties.cs b/Jolt/Types/MassProperties.cs deleted file mode 100644 index 4606fa4..0000000 --- a/Jolt/Types/MassProperties.cs +++ /dev/null @@ -1,30 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Mathematics; -using static Jolt.Bindings; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_MassProperties))] - public struct MassProperties - { - /// - /// Mass of the shape (kg). - /// - public float Mass; - - /// - /// Inertia tensor of the shape (kg m^2). - /// - public float4x4 Inertia; - - public void DecomposePrincipalMomentsOfInertia(out float4x4 rotation, out float3 diagonal) - { - JPH_MassProperties_DecomposePrincipalMomentsOfInertia(ref this, out rotation, out diagonal); - } - - public void ScaleToMass(float mass) - { - JPH_MassProperties_ScaleToMass(ref this, mass); - } - } -} diff --git a/Jolt/Types/MassProperties.cs.meta b/Jolt/Types/MassProperties.cs.meta deleted file mode 100644 index 4b53a1c..0000000 --- a/Jolt/Types/MassProperties.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 9a5c1783308c4dd0bd05514138ba8aaf -timeCreated: 1705680342 \ No newline at end of file diff --git a/Jolt/Types/MeshShape.cs b/Jolt/Types/MeshShape.cs deleted file mode 100644 index ba5a12d..0000000 --- a/Jolt/Types/MeshShape.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_MeshShape", "JPH_Shape")] - public partial struct MeshShape - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/MeshShape.cs.meta b/Jolt/Types/MeshShape.cs.meta deleted file mode 100644 index b296f25..0000000 --- a/Jolt/Types/MeshShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: c45028bdca344e94b202ed232938b29b -timeCreated: 1708011913 \ No newline at end of file diff --git a/Jolt/Types/MeshShapeSettings.cs b/Jolt/Types/MeshShapeSettings.cs deleted file mode 100644 index eb5482c..0000000 --- a/Jolt/Types/MeshShapeSettings.cs +++ /dev/null @@ -1,28 +0,0 @@ -using System; -using Unity.Mathematics; -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_MeshShapeSettings", "JPH_ShapeSettings")] - public partial struct MeshShapeSettings - { - internal NativeHandle Handle; - - /// - /// Allocate a new native MeshShapeSettings and return the handle. - /// - public static MeshShapeSettings Create(ReadOnlySpan triangles) - { - return new MeshShapeSettings { Handle = JPH_MeshShapeSettings_Create(triangles) }; - } - - /// - /// Allocate a new native MeshShapeSettings and return the handle. - /// - public static MeshShapeSettings Create(ReadOnlySpan vertices, ReadOnlySpan triangles) - { - return new MeshShapeSettings { Handle = JPH_MeshShapeSettings_Create(vertices, triangles) }; - } - } -} diff --git a/Jolt/Types/MeshShapeSettings.cs.meta b/Jolt/Types/MeshShapeSettings.cs.meta deleted file mode 100644 index 620cd7c..0000000 --- a/Jolt/Types/MeshShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 5da0f8b79a244acaa9c2cd318ee56d64 -timeCreated: 1707933355 \ No newline at end of file diff --git a/Jolt/Types/MotionProperties.cs b/Jolt/Types/MotionProperties.cs deleted file mode 100644 index 55c62fa..0000000 --- a/Jolt/Types/MotionProperties.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_MotionProperties")] - public partial struct MotionProperties - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/MotionProperties.cs.meta b/Jolt/Types/MotionProperties.cs.meta deleted file mode 100644 index 2933dfe..0000000 --- a/Jolt/Types/MotionProperties.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 77793ce8644b4ed9b5957dea005f3d00 -timeCreated: 1708792344 \ No newline at end of file diff --git a/Jolt/Types/MotionQuality.cs b/Jolt/Types/MotionQuality.cs deleted file mode 100644 index cc35c44..0000000 --- a/Jolt/Types/MotionQuality.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - public enum MotionQuality : uint - { - Discrete = 0, - LinearCast = 1, - } -} diff --git a/Jolt/Types/MotionQuality.cs.meta b/Jolt/Types/MotionQuality.cs.meta deleted file mode 100644 index 19d73d1..0000000 --- a/Jolt/Types/MotionQuality.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b6ce324c26bc35d49a59d72c82f58a59 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/MotionType.cs b/Jolt/Types/MotionType.cs deleted file mode 100644 index 0f31146..0000000 --- a/Jolt/Types/MotionType.cs +++ /dev/null @@ -1,23 +0,0 @@ -namespace Jolt -{ - /// - /// Motion type of a physics body. - /// - public enum MotionType : uint - { - /// - /// Non-movable - /// - Static = 0, - - /// - /// Movable using velocities only, does not respond to forces. - /// - Kinematic = 1, - - /// - /// Responds to forces as a normal physics object. - /// - Dynamic = 2, - } -} diff --git a/Jolt/Types/MotionType.cs.meta b/Jolt/Types/MotionType.cs.meta deleted file mode 100644 index 20a6612..0000000 --- a/Jolt/Types/MotionType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b19501a9016644d40a834a00df5fce32 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/MotorSettings.cs b/Jolt/Types/MotorSettings.cs deleted file mode 100644 index 6ef3591..0000000 --- a/Jolt/Types/MotorSettings.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - public enum MotorState : uint - { - Off = 0, - Velocity = 1, - Position = 2, - } - - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_MotorSettings))] - public struct MotorSettings - { - public SpringSettings SpringSettings; - - public float MinForceLimit; - public float MaxForceLimit; - - public float MinTorqueLimit; - public float MaxTorqueLimit; - } -} diff --git a/Jolt/Types/MotorSettings.cs.meta b/Jolt/Types/MotorSettings.cs.meta deleted file mode 100644 index 11f56c7..0000000 --- a/Jolt/Types/MotorSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: af0b64bd17bd4544b1b5fe1246a571bf -timeCreated: 1704905706 \ No newline at end of file diff --git a/Jolt/Types/MutableCompoundShapeSettings.cs b/Jolt/Types/MutableCompoundShapeSettings.cs deleted file mode 100644 index d395ed5..0000000 --- a/Jolt/Types/MutableCompoundShapeSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_MutableCompoundShapeSettings", "JPH_CompoundShapeSettings", "JPH_ShapeSettings")] - public partial struct MutableCompoundShapeSettings - { - internal NativeHandle Handle; - - public static MutableCompoundShapeSettings Create() - { - return new MutableCompoundShapeSettings { Handle = JPH_MutableCompoundShapeSettings_Create() }; - } - } -} diff --git a/Jolt/Types/MutableCompoundShapeSettings.cs.meta b/Jolt/Types/MutableCompoundShapeSettings.cs.meta deleted file mode 100644 index ef03c4d..0000000 --- a/Jolt/Types/MutableCompoundShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: aa7c16f982b745eea67a87254e3ac59f -timeCreated: 1708116717 \ No newline at end of file diff --git a/Jolt/Types/NarrowPhaseQuery.cs b/Jolt/Types/NarrowPhaseQuery.cs deleted file mode 100644 index b8b7003..0000000 --- a/Jolt/Types/NarrowPhaseQuery.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_NarrowPhaseQuery")] - public partial struct NarrowPhaseQuery - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/NarrowPhaseQuery.cs.meta b/Jolt/Types/NarrowPhaseQuery.cs.meta deleted file mode 100644 index 6ed227b..0000000 --- a/Jolt/Types/NarrowPhaseQuery.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 92cb752af4f444b6af70d3f1995e1724 -timeCreated: 1740938299 \ No newline at end of file diff --git a/Jolt/Types/ObjectLayer.cs b/Jolt/Types/ObjectLayer.cs deleted file mode 100644 index b19df6b..0000000 --- a/Jolt/Types/ObjectLayer.cs +++ /dev/null @@ -1,68 +0,0 @@ -using System; -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential)] - public readonly struct ObjectLayer : IEquatable - { - // A distinct type wrapper around ushort (or optionally uint, but unsupported). See https://github.com/jrouwe/JoltPhysics/blob/master/Jolt/Physics/Collision/ObjectLayer.h - - /// - /// Number of bits in an object layer. - /// - public const uint ObjectLayerBits = 16; // TODO can be 32 with compiler flag - - /// - /// The invalid ObjectLayer (0). - /// - public static readonly ObjectLayer Invalid = 0; - - /// - /// The layer value. - /// - public readonly ushort Value; - - public ObjectLayer(ushort value) - { - Value = value; - } - - /// - /// Implicit cast from ushort. The inverse is not available to avoid confusion. - /// - public static implicit operator ObjectLayer(ushort layer) - { - return new ObjectLayer(layer); - } - - #region IEquatable - - public bool Equals(ObjectLayer other) - { - return Value == other.Value; - } - - public override bool Equals(object obj) - { - return obj is ObjectLayer other && Equals(other); - } - - public override int GetHashCode() - { - return Value.GetHashCode(); - } - - public static bool operator ==(ObjectLayer lhs, ObjectLayer rhs) - { - return lhs.Equals(rhs); - } - - public static bool operator !=(ObjectLayer lhs, ObjectLayer rhs) - { - return !lhs.Equals(rhs); - } - - #endregion - } -} diff --git a/Jolt/Types/ObjectLayer.cs.meta b/Jolt/Types/ObjectLayer.cs.meta deleted file mode 100644 index eaba1f9..0000000 --- a/Jolt/Types/ObjectLayer.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: d8283c15c8394eb4a42a1d724100ebaa -timeCreated: 1713644679 \ No newline at end of file diff --git a/Jolt/Types/ObjectLayerFilter.cs b/Jolt/Types/ObjectLayerFilter.cs deleted file mode 100644 index 1ae377e..0000000 --- a/Jolt/Types/ObjectLayerFilter.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_ObjectLayerFilter")] - public partial struct ObjectLayerFilter - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/ObjectLayerFilter.cs.meta b/Jolt/Types/ObjectLayerFilter.cs.meta deleted file mode 100644 index b05fe20..0000000 --- a/Jolt/Types/ObjectLayerFilter.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 941a2931781b4970885785fdd7cf1d46 -timeCreated: 1741138624 \ No newline at end of file diff --git a/Jolt/Types/ObjectLayerPairFilter.cs b/Jolt/Types/ObjectLayerPairFilter.cs deleted file mode 100644 index 06b6b61..0000000 --- a/Jolt/Types/ObjectLayerPairFilter.cs +++ /dev/null @@ -1,17 +0,0 @@ -namespace Jolt -{ - public partial struct ObjectLayerPairFilter - { - internal NativeHandle Handle; - - public static implicit operator ObjectLayerPairFilter(ObjectLayerPairFilterMask mask) - { - return new ObjectLayerPairFilter { Handle = mask.Handle }; - } - - public static implicit operator ObjectLayerPairFilter(ObjectLayerPairFilterTable table) - { - return new ObjectLayerPairFilter { Handle = table.Handle }; - } - } -} diff --git a/Jolt/Types/ObjectLayerPairFilter.cs.meta b/Jolt/Types/ObjectLayerPairFilter.cs.meta deleted file mode 100644 index 50fc1cb..0000000 --- a/Jolt/Types/ObjectLayerPairFilter.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 215cf0dc9f6f41299c7817cd8149b377 -timeCreated: 1704917796 \ No newline at end of file diff --git a/Jolt/Types/ObjectLayerPairFilterMask.cs b/Jolt/Types/ObjectLayerPairFilterMask.cs deleted file mode 100644 index e90f116..0000000 --- a/Jolt/Types/ObjectLayerPairFilterMask.cs +++ /dev/null @@ -1,33 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - /// - /// An ObjectLayerPairFilter that uses bitmasks to test if two bodies can collide based on their object layer. - /// - /// - /// Uses group bits and mask bits. Two layers can collide if e.g. Object1.Group & Object2.Mask is non-zero and Object2.Group & Object1.Mask is non-zero. - /// - [GenerateBindings("JPH_ObjectLayerPairFilter")] - public partial struct ObjectLayerPairFilterMask - { - /// - /// The number of bits in a group. - /// - private const uint NumBits = ObjectLayer.ObjectLayerBits / 2; - - /// - /// The mask bits. - /// - private const uint Mask = (1U << (int) NumBits) - 1U; - - internal NativeHandle Handle; - - public static ObjectLayerPairFilterMask Create() - { - return new ObjectLayerPairFilterMask { Handle = JPH_ObjectLayerPairFilterMask_Create() }; - } - - // TODO JPH_ObjectLayerFilterMask_ShouldCollide is missing from bindings but exists on jolt ObjectLayerFilterMask.h - } -} diff --git a/Jolt/Types/ObjectLayerPairFilterMask.cs.meta b/Jolt/Types/ObjectLayerPairFilterMask.cs.meta deleted file mode 100644 index 40d0071..0000000 --- a/Jolt/Types/ObjectLayerPairFilterMask.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 0c60f4bddb6041fe8e645bec85f11e3f -timeCreated: 1713566602 \ No newline at end of file diff --git a/Jolt/Types/ObjectLayerPairFilterTable.cs b/Jolt/Types/ObjectLayerPairFilterTable.cs deleted file mode 100644 index 9151f39..0000000 --- a/Jolt/Types/ObjectLayerPairFilterTable.cs +++ /dev/null @@ -1,33 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - public partial struct ObjectLayerPairFilterTable - { - internal NativeHandle Handle; - - public static ObjectLayerPairFilterTable Create(uint numObjectLayers) - { - return new ObjectLayerPairFilterTable { Handle = JPH_ObjectLayerPairFilterTable_Create(numObjectLayers) }; - } - - #region JPH_ObjectLayerPairFilterTable - - public void EnableCollision(ObjectLayer layerA, ObjectLayer layerB) - { - JPH_ObjectLayerPairFilterTable_EnableCollision(Handle, layerA, layerB); - } - - public void DisableCollision(ObjectLayer layerA, ObjectLayer layerB) - { - JPH_ObjectLayerPairFilterTable_DisableCollision(Handle, layerA, layerB); - } - - public bool ShouldCollide(ObjectLayer layerA, ObjectLayer layerB) - { - return JPH_ObjectLayerPairFilterTable_ShouldCollide(Handle, layerA, layerB); - } - - #endregion - } -} diff --git a/Jolt/Types/ObjectLayerPairFilterTable.cs.meta b/Jolt/Types/ObjectLayerPairFilterTable.cs.meta deleted file mode 100644 index 34af1a7..0000000 --- a/Jolt/Types/ObjectLayerPairFilterTable.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: dd1183fa318440b99ce98d79c001bbbc -timeCreated: 1713492611 \ No newline at end of file diff --git a/Jolt/Types/ObjectVsBroadPhaseLayerFilter.cs b/Jolt/Types/ObjectVsBroadPhaseLayerFilter.cs deleted file mode 100644 index 4088c8d..0000000 --- a/Jolt/Types/ObjectVsBroadPhaseLayerFilter.cs +++ /dev/null @@ -1,17 +0,0 @@ -namespace Jolt -{ - public partial struct ObjectVsBroadPhaseLayerFilter - { - internal NativeHandle Handle; - - public static implicit operator ObjectVsBroadPhaseLayerFilter(ObjectVsBroadPhaseLayerFilterMask table) - { - return new ObjectVsBroadPhaseLayerFilter { Handle = table.Handle }; - } - - public static implicit operator ObjectVsBroadPhaseLayerFilter(ObjectVsBroadPhaseLayerFilterTable table) - { - return new ObjectVsBroadPhaseLayerFilter { Handle = table.Handle }; - } - } -} diff --git a/Jolt/Types/ObjectVsBroadPhaseLayerFilter.cs.meta b/Jolt/Types/ObjectVsBroadPhaseLayerFilter.cs.meta deleted file mode 100644 index f3f176a..0000000 --- a/Jolt/Types/ObjectVsBroadPhaseLayerFilter.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 7a685a30ef4b4020bc83ef770a33dcfe -timeCreated: 1704918871 \ No newline at end of file diff --git a/Jolt/Types/ObjectVsBroadPhaseLayerFilterMask.cs b/Jolt/Types/ObjectVsBroadPhaseLayerFilterMask.cs deleted file mode 100644 index ff1f13d..0000000 --- a/Jolt/Types/ObjectVsBroadPhaseLayerFilterMask.cs +++ /dev/null @@ -1,14 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - public partial struct ObjectVsBroadPhaseLayerFilterMask - { - internal NativeHandle Handle; - - public static ObjectVsBroadPhaseLayerFilterMask Create(BroadPhaseLayerInterface @interface) - { - return new ObjectVsBroadPhaseLayerFilterMask { Handle = JPH_ObjectVsBroadPhaseLayerFilterMask_Create(@interface.Handle) }; - } - } -} diff --git a/Jolt/Types/ObjectVsBroadPhaseLayerFilterMask.cs.meta b/Jolt/Types/ObjectVsBroadPhaseLayerFilterMask.cs.meta deleted file mode 100644 index 6f8ffd9..0000000 --- a/Jolt/Types/ObjectVsBroadPhaseLayerFilterMask.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 8b124b0fbe994cc2aebd9765c2dc87fd -timeCreated: 1713672976 \ No newline at end of file diff --git a/Jolt/Types/ObjectVsBroadPhaseLayerFilterTable.cs b/Jolt/Types/ObjectVsBroadPhaseLayerFilterTable.cs deleted file mode 100644 index 38a667a..0000000 --- a/Jolt/Types/ObjectVsBroadPhaseLayerFilterTable.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - public partial struct ObjectVsBroadPhaseLayerFilterTable - { - internal NativeHandle Handle; - - public static ObjectVsBroadPhaseLayerFilterTable Create(BroadPhaseLayerInterface @interface, uint numBroadPhaseLayers, ObjectLayerPairFilter filter, uint numObjectLayers) - { - return new ObjectVsBroadPhaseLayerFilterTable { Handle = JPH_ObjectVsBroadPhaseLayerFilterTable_Create(@interface.Handle, numBroadPhaseLayers, filter.Handle, numObjectLayers) }; - } - - } -} diff --git a/Jolt/Types/ObjectVsBroadPhaseLayerFilterTable.cs.meta b/Jolt/Types/ObjectVsBroadPhaseLayerFilterTable.cs.meta deleted file mode 100644 index 7a68063..0000000 --- a/Jolt/Types/ObjectVsBroadPhaseLayerFilterTable.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 8c4f1c65f4a247c6aae7f86e10ec84b7 -timeCreated: 1713672523 \ No newline at end of file diff --git a/Jolt/Types/OverrideMassProperties.cs b/Jolt/Types/OverrideMassProperties.cs deleted file mode 100644 index d35dc6e..0000000 --- a/Jolt/Types/OverrideMassProperties.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace Jolt -{ - public enum OverrideMassProperties : uint - { - CalculateMassAndInertia = 0, - CalculateInertia = 1, - MassAndInertiaProvided = 2, - } -} diff --git a/Jolt/Types/OverrideMassProperties.cs.meta b/Jolt/Types/OverrideMassProperties.cs.meta deleted file mode 100644 index 1ed1ba5..0000000 --- a/Jolt/Types/OverrideMassProperties.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 0d3e4daaf655497e82c2abb2696e6a14 -timeCreated: 1741012393 \ No newline at end of file diff --git a/Jolt/Types/PhysicsMaterial.cs b/Jolt/Types/PhysicsMaterial.cs deleted file mode 100644 index 393d467..0000000 --- a/Jolt/Types/PhysicsMaterial.cs +++ /dev/null @@ -1,23 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_PhysicsMaterial")] - public partial struct PhysicsMaterial - { - internal NativeHandle Handle; - - /// - /// Create a new PhysicsMaterial. - /// - /// - /// The "color" of the material is named to maintain compatibility with Jolt, but it can be used for any - /// material information that would be useful for the simulation output. It could be used to select the - /// sound effect produced by a collision, for example. Use it for arbitrary surface data. - /// - public static PhysicsMaterial Create(string name, uint color) - { - return new PhysicsMaterial { Handle = JPH_PhysicsMaterial_Create(name, color) }; - } - } -} diff --git a/Jolt/Types/PhysicsMaterial.cs.meta b/Jolt/Types/PhysicsMaterial.cs.meta deleted file mode 100644 index 008ab7b..0000000 --- a/Jolt/Types/PhysicsMaterial.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ce5dccc6bacd4b398f45810c4ae8d880 -timeCreated: 1740964264 \ No newline at end of file diff --git a/Jolt/Types/PhysicsSettings.cs b/Jolt/Types/PhysicsSettings.cs deleted file mode 100644 index baecd65..0000000 --- a/Jolt/Types/PhysicsSettings.cs +++ /dev/null @@ -1,62 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_PhysicsSettings))] - public struct PhysicsSettings - { - public const float DefaultConvexRadius = 0.05f; - - public int MaxInFlightBodyPairs; - - public int StepListenersBatchSize; - - public int StepListenerBatchesPerJob; - - public float Baumgarte; - - public float SpeculativeContactDistance; - - public float PenetrationSlop; - - public float LinearCastThreshold; - - public float LinearCastMaxPenetration; - - public float ManifoldTolerance; - - public float MaxPenetrationDistance; - - public float BodyPairCacheMaxDeltaPositionSq; - - public float BodyPairCacheCosMaxDeltaRotationDiv2; - - public float ContactNormalCosMaxDeltaRotation; - - public float ContactPointPreserveLambdaMaxDistSq; - - public uint NumVelocitySteps; - - public uint NumPositionSteps; - - public float MinVelocityForRestitution; - - public float TimeBeforeSleep; - - public float PointVelocitySleepThreshold; - - public NativeBool DeterministicSimulation; - - public NativeBool ConstraintWarmStart; - - public NativeBool UseBodyPairContactCache; - - public NativeBool UseManifoldReduction; - - public NativeBool UseLargeIslandSplitter; - - public NativeBool AllowSleeping; - - public NativeBool CheckActiveEdges; - } -} diff --git a/Jolt/Types/PhysicsSettings.cs.meta b/Jolt/Types/PhysicsSettings.cs.meta deleted file mode 100644 index fb6e2c5..0000000 --- a/Jolt/Types/PhysicsSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d8487a6b6cfab7e47b41445c90c082ca -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/PhysicsSystem.cs b/Jolt/Types/PhysicsSystem.cs deleted file mode 100644 index fb6278c..0000000 --- a/Jolt/Types/PhysicsSystem.cs +++ /dev/null @@ -1,55 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_PhysicsSystem")] - public partial struct PhysicsSystem - { - internal readonly NativeHandle Handle; - - /// - /// The ObjectLayerPairFilter of the system. - /// - public ObjectLayerPairFilter ObjectLayerPairFilter; - - /// - /// The BroadPhaseLayerInterface of the system. - /// - public BroadPhaseLayerInterface BroadPhaseLayerInterface; - - /// - /// The ObjectVsBroadPhaseLayerFilter of the system. - /// - public ObjectVsBroadPhaseLayerFilter ObjectVsBroadPhaseLayerFilter; - - public PhysicsSystem(PhysicsSystemSettings settings) - { - Handle = JPH_PhysicsSystem_Create(settings); - - ObjectLayerPairFilter = settings.ObjectLayerPairFilter; - BroadPhaseLayerInterface = settings.BroadPhaseLayerInterface; - ObjectVsBroadPhaseLayerFilter = settings.ObjectVsBroadPhaseLayerFilter; - } - - public void SetContactListener(ContactListener listener) - { - JPH_PhysicsSystem_SetContactListener(Handle, listener.Handle); - } - - public void SetBodyActivationListener(BodyActivationListener listener) - { - JPH_PhysicsSystem_SetBodyActivationListener(Handle, listener.Handle); - } - - /// - /// Update the physics system. Returns true if there were no errors. - /// - /// - /// The out parameter will contain the error if any. - /// - public readonly bool Step(float deltaTime, int collisionSteps, JobSystem jobSystem, out PhysicsUpdateError error) - { - return (error = JPH_PhysicsSystem_Update(Handle, deltaTime, collisionSteps, jobSystem.Handle)) == PhysicsUpdateError.None; - } - } -} diff --git a/Jolt/Types/PhysicsSystem.cs.meta b/Jolt/Types/PhysicsSystem.cs.meta deleted file mode 100644 index c4ceed0..0000000 --- a/Jolt/Types/PhysicsSystem.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d9aeb416def202043ac267972f9b57a8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/PhysicsSystemSettings.cs b/Jolt/Types/PhysicsSystemSettings.cs deleted file mode 100644 index d96c77e..0000000 --- a/Jolt/Types/PhysicsSystemSettings.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential)] - public struct PhysicsSystemSettings - { - public uint MaxBodies; - - public uint NumBodyMutexes; - - public uint MaxBodyPairs; - - public uint MaxContactConstraints; - - public ObjectLayerPairFilter ObjectLayerPairFilter; - - public BroadPhaseLayerInterface BroadPhaseLayerInterface; - - public ObjectVsBroadPhaseLayerFilter ObjectVsBroadPhaseLayerFilter; - } -} diff --git a/Jolt/Types/PhysicsSystemSettings.cs.meta b/Jolt/Types/PhysicsSystemSettings.cs.meta deleted file mode 100644 index 33f82c2..0000000 --- a/Jolt/Types/PhysicsSystemSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9cd18ef87396ec7489d3d823acd24c49 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/PhysicsUpdateError.cs b/Jolt/Types/PhysicsUpdateError.cs deleted file mode 100644 index dac003c..0000000 --- a/Jolt/Types/PhysicsUpdateError.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace Jolt -{ - public enum PhysicsUpdateError : uint - { - None = 0, - ManifoldCacheFull = 1 << 0, - BodyPairCacheFull = 1 << 1, - ContactConstraintsFull = 1 << 2, - } -} diff --git a/Jolt/Types/PhysicsUpdateError.cs.meta b/Jolt/Types/PhysicsUpdateError.cs.meta deleted file mode 100644 index abac9a0..0000000 --- a/Jolt/Types/PhysicsUpdateError.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b600437cfad79404199b8b30829e0c27 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/Plane.cs b/Jolt/Types/Plane.cs deleted file mode 100644 index a3f4fec..0000000 --- a/Jolt/Types/Plane.cs +++ /dev/null @@ -1,43 +0,0 @@ -using System; -using System.Runtime.InteropServices; -using Unity.Mathematics; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_Plane))] - public struct Plane : IEquatable - { - public float3 Normal; - - public float Distance; - - #region IEquatable - - public bool Equals(Plane other) - { - return Normal.Equals(other.Normal) && Distance.Equals(other.Distance); - } - - public override bool Equals(object obj) - { - return obj is Plane other && Equals(other); - } - - public override int GetHashCode() - { - return HashCode.Combine(Normal, Distance); - } - - public static bool operator ==(Plane left, Plane right) - { - return left.Equals(right); - } - - public static bool operator !=(Plane left, Plane right) - { - return !left.Equals(right); - } - - #endregion - } -} diff --git a/Jolt/Types/Plane.cs.meta b/Jolt/Types/Plane.cs.meta deleted file mode 100644 index 43b5ade..0000000 --- a/Jolt/Types/Plane.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 291bf55df7da4b7080d477eaf4a8bf97 -timeCreated: 1717859988 \ No newline at end of file diff --git a/Jolt/Types/PlaneShape.cs b/Jolt/Types/PlaneShape.cs deleted file mode 100644 index 6d7f122..0000000 --- a/Jolt/Types/PlaneShape.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_PlaneShape", "JPH_Shape")] - public partial struct PlaneShape - { - internal NativeHandle Handle; - - public static PlaneShape Create(Plane plane, float halfExtent) - { - return new PlaneShape { Handle = JPH_PlaneShape_Create(plane, halfExtent) }; - } - } -} diff --git a/Jolt/Types/PlaneShape.cs.meta b/Jolt/Types/PlaneShape.cs.meta deleted file mode 100644 index adb8ea4..0000000 --- a/Jolt/Types/PlaneShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: dda56bbc9143438f885f08942b221bec -timeCreated: 1725090321 \ No newline at end of file diff --git a/Jolt/Types/PlaneShapeSettings.cs b/Jolt/Types/PlaneShapeSettings.cs deleted file mode 100644 index cdf4066..0000000 --- a/Jolt/Types/PlaneShapeSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_PlaneShapeSettings", "JPH_ShapeSettings")] - public partial struct PlaneShapeSettings - { - internal NativeHandle Handle; - - public static PlaneShapeSettings Create(Plane plane, float halfExtent) - { - return new PlaneShapeSettings { Handle = JPH_PlaneShapeSettings_Create(plane, halfExtent) }; - } - } -} diff --git a/Jolt/Types/PlaneShapeSettings.cs.meta b/Jolt/Types/PlaneShapeSettings.cs.meta deleted file mode 100644 index 9b4956a..0000000 --- a/Jolt/Types/PlaneShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a65d1e53d83c48a2bd9eb6059a2d8a2d -timeCreated: 1725090434 \ No newline at end of file diff --git a/Jolt/Types/PointConstraint.cs b/Jolt/Types/PointConstraint.cs deleted file mode 100644 index 8ff5ae3..0000000 --- a/Jolt/Types/PointConstraint.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_PointConstraint", "JPH_TwoBodyConstraint", "JPH_Constraint")] - public partial struct PointConstraint - { - internal NativeHandle Handle; - - public static PointConstraint Create(ref PointConstraintSettings settings, Body bodyA, Body bodyB) - { - return new PointConstraint { Handle = JPH_PointConstraint_Create(ref settings, bodyA.Handle, bodyB.Handle) }; - } - } -} diff --git a/Jolt/Types/PointConstraint.cs.meta b/Jolt/Types/PointConstraint.cs.meta deleted file mode 100644 index 5141cf3..0000000 --- a/Jolt/Types/PointConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: db27f20586174c1bb2fc960b502bed8a -timeCreated: 1725316703 \ No newline at end of file diff --git a/Jolt/Types/PointConstraintSettings.cs b/Jolt/Types/PointConstraintSettings.cs deleted file mode 100644 index cf745a3..0000000 --- a/Jolt/Types/PointConstraintSettings.cs +++ /dev/null @@ -1,64 +0,0 @@ -using System.Runtime.InteropServices; - -using static Jolt.Bindings; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_PointConstraintSettings))] - public struct PointConstraintSettings - { - /// - /// Create a new instance initialized with the default values. - /// - public static PointConstraintSettings Create() - { - var instance = new PointConstraintSettings(); - JPH_PointConstraintSettings_Init(ref instance); - return instance; - } - - private ConstraintSettings @base; - - public NativeBool Enabled - { - get => @base.Enabled; - set => @base.Enabled = value; - } - - public uint ConstraintPriority - { - get => @base.ConstraintPriority; - set => @base.ConstraintPriority = value; - } - - public uint NumVelocityStepsOverride - { - get => @base.NumVelocityStepsOverride; - set => @base.NumVelocityStepsOverride = value; - } - - public uint NumPositionStepsOverride - { - get => @base.NumPositionStepsOverride; - set => @base.NumPositionStepsOverride = value; - } - - public float DrawConstraintSize - { - get => @base.DrawConstraintSize; - set => @base.DrawConstraintSize = value; - } - - public ulong UserData - { - get => @base.UserData; - set => @base.UserData = value; - } - - public ConstraintSpace Space; - - public rvec3 Point1; - - public rvec3 Point2; - } -} diff --git a/Jolt/Types/PointConstraintSettings.cs.meta b/Jolt/Types/PointConstraintSettings.cs.meta deleted file mode 100644 index f6b6b86..0000000 --- a/Jolt/Types/PointConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 874affaed59a461a9bc76c672ccaa7ce -timeCreated: 1725316654 \ No newline at end of file diff --git a/Jolt/Types/RayCastResult.cs b/Jolt/Types/RayCastResult.cs deleted file mode 100644 index c5d4cd5..0000000 --- a/Jolt/Types/RayCastResult.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_RayCastResult))] - public struct RayCastResult - { - public BodyID BodyID; - - public float Fraction; - - public SubShapeID SubShapeID; - } -} diff --git a/Jolt/Types/RayCastResult.cs.meta b/Jolt/Types/RayCastResult.cs.meta deleted file mode 100644 index fdb0d58..0000000 --- a/Jolt/Types/RayCastResult.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: eb1a103c06ca46eeab347883cdc33038 -timeCreated: 1725314749 \ No newline at end of file diff --git a/Jolt/Types/RayCastSettings.cs b/Jolt/Types/RayCastSettings.cs deleted file mode 100644 index 6aea3b5..0000000 --- a/Jolt/Types/RayCastSettings.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_RayCastSettings))] - public struct RayCastSettings - { - public BackFaceMode BackFaceModeTriangles; - - public BackFaceMode BackFaceModeConvex; - - public NativeBool TreatConvexAsSolid; - } -} diff --git a/Jolt/Types/RayCastSettings.cs.meta b/Jolt/Types/RayCastSettings.cs.meta deleted file mode 100644 index 8a7ffe0..0000000 --- a/Jolt/Types/RayCastSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 539a481cb47c4eee81a6f6526324de4d -timeCreated: 1741272218 \ No newline at end of file diff --git a/Jolt/Types/Shape.cs b/Jolt/Types/Shape.cs deleted file mode 100644 index fdf3ebc..0000000 --- a/Jolt/Types/Shape.cs +++ /dev/null @@ -1,51 +0,0 @@ -namespace Jolt -{ - /// - /// A widened Shape instance handle. - /// - [GenerateBindings("JPH_Shape")] - public partial struct Shape - { - internal NativeHandle Handle; - - public static implicit operator Shape(BoxShape shape) - { - return new Shape { Handle = shape.Handle.Reinterpret() }; - } - - public static implicit operator Shape(CapsuleShape shape) - { - return new Shape { Handle = shape.Handle.Reinterpret() }; - } - - public static implicit operator Shape(ConvexShape shape) - { - return new Shape { Handle = shape.Handle.Reinterpret() }; - } - - public static implicit operator Shape(ConvexHullShape shape) - { - return new Shape { Handle = shape.Handle.Reinterpret() }; - } - - public static implicit operator Shape(CylinderShape shape) - { - return new Shape { Handle = shape.Handle.Reinterpret() }; - } - - public static implicit operator Shape(MeshShape shape) - { - return new Shape { Handle = shape.Handle.Reinterpret() }; - } - - public static implicit operator Shape(SphereShape shape) - { - return new Shape { Handle = shape.Handle.Reinterpret() }; - } - - public static implicit operator Shape(TaperedCapsuleShape shape) - { - return new Shape { Handle = shape.Handle.Reinterpret() }; - } - } -} diff --git a/Jolt/Types/Shape.cs.meta b/Jolt/Types/Shape.cs.meta deleted file mode 100644 index 930e76b..0000000 --- a/Jolt/Types/Shape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 35798d5e92734a149edbd77a223b533a -timeCreated: 1708220228 \ No newline at end of file diff --git a/Jolt/Types/ShapeCastResult.cs b/Jolt/Types/ShapeCastResult.cs deleted file mode 100644 index 1305230..0000000 --- a/Jolt/Types/ShapeCastResult.cs +++ /dev/null @@ -1,27 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Mathematics; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_ShapeCastResult))] - public struct ShapeCastResult - { - public float3 ContactPointOn1; - - public float3 ContactPointOn2; - - public float3 PenetrationAxis; - - public float PenetrationDepth; - - public SubShapeID SubShapeID1; - - public SubShapeID SubShapeID2; - - public BodyID BodyID2; - - public float Fraction; - - public NativeBool IsBackFaceHit; - } -} diff --git a/Jolt/Types/ShapeCastResult.cs.meta b/Jolt/Types/ShapeCastResult.cs.meta deleted file mode 100644 index 91c805d..0000000 --- a/Jolt/Types/ShapeCastResult.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: e50bd242f0944d40857d07f84a2780fa -timeCreated: 1726418043 \ No newline at end of file diff --git a/Jolt/Types/ShapeCastSettings.cs b/Jolt/Types/ShapeCastSettings.cs deleted file mode 100644 index 44d2925..0000000 --- a/Jolt/Types/ShapeCastSettings.cs +++ /dev/null @@ -1,61 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Mathematics; - -using static Jolt.Bindings; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_ShapeCastSettings))] - public struct ShapeCastSettings - { - /// - /// Create a new instance initialized with the default values. - /// - public static ShapeCastSettings Create() - { - ShapeCastSettings result = default; - JPH_ShapeCastSettings_Init(ref result); - return result; - } - - private CollideSettings @base; - - public ActiveEdgeMode ActiveEdgeMode - { - get => @base.ActiveEdgeMode; - set => @base.ActiveEdgeMode = value; - } - - public CollectFacesMode CollectFacesMode - { - get => @base.CollectFacesMode; - set => @base.CollectFacesMode = value; - } - - public float CollisionTolerance - { - get => @base.CollisionTolerance; - set => @base.CollisionTolerance = value; - } - - public float PenetrationTolerance - { - get => @base.PenetrationTolerance; - set => @base.PenetrationTolerance = value; - } - - public float3 ActiveEdgeMovementDirection - { - get => @base.ActiveEdgeMovementDirection; - set => @base.ActiveEdgeMovementDirection = value; - } - - public BackFaceMode BackFaceModeTriangles; - - public BackFaceMode BackFaceModeConvex; - - public NativeBool UseShrunkenShapeAndConvexRadius; - - public NativeBool ReturnDeepestPoint; - } -} diff --git a/Jolt/Types/ShapeCastSettings.cs.meta b/Jolt/Types/ShapeCastSettings.cs.meta deleted file mode 100644 index db9072a..0000000 --- a/Jolt/Types/ShapeCastSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 71fd7e4ca3484fcb90bc6fd622cceffd -timeCreated: 1741186525 \ No newline at end of file diff --git a/Jolt/Types/ShapeColor.cs b/Jolt/Types/ShapeColor.cs deleted file mode 100644 index 73ed56b..0000000 --- a/Jolt/Types/ShapeColor.cs +++ /dev/null @@ -1,12 +0,0 @@ -namespace Jolt -{ - public enum ShapeColor : uint - { - InstanceColor = 0, - ShapeTypeColor = 1, - MotionTypeColor = 2, - SleepColor = 3, - IslandColor = 4, - MaterialColor = 5, - } -} diff --git a/Jolt/Types/ShapeColor.cs.meta b/Jolt/Types/ShapeColor.cs.meta deleted file mode 100644 index e774e4e..0000000 --- a/Jolt/Types/ShapeColor.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 73be881742c149d69cf69fc73a779386 -timeCreated: 1741012925 \ No newline at end of file diff --git a/Jolt/Types/ShapeFilter.cs b/Jolt/Types/ShapeFilter.cs deleted file mode 100644 index 3989090..0000000 --- a/Jolt/Types/ShapeFilter.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_ShapeFilter")] - public partial struct ShapeFilter - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/ShapeFilter.cs.meta b/Jolt/Types/ShapeFilter.cs.meta deleted file mode 100644 index a545f3e..0000000 --- a/Jolt/Types/ShapeFilter.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 3e7a567f379a47c4b21c4574662c0679 -timeCreated: 1742568326 \ No newline at end of file diff --git a/Jolt/Types/ShapeSettings.cs b/Jolt/Types/ShapeSettings.cs deleted file mode 100644 index 759b747..0000000 --- a/Jolt/Types/ShapeSettings.cs +++ /dev/null @@ -1,132 +0,0 @@ -namespace Jolt -{ - /// - /// Generic ShapeSettings interface for a native ShapeSettings instance. - /// - [GenerateBindings("JPH_ShapeSettings")] - public partial struct ShapeSettings - { - internal NativeHandle Handle; - - /// - /// Reinterpret BoxShapeSettings as a generic ShapeSettings instance. - /// - /// - /// This does not reallocate the shape settings; the underlying pointer is the same. - /// - public static implicit operator ShapeSettings(BoxShapeSettings settings) - { - return new ShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - - /// - /// Reinterpret PlaneShapeSettings as a generic ShapeSettings instance. - /// - /// - /// This does not reallocate the shape settings; the underlying pointer is the same. - /// - public static implicit operator ShapeSettings(PlaneShapeSettings settings) - { - return new ShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - - /// - /// Reinterpret CapsuleShapeSettings as a generic ShapeSettings instance. - /// - /// - /// This does not reallocate the shape settings; the underlying pointer is the same. - /// - public static implicit operator ShapeSettings(CapsuleShapeSettings settings) - { - return new ShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - - /// - /// Reinterpret ConvexHullShapeSettings as a generic ShapeSettings instance. - /// - /// - /// This does not reallocate the shape settings; the underlying pointer is the same. - /// - public static implicit operator ShapeSettings(ConvexHullShapeSettings settings) - { - return new ShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - - /// - /// Reinterpret CylinderShapeSettings as a generic ShapeSettings instance. - /// - /// - /// This does not reallocate the shape settings; the underlying pointer is the same. - /// - public static implicit operator ShapeSettings(CylinderShapeSettings settings) - { - return new ShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - - /// - /// Reinterpret MeshShapeSettings as a generic ShapeSettings instance. - /// - /// - /// This does not reallocate the shape settings; the underlying pointer is the same. - /// - public static implicit operator ShapeSettings(MeshShapeSettings settings) - { - return new ShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - - /// - /// Reinterpret SphereShapeSettings as a generic ShapeSettings instance. - /// - /// - /// This does not reallocate the shape settings; the underlying pointer is the same. - /// - public static implicit operator ShapeSettings(SphereShapeSettings settings) - { - return new ShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - - /// - /// Reinterpret TaperedCapsuleShapeSettings as a generic ShapeSettings instance. - /// - /// - /// This does not reallocate the shape settings; the underlying pointer is the same. - /// - public static implicit operator ShapeSettings(TaperedCapsuleShapeSettings settings) - { - return new ShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - - /// - /// Reinterpret CompoundShapeSettings as a generic ShapeSettings instance. - /// - /// - /// This does not reallocate the shape settings; the underlying pointer is the same. - /// - public static implicit operator ShapeSettings(CompoundShapeSettings settings) - { - return new ShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - - /// - /// Reinterpret StaticCompoundShapeSettings as a generic ShapeSettings instance. - /// - /// - /// This does not reallocate the shape settings; the underlying pointer is the same. - /// - public static implicit operator ShapeSettings(StaticCompoundShapeSettings settings) - { - return new ShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - - /// - /// Reinterpret MutableCompoundShapeSettings as a generic ShapeSettings instance. - /// - /// - /// This does not reallocate the shape settings; the underlying pointer is the same. - /// - public static implicit operator ShapeSettings(MutableCompoundShapeSettings settings) - { - return new ShapeSettings { Handle = settings.Handle.Reinterpret() }; - } - } -} diff --git a/Jolt/Types/ShapeSettings.cs.meta b/Jolt/Types/ShapeSettings.cs.meta deleted file mode 100644 index a707bec..0000000 --- a/Jolt/Types/ShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 72f57547127e4abe87fe9c26f5262b40 -timeCreated: 1708123428 \ No newline at end of file diff --git a/Jolt/Types/ShapeSubType.cs b/Jolt/Types/ShapeSubType.cs deleted file mode 100644 index 1b97384..0000000 --- a/Jolt/Types/ShapeSubType.cs +++ /dev/null @@ -1,21 +0,0 @@ -namespace Jolt -{ - public enum ShapeSubType : uint - { - Sphere = 0, - Box = 1, - Triangle = 2, - Capsule = 3, - TaperedCapsule = 4, - Cylinder = 5, - ConvexHull = 6, - StaticCompound = 7, - MutableCompound = 8, - RotatedTranslated = 9, - Scaled = 10, - OffsetCenterOfMass = 11, - Mesh = 12, - HeightField = 13, - SoftBody = 14, - } -} diff --git a/Jolt/Types/ShapeSubType.cs.meta b/Jolt/Types/ShapeSubType.cs.meta deleted file mode 100644 index 6d48d1b..0000000 --- a/Jolt/Types/ShapeSubType.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 798d000b993d4e9eb0be7123a1530eb7 -timeCreated: 1713732009 \ No newline at end of file diff --git a/Jolt/Types/ShapeType.cs b/Jolt/Types/ShapeType.cs deleted file mode 100644 index e5b68fa..0000000 --- a/Jolt/Types/ShapeType.cs +++ /dev/null @@ -1,16 +0,0 @@ -namespace Jolt -{ - public enum ShapeType : uint - { - Convex = 0, - Compound = 1, - Decorated = 2, - Mesh = 3, - HeightField = 4, - SoftBody = 5, - User1 = 6, - User2 = 7, - User3 = 8, - User4 = 9, - } -} diff --git a/Jolt/Types/ShapeType.cs.meta b/Jolt/Types/ShapeType.cs.meta deleted file mode 100644 index 911ad82..0000000 --- a/Jolt/Types/ShapeType.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 5ffeda21c00744efb2c45816b233d1ba -timeCreated: 1713731819 \ No newline at end of file diff --git a/Jolt/Types/SixDOFConstraint.cs b/Jolt/Types/SixDOFConstraint.cs deleted file mode 100644 index eade83a..0000000 --- a/Jolt/Types/SixDOFConstraint.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_SixDOFConstraint", "JPH_TwoBodyConstraint", "JPH_Constraint")] - public partial struct SixDOFConstraint - { - internal NativeHandle Handle; - - public static SixDOFConstraint Create(ref SixDOFConstraintSettings settings, Body bodyA, Body bodyB) - { - return new SixDOFConstraint { Handle = JPH_SixDOFConstraint_Create(ref settings, bodyA.Handle, bodyB.Handle) }; - } - } -} diff --git a/Jolt/Types/SixDOFConstraint.cs.meta b/Jolt/Types/SixDOFConstraint.cs.meta deleted file mode 100644 index eee2387..0000000 --- a/Jolt/Types/SixDOFConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 366718dc181349c186d69454776e3379 -timeCreated: 1726411901 \ No newline at end of file diff --git a/Jolt/Types/SixDOFConstraintAxis.cs b/Jolt/Types/SixDOFConstraintAxis.cs deleted file mode 100644 index 508f676..0000000 --- a/Jolt/Types/SixDOFConstraintAxis.cs +++ /dev/null @@ -1,12 +0,0 @@ -namespace Jolt -{ - public enum SixDOFConstraintAxis : uint - { - TranslationX = 0, - TranslationY = 1, - TranslationZ = 2, - RotationX = 3, - RotationY = 4, - RotationZ = 5, - } -} diff --git a/Jolt/Types/SixDOFConstraintAxis.cs.meta b/Jolt/Types/SixDOFConstraintAxis.cs.meta deleted file mode 100644 index 3457c49..0000000 --- a/Jolt/Types/SixDOFConstraintAxis.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2f37d788ae816954c89979f1998996eb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/SixDOFConstraintSettings.cs b/Jolt/Types/SixDOFConstraintSettings.cs deleted file mode 100644 index f2e485d..0000000 --- a/Jolt/Types/SixDOFConstraintSettings.cs +++ /dev/null @@ -1,132 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Mathematics; - -using static Jolt.Bindings; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_SixDOFConstraintSettings))] - public struct SixDOFConstraintSettings - { - /// - /// Create a new instance initialized with the default values. - /// - public static SixDOFConstraintSettings Create() - { - var result = new SixDOFConstraintSettings(); - JPH_SixDOFConstraintSettings_Init(ref result); - return result; - } - - private ConstraintSettings @base; - - public NativeBool Enabled - { - get => @base.Enabled; - set => @base.Enabled = value; - } - - public uint ConstraintPriority - { - get => @base.ConstraintPriority; - set => @base.ConstraintPriority = value; - } - - public uint NumVelocityStepsOverride - { - get => @base.NumVelocityStepsOverride; - set => @base.NumVelocityStepsOverride = value; - } - - public uint NumPositionStepsOverride - { - get => @base.NumPositionStepsOverride; - set => @base.NumPositionStepsOverride = value; - } - - public float DrawConstraintSize - { - get => @base.DrawConstraintSize; - set => @base.DrawConstraintSize = value; - } - - public ulong UserData - { - get => @base.UserData; - set => @base.UserData = value; - } - - public ConstraintSpace Space; - - public rvec3 Position1; - - public float3 AxisX1; - - public float3 AxisY1; - - public rvec3 Position2; - - public float3 AxisX2; - - public float3 AxisY2; - - public unsafe fixed float MaxFriction[6]; - - public SwingType SwingType; - - public unsafe fixed float LimitMin[6]; - - public unsafe fixed float LimitMax[6]; - - public SpringSettingsFixedBuffer LimitsSpringSettings; - - public MotorSettingsFixedBuffer MotorSettings; - - /// - /// Specialized fixed size buffer for SixDOFConstraintSettings LimitsSpringSettings. - /// - [ExpectedStructSize(typeof(JPH_SixDOFConstraintSettings._limitsSpringSettings_e__FixedBuffer))] - public struct SpringSettingsFixedBuffer - { - private SpringSettings e0; - private SpringSettings e1; - private SpringSettings e2; - - public unsafe ref SpringSettings this[int index] - { - get - { - fixed (SpringSettings* ptr = &e0) - { - return ref ptr[index]; - } - } - } - } - - /// - /// Specialized fixed size buffer for SixDOFConstraintSettings MotorSettings. - /// - [ExpectedStructSize(typeof(JPH_SixDOFConstraintSettings._motorSettings_e__FixedBuffer))] - public struct MotorSettingsFixedBuffer - { - private MotorSettings e0; - private MotorSettings e1; - private MotorSettings e2; - private MotorSettings e3; - private MotorSettings e4; - private MotorSettings e5; - - public unsafe ref MotorSettings this[int index] - { - get - { - fixed (MotorSettings* ptr = &e0) - { - return ref ptr[index]; - } - } - } - } - } -} diff --git a/Jolt/Types/SixDOFConstraintSettings.cs.meta b/Jolt/Types/SixDOFConstraintSettings.cs.meta deleted file mode 100644 index 1363edb..0000000 --- a/Jolt/Types/SixDOFConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: cffab2df4c2648bb852f2271ec58efd4 -timeCreated: 1726411921 \ No newline at end of file diff --git a/Jolt/Types/SliderConstraint.cs b/Jolt/Types/SliderConstraint.cs deleted file mode 100644 index ffc53c1..0000000 --- a/Jolt/Types/SliderConstraint.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_SliderConstraint", "JPH_TwoBodyConstraint", "JPH_Constraint")] - public partial struct SliderConstraint - { - internal NativeHandle Handle; - - public static SliderConstraint Create(ref SliderConstraintSettings settings, Body bodyA, Body bodyB) - { - return new SliderConstraint { Handle = JPH_SliderConstraint_Create(ref settings, bodyA.Handle, bodyB.Handle) }; - } - } -} diff --git a/Jolt/Types/SliderConstraint.cs.meta b/Jolt/Types/SliderConstraint.cs.meta deleted file mode 100644 index e2cc788..0000000 --- a/Jolt/Types/SliderConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 64ad8426597c4ff29aea19be3d8b4917 -timeCreated: 1725729169 \ No newline at end of file diff --git a/Jolt/Types/SliderConstraintSettings.cs b/Jolt/Types/SliderConstraintSettings.cs deleted file mode 100644 index 1debe57..0000000 --- a/Jolt/Types/SliderConstraintSettings.cs +++ /dev/null @@ -1,90 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Mathematics; - -using static Jolt.Bindings; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_SliderConstraintSettings))] - public struct SliderConstraintSettings - { - /// - /// Create a new instance initialized with the default values. - /// - public static SliderConstraintSettings Create() - { - var result = new SliderConstraintSettings(); - JPH_SliderConstraintSettings_Init(ref result); - return result; - } - - private ConstraintSettings @base; - - public NativeBool Enabled - { - get => @base.Enabled; - set => @base.Enabled = value; - } - - public uint ConstraintPriority - { - get => @base.ConstraintPriority; - set => @base.ConstraintPriority = value; - } - - public uint NumVelocityStepsOverride - { - get => @base.NumVelocityStepsOverride; - set => @base.NumVelocityStepsOverride = value; - } - - public uint NumPositionStepsOverride - { - get => @base.NumPositionStepsOverride; - set => @base.NumPositionStepsOverride = value; - } - - public float DrawConstraintSize - { - get => @base.DrawConstraintSize; - set => @base.DrawConstraintSize = value; - } - - public ulong UserData - { - get => @base.UserData; - set => @base.UserData = value; - } - - public ConstraintSpace Space; - - public NativeBool AutoDetectPoint; - - public rvec3 Point1; - - public float3 SliderAxis1; - - public float3 NormalAxis1; - - public rvec3 Point2; - - public float3 SliderAxis2; - - public float3 NormalAxis2; - - public float LimitsMin; - - public float LimitsMax; - - public SpringSettings LimitsSpringSettings; - - public float MaxFrictionForce; - - public MotorSettings MotorSettings; - - public void SetSliderAxis(float3 axis) - { - JPH_SliderConstraintSettings_SetSliderAxis(ref this, axis); - } - } -} diff --git a/Jolt/Types/SliderConstraintSettings.cs.meta b/Jolt/Types/SliderConstraintSettings.cs.meta deleted file mode 100644 index a875efd..0000000 --- a/Jolt/Types/SliderConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b491fd65361a4a40b49ffe46b25274e0 -timeCreated: 1725729120 \ No newline at end of file diff --git a/Jolt/Types/SoftBodyConstraintColor.cs b/Jolt/Types/SoftBodyConstraintColor.cs deleted file mode 100644 index 1e64fac..0000000 --- a/Jolt/Types/SoftBodyConstraintColor.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace Jolt -{ - public enum SoftBodyConstraintColor : uint - { - ConstraintType = 0, - ConstraintGroup = 1, - ConstraintOrder = 2, - } -} diff --git a/Jolt/Types/SoftBodyConstraintColor.cs.meta b/Jolt/Types/SoftBodyConstraintColor.cs.meta deleted file mode 100644 index c349d7b..0000000 --- a/Jolt/Types/SoftBodyConstraintColor.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ccd2a5b9a6cf47fd9d9c5c4a348fa4f8 -timeCreated: 1741012842 \ No newline at end of file diff --git a/Jolt/Types/SoftBodyCreationSettings.cs b/Jolt/Types/SoftBodyCreationSettings.cs deleted file mode 100644 index 8221d3b..0000000 --- a/Jolt/Types/SoftBodyCreationSettings.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_SoftBodyCreationSettings")] - public partial struct SoftBodyCreationSettings - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/SoftBodyCreationSettings.cs.meta b/Jolt/Types/SoftBodyCreationSettings.cs.meta deleted file mode 100644 index 5318af1..0000000 --- a/Jolt/Types/SoftBodyCreationSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: e8d269ba489c4477b55f8f8512cc423e -timeCreated: 1717342173 \ No newline at end of file diff --git a/Jolt/Types/SphereShape.cs b/Jolt/Types/SphereShape.cs deleted file mode 100644 index 131b9b8..0000000 --- a/Jolt/Types/SphereShape.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_SphereShape", "JPH_ConvexShape", "JPH_Shape")] - public partial struct SphereShape - { - internal NativeHandle Handle; - - public static SphereShape Create(float radius) - { - return new SphereShape { Handle = JPH_SphereShape_Create(radius) }; - } - } -} diff --git a/Jolt/Types/SphereShape.cs.meta b/Jolt/Types/SphereShape.cs.meta deleted file mode 100644 index 37dbb36..0000000 --- a/Jolt/Types/SphereShape.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dcc6148d4a29f68449e789ff95d35b4f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/SphereShapeSettings.cs b/Jolt/Types/SphereShapeSettings.cs deleted file mode 100644 index b4e9ba2..0000000 --- a/Jolt/Types/SphereShapeSettings.cs +++ /dev/null @@ -1,18 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_SphereShapeSettings", "JPH_ConvexShapeSettings", "JPH_ShapeSettings")] - public partial struct SphereShapeSettings - { - internal NativeHandle Handle; - - /// - /// Allocate a new native SphereShapeSettings and return the handle. - /// - public static SphereShapeSettings Create(float radius) - { - return new SphereShapeSettings { Handle = JPH_SphereShapeSettings_Create(radius) }; - } - } -} diff --git a/Jolt/Types/SphereShapeSettings.cs.meta b/Jolt/Types/SphereShapeSettings.cs.meta deleted file mode 100644 index 0447bdd..0000000 --- a/Jolt/Types/SphereShapeSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 25e0a175e862a4543a2d002815d56c8c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Jolt/Types/SpringMode.cs b/Jolt/Types/SpringMode.cs deleted file mode 100644 index c8e981f..0000000 --- a/Jolt/Types/SpringMode.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - public enum SpringMode : uint - { - FrequencyAndDamping = 0, - StiffnessAndDamping = 1, - } -} diff --git a/Jolt/Types/SpringMode.cs.meta b/Jolt/Types/SpringMode.cs.meta deleted file mode 100644 index cb68ab7..0000000 --- a/Jolt/Types/SpringMode.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: dc16c89e60374d95be931be7a703de70 -timeCreated: 1718301839 \ No newline at end of file diff --git a/Jolt/Types/SpringSettings.cs b/Jolt/Types/SpringSettings.cs deleted file mode 100644 index 4b5bbe0..0000000 --- a/Jolt/Types/SpringSettings.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_SpringSettings))] - public struct SpringSettings - { - public SpringMode Mode; - - public float FrequencyOrStiffness; - - public float Damping; - } -} diff --git a/Jolt/Types/SpringSettings.cs.meta b/Jolt/Types/SpringSettings.cs.meta deleted file mode 100644 index a659d84..0000000 --- a/Jolt/Types/SpringSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: dad2c308a6204189b8c65c0eb8abd6cb -timeCreated: 1718301829 \ No newline at end of file diff --git a/Jolt/Types/StaticCompoundShapeSettings.cs b/Jolt/Types/StaticCompoundShapeSettings.cs deleted file mode 100644 index 5be2609..0000000 --- a/Jolt/Types/StaticCompoundShapeSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_StaticCompoundShapeSettings", "JPH_CompoundShapeSettings", "JPH_ShapeSettings")] - public partial struct StaticCompoundShapeSettings - { - internal NativeHandle Handle; - - public static StaticCompoundShapeSettings Create() - { - return new StaticCompoundShapeSettings { Handle = JPH_StaticCompoundShapeSettings_Create() }; - } - } -} diff --git a/Jolt/Types/StaticCompoundShapeSettings.cs.meta b/Jolt/Types/StaticCompoundShapeSettings.cs.meta deleted file mode 100644 index 143bbfd..0000000 --- a/Jolt/Types/StaticCompoundShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 8cc3b6bcee924923add7e977d9e9a2bd -timeCreated: 1708116751 \ No newline at end of file diff --git a/Jolt/Types/SubShapeID.cs b/Jolt/Types/SubShapeID.cs deleted file mode 100644 index 1936121..0000000 --- a/Jolt/Types/SubShapeID.cs +++ /dev/null @@ -1,45 +0,0 @@ -using System; -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(uint))] - public struct SubShapeID : IEquatable - { - public uint Value; - - internal SubShapeID(uint value) - { - Value = value; - } - - #region IEquatable - - public bool Equals(SubShapeID other) - { - return Value == other.Value; - } - - public override bool Equals(object obj) - { - return obj is SubShapeID other && Equals(other); - } - - public override int GetHashCode() - { - return (int) Value; - } - - public static bool operator ==(SubShapeID lhs, SubShapeID rhs) - { - return lhs.Equals(rhs); - } - - public static bool operator !=(SubShapeID lhs, SubShapeID rhs) - { - return !lhs.Equals(rhs); - } - - #endregion - } -} diff --git a/Jolt/Types/SubShapeID.cs.meta b/Jolt/Types/SubShapeID.cs.meta deleted file mode 100644 index 1a7a07c..0000000 --- a/Jolt/Types/SubShapeID.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 15dc4fa04e474d5899eca9f378ca90c7 -timeCreated: 1726417117 \ No newline at end of file diff --git a/Jolt/Types/SubShapeIDPair.cs b/Jolt/Types/SubShapeIDPair.cs deleted file mode 100644 index a5ea54f..0000000 --- a/Jolt/Types/SubShapeIDPair.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System.Runtime.InteropServices; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_SubShapeIDPair))] - public struct SubShapeIDPair - { - public BodyID Body1; - - public SubShapeID SubShape1; - - public BodyID Body2; - - public SubShapeID SubShape2; - } -} diff --git a/Jolt/Types/SubShapeIDPair.cs.meta b/Jolt/Types/SubShapeIDPair.cs.meta deleted file mode 100644 index 4366775..0000000 --- a/Jolt/Types/SubShapeIDPair.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ad70fe4b95e24e288285844deef4d7ba -timeCreated: 1726417050 \ No newline at end of file diff --git a/Jolt/Types/SwingTwistConstraint.cs b/Jolt/Types/SwingTwistConstraint.cs deleted file mode 100644 index ae3bcc8..0000000 --- a/Jolt/Types/SwingTwistConstraint.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_SwingTwistConstraint", "JPH_TwoBodyConstraint", "JPH_Constraint")] - public partial struct SwingTwistConstraint - { - internal NativeHandle Handle; - - public static SwingTwistConstraint Create(ref SwingTwistConstraintSettings settings, Body bodyA, Body bodyB) - { - return new SwingTwistConstraint { Handle = JPH_SwingTwistConstraint_Create(ref settings, bodyA.Handle, bodyB.Handle) }; - } - } -} diff --git a/Jolt/Types/SwingTwistConstraint.cs.meta b/Jolt/Types/SwingTwistConstraint.cs.meta deleted file mode 100644 index 9de8c27..0000000 --- a/Jolt/Types/SwingTwistConstraint.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2299712f2e88412f8857c38bcb6d92af -timeCreated: 1726411455 \ No newline at end of file diff --git a/Jolt/Types/SwingTwistConstraintSettings.cs b/Jolt/Types/SwingTwistConstraintSettings.cs deleted file mode 100644 index c807af2..0000000 --- a/Jolt/Types/SwingTwistConstraintSettings.cs +++ /dev/null @@ -1,89 +0,0 @@ -using System.Runtime.InteropServices; -using Unity.Mathematics; - -using static Jolt.Bindings; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_SwingTwistConstraintSettings))] - public struct SwingTwistConstraintSettings - { - /// - /// Create a new instance initialized with the default values. - /// - public static SwingTwistConstraintSettings Create() - { - var result = new SwingTwistConstraintSettings(); - JPH_SwingTwistConstraintSettings_Init(ref result); - return result; - } - - private ConstraintSettings @base; - - public NativeBool Enabled - { - get => @base.Enabled; - set => @base.Enabled = value; - } - - public uint ConstraintPriority - { - get => @base.ConstraintPriority; - set => @base.ConstraintPriority = value; - } - - public uint NumVelocityStepsOverride - { - get => @base.NumVelocityStepsOverride; - set => @base.NumVelocityStepsOverride = value; - } - - public uint NumPositionStepsOverride - { - get => @base.NumPositionStepsOverride; - set => @base.NumPositionStepsOverride = value; - } - - public float DrawConstraintSize - { - get => @base.DrawConstraintSize; - set => @base.DrawConstraintSize = value; - } - - public ulong UserData - { - get => @base.UserData; - set => @base.UserData = value; - } - - public ConstraintSpace Space; - - public rvec3 Position1; - - public float3 TwistAxis1; - - public float3 PlaneAxis1; - - public rvec3 Position2; - - public float3 TwistAxis2; - - public float3 PlaneAxis2; - - public SwingType SwingType; - - public float NormalHalfConeAngle; - - public float PlaneHalfConeAngle; - - public float TwistMinAngle; - - public float TwistMaxAngle; - - public float MaxFrictionTorque; - - public MotorSettings SwingMotorSettings; - - public MotorSettings TwistMotorSettings; - } -} diff --git a/Jolt/Types/SwingTwistConstraintSettings.cs.meta b/Jolt/Types/SwingTwistConstraintSettings.cs.meta deleted file mode 100644 index f0cb919..0000000 --- a/Jolt/Types/SwingTwistConstraintSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b8aeda8cc5084809b7100fbd5651c81d -timeCreated: 1726411471 \ No newline at end of file diff --git a/Jolt/Types/SwingType.cs b/Jolt/Types/SwingType.cs deleted file mode 100644 index 8ee8d5a..0000000 --- a/Jolt/Types/SwingType.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - public enum SwingType : uint - { - Cone = 0, - Pyramid = 1, - } -} \ No newline at end of file diff --git a/Jolt/Types/SwingType.cs.meta b/Jolt/Types/SwingType.cs.meta deleted file mode 100644 index fc8373a..0000000 --- a/Jolt/Types/SwingType.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 906a251586e341d39ddabbbf7a25eba7 -timeCreated: 1739051737 \ No newline at end of file diff --git a/Jolt/Types/TaperedCapsuleShape.cs b/Jolt/Types/TaperedCapsuleShape.cs deleted file mode 100644 index 2907bed..0000000 --- a/Jolt/Types/TaperedCapsuleShape.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_TaperedCapsuleShape", "JPH_ConvexShape", "JPH_Shape")] - public partial struct TaperedCapsuleShape - { - internal NativeHandle Handle; - - // TODO no JPH_TaperedCapsuleShape_Create binding? - } -} diff --git a/Jolt/Types/TaperedCapsuleShape.cs.meta b/Jolt/Types/TaperedCapsuleShape.cs.meta deleted file mode 100644 index b68034b..0000000 --- a/Jolt/Types/TaperedCapsuleShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 5dcfbb4994824c5e9f5f6e83c147d88d -timeCreated: 1708099646 \ No newline at end of file diff --git a/Jolt/Types/TaperedCapsuleShapeSettings.cs b/Jolt/Types/TaperedCapsuleShapeSettings.cs deleted file mode 100644 index 0c8937e..0000000 --- a/Jolt/Types/TaperedCapsuleShapeSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_TaperedCapsuleShapeSettings", "JPH_ConvexShapeSettings", "JPH_ShapeSettings")] - public partial struct TaperedCapsuleShapeSettings - { - internal NativeHandle Handle; - - public static TaperedCapsuleShapeSettings Create(float halfHeightOfCylinder, float topRadius, float bottomRadius) - { - return new TaperedCapsuleShapeSettings { Handle = JPH_TaperedCapsuleShapeSettings_Create(halfHeightOfCylinder, topRadius, bottomRadius) }; - } - } -} diff --git a/Jolt/Types/TaperedCapsuleShapeSettings.cs.meta b/Jolt/Types/TaperedCapsuleShapeSettings.cs.meta deleted file mode 100644 index 018ca1f..0000000 --- a/Jolt/Types/TaperedCapsuleShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 9834daee9fdd446696dbf79bf21124a0 -timeCreated: 1708096578 \ No newline at end of file diff --git a/Jolt/Types/Triangle.cs b/Jolt/Types/Triangle.cs deleted file mode 100644 index 20a7a78..0000000 --- a/Jolt/Types/Triangle.cs +++ /dev/null @@ -1,54 +0,0 @@ -using System; -using System.Runtime.InteropServices; -using Unity.Mathematics; - -namespace Jolt -{ - [StructLayout(LayoutKind.Sequential), ExpectedStructSize(typeof(JPH_Triangle))] - public readonly struct Triangle : IEquatable - { - public readonly float3 V1; - public readonly float3 V2; - public readonly float3 V3; - - public readonly uint MaterialIndex; - - public Triangle(float3 v1, float3 v2, float3 v3, uint materialIndex) - { - V1 = v1; - V2 = v2; - V3 = v3; - - MaterialIndex = materialIndex; - } - - #region MyRegion - - public bool Equals(Triangle other) - { - return V1.Equals(other.V1) && V2.Equals(other.V2) && V3.Equals(other.V3) && MaterialIndex == other.MaterialIndex; - } - - public override bool Equals(object obj) - { - return obj is Triangle other && Equals(other); - } - - public override int GetHashCode() - { - return HashCode.Combine(V1, V2, V3, MaterialIndex); - } - - public static bool operator ==(Triangle lhs, Triangle rhs) - { - return lhs.Equals(rhs); - } - - public static bool operator !=(Triangle lhs, Triangle rhs) - { - return !lhs.Equals(rhs); - } - - #endregion - } -} diff --git a/Jolt/Types/Triangle.cs.meta b/Jolt/Types/Triangle.cs.meta deleted file mode 100644 index 328dc82..0000000 --- a/Jolt/Types/Triangle.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2dfa546be8c647eaa9a4323c7d9e0556 -timeCreated: 1708012149 \ No newline at end of file diff --git a/Jolt/Types/TriangleShape.cs b/Jolt/Types/TriangleShape.cs deleted file mode 100644 index e9126c9..0000000 --- a/Jolt/Types/TriangleShape.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Jolt -{ - [GenerateBindings("JPH_TriangleShape", "JPH_Shape")] - public partial struct TriangleShape - { - internal NativeHandle Handle; - } -} diff --git a/Jolt/Types/TriangleShape.cs.meta b/Jolt/Types/TriangleShape.cs.meta deleted file mode 100644 index ec41c65..0000000 --- a/Jolt/Types/TriangleShape.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b2898396c20d4a708397014a63830ae3 -timeCreated: 1726350179 \ No newline at end of file diff --git a/Jolt/Types/TriangleShapeSettings.cs b/Jolt/Types/TriangleShapeSettings.cs deleted file mode 100644 index eb1bb38..0000000 --- a/Jolt/Types/TriangleShapeSettings.cs +++ /dev/null @@ -1,16 +0,0 @@ -using Unity.Mathematics; -using static Jolt.Bindings; - -namespace Jolt -{ - [GenerateBindings("JPH_TriangleShapeSettings", "JPH_ShapeSettings")] - public partial struct TriangleShapeSettings - { - internal NativeHandle Handle; - - public static TriangleShapeSettings Create(float3 va, float3 vb, float3 vc, float convexRadius) - { - return new TriangleShapeSettings { Handle = JPH_TriangleShapeSettings_Create(va, vb, vc, convexRadius) }; - } - } -} diff --git a/Jolt/Types/TriangleShapeSettings.cs.meta b/Jolt/Types/TriangleShapeSettings.cs.meta deleted file mode 100644 index e009935..0000000 --- a/Jolt/Types/TriangleShapeSettings.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b4bcbbdd63e1486b943ec0b436894903 -timeCreated: 1726350210 \ No newline at end of file diff --git a/Jolt/Types/ValidateResult.cs b/Jolt/Types/ValidateResult.cs deleted file mode 100644 index 3d23078..0000000 --- a/Jolt/Types/ValidateResult.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace Jolt -{ - public enum ValidateResult : uint - { - AcceptAllContactsForThisBodyPair = 0, - AcceptContact = 1, - RejectContact = 2, - RejectAllContactsForThisBodyPair = 3, - } -} diff --git a/Jolt/Types/ValidateResult.cs.meta b/Jolt/Types/ValidateResult.cs.meta deleted file mode 100644 index e2f0f50..0000000 --- a/Jolt/Types/ValidateResult.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 5eb8f46d76904cdeb1aae56d35371ae0 -timeCreated: 1704905527 \ No newline at end of file diff --git a/package.json b/package.json index eef4a6f..3539901 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "com.seep.jolt", + "name": "mooooooi.jolt-physics", "displayName": "Jolt Physics", "description": "Unity compatible bindings for the Jolt physics library", "version": "0.6.0",