Module: Jolt::Native::Generated

Defined in:
lib/jolt/native/generated.rb

Defined Under Namespace

Classes: AABox, BodyActivationListener_Procs, BodyDrawFilter_Procs, BodyFilter_Procs, BodyLockRead, BodyLockWrite, BroadPhaseCastResult, BroadPhaseLayerFilter_Procs, CharacterBaseSettings, CharacterContact, CharacterContactListener_Procs, CharacterContactSettings, CharacterSettings, CharacterVirtualSettings, CharacterVsCharacterCollision_Procs, CollidePointResult, CollideSettingsBase, CollideShapeResult, CollideShapeSettings, CollisionEstimationResult, CollisionGroup, ConeConstraintSettings, ConstraintSettings, ContactListener_Procs, ContactSettings, DebugRenderer_Procs, DistanceConstraintSettings, DrawSettings, ExtendedUpdateSettings, FixedConstraintSettings, GearConstraintSettings, HingeConstraintSettings, IndexedTriangle, IndexedTriangleNoMaterial, JobSystemConfig, JobSystemThreadPoolConfig, MassProperties, Mat4, MotorSettings, ObjectLayerFilter_Procs, PhysicsSettings, PhysicsStepListenerContext, PhysicsStepListener_Procs, PhysicsSystemSettings, Plane, Point, PointConstraintSettings, Quat, RayCastResult, RayCastSettings, ShapeCastResult, ShapeCastSettings, ShapeFilter_Procs, SimShapeFilter_Procs, SixDOFConstraintSettings, SkeletonJoint, SliderConstraintSettings, SoftFace, SoftVertex, SpringSettings, SubShapeIDPair, SupportingFace, SwingTwistConstraintSettings, Triangle, Vec3, Vec4, VehicleAntiRollBar, VehicleConstraintSettings, VehicleDifferentialSettings, VehicleEngineSettings, VehicleTrackSettings

Constant Summary collapse

FUNCTIONS =
{
  JPH_BodyActivationListener_Create: [[:pointer], :pointer],
  JPH_BodyActivationListener_Destroy: [[:pointer], :void],
  JPH_BodyActivationListener_SetProcs: [[:pointer], :void],
  JPH_BodyCreationSettings_Create: [[], :pointer],
  JPH_BodyCreationSettings_Create2: [[:pointer, :pointer, :pointer, :int, :uint32], :pointer],
  JPH_BodyCreationSettings_Create3: [[:pointer, :pointer, :pointer, :int, :uint32], :pointer],
  JPH_BodyCreationSettings_Destroy: [[:pointer], :void],
  JPH_BodyCreationSettings_GetAllowDynamicOrKinematic: [[:pointer], :bool],
  JPH_BodyCreationSettings_GetAllowSleeping: [[:pointer], :bool],
  JPH_BodyCreationSettings_GetAllowedDOFs: [[:pointer], :int],
  JPH_BodyCreationSettings_GetAngularDamping: [[:pointer], :float],
  JPH_BodyCreationSettings_GetAngularVelocity: [[:pointer, :pointer], :void],
  JPH_BodyCreationSettings_GetApplyGyroscopicForce: [[:pointer], :bool],
  JPH_BodyCreationSettings_GetCollideKinematicVsNonDynamic: [[:pointer], :bool],
  JPH_BodyCreationSettings_GetCollisionGroup: [[:pointer, :pointer], :void],
  JPH_BodyCreationSettings_GetEnhancedInternalEdgeRemoval: [[:pointer], :bool],
  JPH_BodyCreationSettings_GetFriction: [[:pointer], :float],
  JPH_BodyCreationSettings_GetGravityFactor: [[:pointer], :float],
  JPH_BodyCreationSettings_GetInertiaMultiplier: [[:pointer], :float],
  JPH_BodyCreationSettings_GetIsSensor: [[:pointer], :bool],
  JPH_BodyCreationSettings_GetLinearDamping: [[:pointer], :float],
  JPH_BodyCreationSettings_GetLinearVelocity: [[:pointer, :pointer], :void],
  JPH_BodyCreationSettings_GetMassPropertiesOverride: [[:pointer, :pointer], :void],
  JPH_BodyCreationSettings_GetMaxAngularVelocity: [[:pointer], :float],
  JPH_BodyCreationSettings_GetMaxLinearVelocity: [[:pointer], :float],
  JPH_BodyCreationSettings_GetMotionQuality: [[:pointer], :int],
  JPH_BodyCreationSettings_GetMotionType: [[:pointer], :int],
  JPH_BodyCreationSettings_GetNumPositionStepsOverride: [[:pointer], :uint32],
  JPH_BodyCreationSettings_GetNumVelocityStepsOverride: [[:pointer], :uint32],
  JPH_BodyCreationSettings_GetObjectLayer: [[:pointer], :uint32],
  JPH_BodyCreationSettings_GetOverrideMassProperties: [[:pointer], :int],
  JPH_BodyCreationSettings_GetPosition: [[:pointer, :pointer], :void],
  JPH_BodyCreationSettings_GetRestitution: [[:pointer], :float],
  JPH_BodyCreationSettings_GetRotation: [[:pointer, :pointer], :void],
  JPH_BodyCreationSettings_GetUseManifoldReduction: [[:pointer], :bool],
  JPH_BodyCreationSettings_GetUserData: [[:pointer], :uint64],
  JPH_BodyCreationSettings_SetAllowDynamicOrKinematic: [[:pointer, :bool], :void],
  JPH_BodyCreationSettings_SetAllowSleeping: [[:pointer, :bool], :void],
  JPH_BodyCreationSettings_SetAllowedDOFs: [[:pointer, :int], :void],
  JPH_BodyCreationSettings_SetAngularDamping: [[:pointer, :float], :void],
  JPH_BodyCreationSettings_SetAngularVelocity: [[:pointer, :pointer], :void],
  JPH_BodyCreationSettings_SetApplyGyroscopicForce: [[:pointer, :bool], :void],
  JPH_BodyCreationSettings_SetCollideKinematicVsNonDynamic: [[:pointer, :bool], :void],
  JPH_BodyCreationSettings_SetCollisionGroup: [[:pointer, :pointer], :void],
  JPH_BodyCreationSettings_SetEnhancedInternalEdgeRemoval: [[:pointer, :bool], :void],
  JPH_BodyCreationSettings_SetFriction: [[:pointer, :float], :void],
  JPH_BodyCreationSettings_SetGravityFactor: [[:pointer, :float], :void],
  JPH_BodyCreationSettings_SetInertiaMultiplier: [[:pointer, :float], :void],
  JPH_BodyCreationSettings_SetIsSensor: [[:pointer, :bool], :void],
  JPH_BodyCreationSettings_SetLinearDamping: [[:pointer, :float], :void],
  JPH_BodyCreationSettings_SetLinearVelocity: [[:pointer, :pointer], :void],
  JPH_BodyCreationSettings_SetMassPropertiesOverride: [[:pointer, :pointer], :void],
  JPH_BodyCreationSettings_SetMaxAngularVelocity: [[:pointer, :float], :void],
  JPH_BodyCreationSettings_SetMaxLinearVelocity: [[:pointer, :float], :void],
  JPH_BodyCreationSettings_SetMotionQuality: [[:pointer, :int], :void],
  JPH_BodyCreationSettings_SetMotionType: [[:pointer, :int], :void],
  JPH_BodyCreationSettings_SetNumPositionStepsOverride: [[:pointer, :uint32], :void],
  JPH_BodyCreationSettings_SetNumVelocityStepsOverride: [[:pointer, :uint32], :void],
  JPH_BodyCreationSettings_SetObjectLayer: [[:pointer, :uint32], :void],
  JPH_BodyCreationSettings_SetOverrideMassProperties: [[:pointer, :int], :void],
  JPH_BodyCreationSettings_SetPosition: [[:pointer, :pointer], :void],
  JPH_BodyCreationSettings_SetRestitution: [[:pointer, :float], :void],
  JPH_BodyCreationSettings_SetRotation: [[:pointer, :pointer], :void],
  JPH_BodyCreationSettings_SetUseManifoldReduction: [[:pointer, :bool], :void],
  JPH_BodyCreationSettings_SetUserData: [[:pointer, :uint64], :void],
  JPH_BodyDrawFilter_Create: [[:pointer], :pointer],
  JPH_BodyDrawFilter_Destroy: [[:pointer], :void],
  JPH_BodyDrawFilter_SetProcs: [[:pointer], :void],
  JPH_BodyFilter_Create: [[:pointer], :pointer],
  JPH_BodyFilter_Destroy: [[:pointer], :void],
  JPH_BodyFilter_SetProcs: [[:pointer], :void],
  JPH_BodyInterface_ActivateBodies: [[:pointer, :pointer, :uint32], :void],
  JPH_BodyInterface_ActivateBodiesInAABox: [[:pointer, :pointer, :pointer, :pointer], :void],
  JPH_BodyInterface_ActivateBody: [[:pointer, :uint32], :void],
  JPH_BodyInterface_AddAngularImpulse: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_AddBody: [[:pointer, :uint32, :int], :void],
  JPH_BodyInterface_AddForce: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_AddForce2: [[:pointer, :uint32, :pointer, :pointer], :void],
  JPH_BodyInterface_AddForceAndTorque: [[:pointer, :uint32, :pointer, :pointer], :void],
  JPH_BodyInterface_AddImpulse: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_AddImpulse2: [[:pointer, :uint32, :pointer, :pointer], :void],
  JPH_BodyInterface_AddLinearAndAngularVelocity: [[:pointer, :uint32, :pointer, :pointer], :void],
  JPH_BodyInterface_AddLinearVelocity: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_AddTorque: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_ApplyBuoyancyImpulse: [[:pointer, :uint32, :pointer, :pointer, :float, :float, :float, :pointer, :pointer, :float], :bool],
  JPH_BodyInterface_AssignBodyID: [[:pointer, :pointer], :bool],
  JPH_BodyInterface_AssignBodyID2: [[:pointer, :pointer, :uint32], :bool],
  JPH_BodyInterface_CreateAndAddBody: [[:pointer, :pointer, :int], :uint32],
  JPH_BodyInterface_CreateAndAddSoftBody: [[:pointer, :pointer, :int], :uint32],
  JPH_BodyInterface_CreateBody: [[:pointer, :pointer], :pointer],
  JPH_BodyInterface_CreateBodyWithID: [[:pointer, :uint32, :pointer], :pointer],
  JPH_BodyInterface_CreateBodyWithoutID: [[:pointer, :pointer], :pointer],
  JPH_BodyInterface_CreateSoftBody: [[:pointer, :pointer], :pointer],
  JPH_BodyInterface_CreateSoftBodyWithID: [[:pointer, :uint32, :pointer], :pointer],
  JPH_BodyInterface_CreateSoftBodyWithoutID: [[:pointer, :pointer], :pointer],
  JPH_BodyInterface_DeactivateBodies: [[:pointer, :pointer, :uint32], :void],
  JPH_BodyInterface_DeactivateBody: [[:pointer, :uint32], :void],
  JPH_BodyInterface_DestroyBody: [[:pointer, :uint32], :void],
  JPH_BodyInterface_DestroyBodyWithoutID: [[:pointer, :pointer], :void],
  JPH_BodyInterface_GetAngularVelocity: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_GetBodyType: [[:pointer, :uint32], :int],
  JPH_BodyInterface_GetCenterOfMassPosition: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_GetCenterOfMassTransform: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_GetCollisionGroup: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_GetFriction: [[:pointer, :uint32], :float],
  JPH_BodyInterface_GetGravityFactor: [[:pointer, :uint32], :float],
  JPH_BodyInterface_GetInverseInertia: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_GetLinearAndAngularVelocity: [[:pointer, :uint32, :pointer, :pointer], :void],
  JPH_BodyInterface_GetLinearVelocity: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_GetMaterial: [[:pointer, :uint32, :uint32], :pointer],
  JPH_BodyInterface_GetMotionQuality: [[:pointer, :uint32], :int],
  JPH_BodyInterface_GetMotionType: [[:pointer, :uint32], :int],
  JPH_BodyInterface_GetObjectLayer: [[:pointer, :uint32], :uint32],
  JPH_BodyInterface_GetPointVelocity: [[:pointer, :uint32, :pointer, :pointer], :void],
  JPH_BodyInterface_GetPosition: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_GetPositionAndRotation: [[:pointer, :uint32, :pointer, :pointer], :void],
  JPH_BodyInterface_GetRestitution: [[:pointer, :uint32], :float],
  JPH_BodyInterface_GetRotation: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_GetShape: [[:pointer, :uint32], :pointer],
  JPH_BodyInterface_GetUseManifoldReduction: [[:pointer, :uint32], :bool],
  JPH_BodyInterface_GetUserData: [[:pointer, :uint32], :uint64],
  JPH_BodyInterface_GetWorldTransform: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_InvalidateContactCache: [[:pointer, :uint32], :void],
  JPH_BodyInterface_IsActive: [[:pointer, :uint32], :bool],
  JPH_BodyInterface_IsAdded: [[:pointer, :uint32], :bool],
  JPH_BodyInterface_IsSensor: [[:pointer, :uint32], :bool],
  JPH_BodyInterface_MoveKinematic: [[:pointer, :uint32, :pointer, :pointer, :float], :void],
  JPH_BodyInterface_NotifyShapeChanged: [[:pointer, :uint32, :pointer, :bool, :int], :void],
  JPH_BodyInterface_RemoveAndDestroyBody: [[:pointer, :uint32], :void],
  JPH_BodyInterface_RemoveBody: [[:pointer, :uint32], :void],
  JPH_BodyInterface_ResetSleepTimer: [[:pointer, :uint32], :void],
  JPH_BodyInterface_SetAngularVelocity: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_SetCollisionGroup: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_SetFriction: [[:pointer, :uint32, :float], :void],
  JPH_BodyInterface_SetGravityFactor: [[:pointer, :uint32, :float], :void],
  JPH_BodyInterface_SetIsSensor: [[:pointer, :uint32, :bool], :void],
  JPH_BodyInterface_SetLinearAndAngularVelocity: [[:pointer, :uint32, :pointer, :pointer], :void],
  JPH_BodyInterface_SetLinearVelocity: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyInterface_SetMotionQuality: [[:pointer, :uint32, :int], :void],
  JPH_BodyInterface_SetMotionType: [[:pointer, :uint32, :int, :int], :void],
  JPH_BodyInterface_SetObjectLayer: [[:pointer, :uint32, :uint32], :void],
  JPH_BodyInterface_SetPosition: [[:pointer, :uint32, :pointer, :int], :void],
  JPH_BodyInterface_SetPositionAndRotation: [[:pointer, :uint32, :pointer, :pointer, :int], :void],
  JPH_BodyInterface_SetPositionAndRotationWhenChanged: [[:pointer, :uint32, :pointer, :pointer, :int], :void],
  JPH_BodyInterface_SetPositionRotationAndVelocity: [[:pointer, :uint32, :pointer, :pointer, :pointer, :pointer], :void],
  JPH_BodyInterface_SetRestitution: [[:pointer, :uint32, :float], :void],
  JPH_BodyInterface_SetRotation: [[:pointer, :uint32, :pointer, :int], :void],
  JPH_BodyInterface_SetShape: [[:pointer, :uint32, :pointer, :bool, :int], :void],
  JPH_BodyInterface_SetUseManifoldReduction: [[:pointer, :uint32, :bool], :void],
  JPH_BodyInterface_SetUserData: [[:pointer, :uint32, :uint64], :void],
  JPH_BodyInterface_UnassignBodyID: [[:pointer, :uint32], :pointer],
  JPH_BodyLockInterface_LockMultiRead: [[:pointer, :pointer, :uint32], :pointer],
  JPH_BodyLockInterface_LockMultiWrite: [[:pointer, :pointer, :uint32], :pointer],
  JPH_BodyLockInterface_LockRead: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyLockInterface_LockWrite: [[:pointer, :uint32, :pointer], :void],
  JPH_BodyLockInterface_UnlockRead: [[:pointer, :pointer], :void],
  JPH_BodyLockInterface_UnlockWrite: [[:pointer, :pointer], :void],
  JPH_BodyLockMultiRead_Destroy: [[:pointer], :void],
  JPH_BodyLockMultiRead_GetBody: [[:pointer, :uint32], :pointer],
  JPH_BodyLockMultiWrite_Destroy: [[:pointer], :void],
  JPH_BodyLockMultiWrite_GetBody: [[:pointer, :uint32], :pointer],
  JPH_Body_AddAngularImpulse: [[:pointer, :pointer], :void],
  JPH_Body_AddForce: [[:pointer, :pointer], :void],
  JPH_Body_AddForceAtPosition: [[:pointer, :pointer, :pointer], :void],
  JPH_Body_AddImpulse: [[:pointer, :pointer], :void],
  JPH_Body_AddImpulseAtPosition: [[:pointer, :pointer, :pointer], :void],
  JPH_Body_AddTorque: [[:pointer, :pointer], :void],
  JPH_Body_ApplyBuoyancyImpulse: [[:pointer, :pointer, :pointer, :float, :float, :float, :pointer, :pointer, :float], :bool],
  JPH_Body_CanBeKinematicOrDynamic: [[:pointer], :bool],
  JPH_Body_GetAccumulatedForce: [[:pointer, :pointer], :void],
  JPH_Body_GetAccumulatedTorque: [[:pointer, :pointer], :void],
  JPH_Body_GetAllowSleeping: [[:pointer], :bool],
  JPH_Body_GetAngularVelocity: [[:pointer, :pointer], :void],
  JPH_Body_GetApplyGyroscopicForce: [[:pointer], :bool],
  JPH_Body_GetBodyType: [[:pointer], :int],
  JPH_Body_GetBroadPhaseLayer: [[:pointer], :uint8],
  JPH_Body_GetCenterOfMassPosition: [[:pointer, :pointer], :void],
  JPH_Body_GetCenterOfMassTransform: [[:pointer, :pointer], :void],
  JPH_Body_GetCollideKinematicVsNonDynamic: [[:pointer], :bool],
  JPH_Body_GetCollisionGroup: [[:pointer, :pointer], :void],
  JPH_Body_GetEnhancedInternalEdgeRemoval: [[:pointer], :bool],
  JPH_Body_GetEnhancedInternalEdgeRemovalWithBody: [[:pointer, :pointer], :bool],
  JPH_Body_GetFixedToWorldBody: [[], :pointer],
  JPH_Body_GetFriction: [[:pointer], :float],
  JPH_Body_GetID: [[:pointer], :uint32],
  JPH_Body_GetInverseCenterOfMassTransform: [[:pointer, :pointer], :void],
  JPH_Body_GetInverseInertia: [[:pointer, :pointer], :void],
  JPH_Body_GetLinearVelocity: [[:pointer, :pointer], :void],
  JPH_Body_GetMotionProperties: [[:pointer], :pointer],
  JPH_Body_GetMotionPropertiesUnchecked: [[:pointer], :pointer],
  JPH_Body_GetMotionType: [[:pointer], :int],
  JPH_Body_GetObjectLayer: [[:pointer], :uint32],
  JPH_Body_GetPointVelocity: [[:pointer, :pointer, :pointer], :void],
  JPH_Body_GetPointVelocityCOM: [[:pointer, :pointer, :pointer], :void],
  JPH_Body_GetPosition: [[:pointer, :pointer], :void],
  JPH_Body_GetRestitution: [[:pointer], :float],
  JPH_Body_GetRotation: [[:pointer, :pointer], :void],
  JPH_Body_GetShape: [[:pointer], :pointer],
  JPH_Body_GetSoftBodyVertexCount: [[:pointer], :uint32],
  JPH_Body_GetSoftBodyVertexPosition: [[:pointer, :uint32, :pointer], :void],
  JPH_Body_GetSoftBodyVertexPositions: [[:pointer, :pointer, :uint32, :pointer], :void],
  JPH_Body_GetUseManifoldReduction: [[:pointer], :bool],
  JPH_Body_GetUseManifoldReductionWithBody: [[:pointer, :pointer], :bool],
  JPH_Body_GetUserData: [[:pointer], :uint64],
  JPH_Body_GetWorldSpaceBounds: [[:pointer, :pointer], :void],
  JPH_Body_GetWorldSpaceSurfaceNormal: [[:pointer, :uint32, :pointer, :pointer], :void],
  JPH_Body_GetWorldTransform: [[:pointer, :pointer], :void],
  JPH_Body_IsActive: [[:pointer], :bool],
  JPH_Body_IsCollisionCacheInvalid: [[:pointer], :bool],
  JPH_Body_IsDynamic: [[:pointer], :bool],
  JPH_Body_IsInBroadPhase: [[:pointer], :bool],
  JPH_Body_IsKinematic: [[:pointer], :bool],
  JPH_Body_IsRigidBody: [[:pointer], :bool],
  JPH_Body_IsSensor: [[:pointer], :bool],
  JPH_Body_IsSoftBody: [[:pointer], :bool],
  JPH_Body_IsStatic: [[:pointer], :bool],
  JPH_Body_MoveKinematic: [[:pointer, :pointer, :pointer, :float], :void],
  JPH_Body_ResetForce: [[:pointer], :void],
  JPH_Body_ResetMotion: [[:pointer], :void],
  JPH_Body_ResetSleepTimer: [[:pointer], :void],
  JPH_Body_ResetTorque: [[:pointer], :void],
  JPH_Body_SetAllowSleeping: [[:pointer, :bool], :void],
  JPH_Body_SetAngularVelocity: [[:pointer, :pointer], :void],
  JPH_Body_SetAngularVelocityClamped: [[:pointer, :pointer], :void],
  JPH_Body_SetApplyGyroscopicForce: [[:pointer, :bool], :void],
  JPH_Body_SetCollideKinematicVsNonDynamic: [[:pointer, :bool], :void],
  JPH_Body_SetCollisionGroup: [[:pointer, :pointer], :void],
  JPH_Body_SetEnhancedInternalEdgeRemoval: [[:pointer, :bool], :void],
  JPH_Body_SetFriction: [[:pointer, :float], :void],
  JPH_Body_SetIsSensor: [[:pointer, :bool], :void],
  JPH_Body_SetLinearVelocity: [[:pointer, :pointer], :void],
  JPH_Body_SetLinearVelocityClamped: [[:pointer, :pointer], :void],
  JPH_Body_SetMotionType: [[:pointer, :int], :void],
  JPH_Body_SetRestitution: [[:pointer, :float], :void],
  JPH_Body_SetUseManifoldReduction: [[:pointer, :bool], :void],
  JPH_Body_SetUserData: [[:pointer, :uint64], :void],
  JPH_BoxShapeSettings_Create: [[:pointer, :float], :pointer],
  JPH_BoxShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_BoxShape_Create: [[:pointer, :float], :pointer],
  JPH_BoxShape_GetConvexRadius: [[:pointer], :float],
  JPH_BoxShape_GetHalfExtent: [[:pointer, :pointer], :void],
  JPH_BroadPhaseLayerFilter_Create: [[:pointer], :pointer],
  JPH_BroadPhaseLayerFilter_Destroy: [[:pointer], :void],
  JPH_BroadPhaseLayerFilter_SetProcs: [[:pointer], :void],
  JPH_BroadPhaseLayerInterfaceMask_ConfigureLayer: [[:pointer, :uint8, :uint32, :uint32], :void],
  JPH_BroadPhaseLayerInterfaceMask_Create: [[:uint32], :pointer],
  JPH_BroadPhaseLayerInterfaceTable_Create: [[:uint32, :uint32], :pointer],
  JPH_BroadPhaseLayerInterfaceTable_MapObjectToBroadPhaseLayer: [[:pointer, :uint32, :uint8], :void],
  JPH_BroadPhaseLayerInterface_Destroy: [[:pointer], :void],
  JPH_BroadPhaseQuery_CastRay: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_BroadPhaseQuery_CastRay2: [[:pointer, :pointer, :pointer, :int, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_BroadPhaseQuery_CollideAABox: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_BroadPhaseQuery_CollidePoint: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_BroadPhaseQuery_CollideSphere: [[:pointer, :pointer, :float, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_CapsuleShapeSettings_Create: [[:float, :float], :pointer],
  JPH_CapsuleShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_CapsuleShape_Create: [[:float, :float], :pointer],
  JPH_CapsuleShape_GetHalfHeightOfCylinder: [[:pointer], :float],
  JPH_CapsuleShape_GetRadius: [[:pointer], :float],
  JPH_CharacterBase_Destroy: [[:pointer], :void],
  JPH_CharacterBase_GetCosMaxSlopeAngle: [[:pointer], :float],
  JPH_CharacterBase_GetGroundBodyId: [[:pointer], :uint32],
  JPH_CharacterBase_GetGroundMaterial: [[:pointer], :pointer],
  JPH_CharacterBase_GetGroundNormal: [[:pointer, :pointer], :void],
  JPH_CharacterBase_GetGroundPosition: [[:pointer, :pointer], :void],
  JPH_CharacterBase_GetGroundState: [[:pointer], :int],
  JPH_CharacterBase_GetGroundSubShapeId: [[:pointer], :uint32],
  JPH_CharacterBase_GetGroundUserData: [[:pointer], :uint64],
  JPH_CharacterBase_GetGroundVelocity: [[:pointer, :pointer], :void],
  JPH_CharacterBase_GetShape: [[:pointer], :pointer],
  JPH_CharacterBase_GetUp: [[:pointer, :pointer], :void],
  JPH_CharacterBase_IsSlopeTooSteep: [[:pointer, :pointer], :bool],
  JPH_CharacterBase_IsSupported: [[:pointer], :bool],
  JPH_CharacterBase_SetMaxSlopeAngle: [[:pointer, :float], :void],
  JPH_CharacterBase_SetUp: [[:pointer, :pointer], :void],
  JPH_CharacterContactListener_Create: [[:pointer], :pointer],
  JPH_CharacterContactListener_Destroy: [[:pointer], :void],
  JPH_CharacterContactListener_SetProcs: [[:pointer], :void],
  JPH_CharacterSettings_Init: [[:pointer], :void],
  JPH_CharacterVirtualSettings_Init: [[:pointer], :void],
  JPH_CharacterVirtual_CanWalkStairs: [[:pointer, :pointer], :bool],
  JPH_CharacterVirtual_CancelVelocityTowardsSteepSlopes: [[:pointer, :pointer, :pointer], :void],
  JPH_CharacterVirtual_Create: [[:pointer, :pointer, :pointer, :uint64, :pointer], :pointer],
  JPH_CharacterVirtual_ExtendedUpdate: [[:pointer, :float, :pointer, :uint32, :pointer, :pointer, :pointer], :void],
  JPH_CharacterVirtual_FinishTrackingContactChanges: [[:pointer], :void],
  JPH_CharacterVirtual_GetActiveContact: [[:pointer, :uint32, :pointer], :void],
  JPH_CharacterVirtual_GetCenterOfMassTransform: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_GetCharacterPadding: [[:pointer], :float],
  JPH_CharacterVirtual_GetEnhancedInternalEdgeRemoval: [[:pointer], :bool],
  JPH_CharacterVirtual_GetHitReductionCosMaxAngle: [[:pointer], :float],
  JPH_CharacterVirtual_GetID: [[:pointer], :uint32],
  JPH_CharacterVirtual_GetInnerBodyID: [[:pointer], :uint32],
  JPH_CharacterVirtual_GetLinearVelocity: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_GetMass: [[:pointer], :float],
  JPH_CharacterVirtual_GetMaxHitsExceeded: [[:pointer], :bool],
  JPH_CharacterVirtual_GetMaxNumHits: [[:pointer], :uint32],
  JPH_CharacterVirtual_GetMaxStrength: [[:pointer], :float],
  JPH_CharacterVirtual_GetNumActiveContacts: [[:pointer], :uint32],
  JPH_CharacterVirtual_GetPenetrationRecoverySpeed: [[:pointer], :float],
  JPH_CharacterVirtual_GetPosition: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_GetRotation: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_GetShapeOffset: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_GetUserData: [[:pointer], :uint64],
  JPH_CharacterVirtual_GetWorldTransform: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_HasCollidedWith: [[:pointer, :uint32], :bool],
  JPH_CharacterVirtual_HasCollidedWithBody: [[:pointer, :uint32], :bool],
  JPH_CharacterVirtual_HasCollidedWithCharacter: [[:pointer, :pointer], :bool],
  JPH_CharacterVirtual_RefreshContacts: [[:pointer, :uint32, :pointer, :pointer, :pointer], :void],
  JPH_CharacterVirtual_SetCharacterVsCharacterCollision: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_SetEnhancedInternalEdgeRemoval: [[:pointer, :bool], :void],
  JPH_CharacterVirtual_SetHitReductionCosMaxAngle: [[:pointer, :float], :void],
  JPH_CharacterVirtual_SetInnerBodyShape: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_SetLinearVelocity: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_SetListener: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_SetMass: [[:pointer, :float], :void],
  JPH_CharacterVirtual_SetMaxNumHits: [[:pointer, :uint32], :void],
  JPH_CharacterVirtual_SetMaxStrength: [[:pointer, :float], :void],
  JPH_CharacterVirtual_SetPenetrationRecoverySpeed: [[:pointer, :float], :void],
  JPH_CharacterVirtual_SetPosition: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_SetRotation: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_SetShape: [[:pointer, :pointer, :float, :uint32, :pointer, :pointer, :pointer], :bool],
  JPH_CharacterVirtual_SetShapeOffset: [[:pointer, :pointer], :void],
  JPH_CharacterVirtual_SetUserData: [[:pointer, :uint64], :void],
  JPH_CharacterVirtual_StartTrackingContactChanges: [[:pointer], :void],
  JPH_CharacterVirtual_StickToFloor: [[:pointer, :pointer, :uint32, :pointer, :pointer, :pointer], :bool],
  JPH_CharacterVirtual_Update: [[:pointer, :float, :uint32, :pointer, :pointer, :pointer], :void],
  JPH_CharacterVirtual_UpdateGroundVelocity: [[:pointer], :void],
  JPH_CharacterVirtual_WalkStairs: [[:pointer, :float, :pointer, :pointer, :pointer, :pointer, :uint32, :pointer, :pointer, :pointer], :bool],
  JPH_CharacterVsCharacterCollisionSimple_AddCharacter: [[:pointer, :pointer], :void],
  JPH_CharacterVsCharacterCollisionSimple_RemoveCharacter: [[:pointer, :pointer], :void],
  JPH_CharacterVsCharacterCollision_Create: [[:pointer], :pointer],
  JPH_CharacterVsCharacterCollision_CreateSimple: [[], :pointer],
  JPH_CharacterVsCharacterCollision_Destroy: [[:pointer], :void],
  JPH_CharacterVsCharacterCollision_SetProcs: [[:pointer], :void],
  JPH_Character_Activate: [[:pointer, :bool], :void],
  JPH_Character_AddImpulse: [[:pointer, :pointer, :bool], :void],
  JPH_Character_AddLinearVelocity: [[:pointer, :pointer, :bool], :void],
  JPH_Character_AddToPhysicsSystem: [[:pointer, :int, :bool], :void],
  JPH_Character_Create: [[:pointer, :pointer, :pointer, :uint64, :pointer], :pointer],
  JPH_Character_GetBodyID: [[:pointer], :uint32],
  JPH_Character_GetCenterOfMassPosition: [[:pointer, :pointer, :bool], :void],
  JPH_Character_GetLayer: [[:pointer], :uint32],
  JPH_Character_GetLinearVelocity: [[:pointer, :pointer], :void],
  JPH_Character_GetPosition: [[:pointer, :pointer, :bool], :void],
  JPH_Character_GetPositionAndRotation: [[:pointer, :pointer, :pointer, :bool], :void],
  JPH_Character_GetRotation: [[:pointer, :pointer, :bool], :void],
  JPH_Character_GetWorldTransform: [[:pointer, :pointer, :bool], :void],
  JPH_Character_PostSimulation: [[:pointer, :float, :bool], :void],
  JPH_Character_RemoveFromPhysicsSystem: [[:pointer, :bool], :void],
  JPH_Character_SetLayer: [[:pointer, :uint32, :bool], :void],
  JPH_Character_SetLinearAndAngularVelocity: [[:pointer, :pointer, :pointer, :bool], :void],
  JPH_Character_SetLinearVelocity: [[:pointer, :pointer, :bool], :void],
  JPH_Character_SetPosition: [[:pointer, :pointer, :int, :bool], :void],
  JPH_Character_SetPositionAndRotation: [[:pointer, :pointer, :pointer, :int, :bool], :void],
  JPH_Character_SetRotation: [[:pointer, :pointer, :int, :bool], :void],
  JPH_Character_SetShape: [[:pointer, :pointer, :float, :bool], :void],
  JPH_CollideShapeResult_FreeMembers: [[:pointer], :void],
  JPH_CollideShapeSettings_Init: [[:pointer], :void],
  JPH_CollisionDispatch_CastShapeVsShapeLocalSpace: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_CollisionDispatch_CastShapeVsShapeWorldSpace: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_CollisionDispatch_CollideShapeVsShape: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_CollisionEstimationResult_FreeMembers: [[:pointer], :void],
  JPH_CompoundShapeSettings_AddShape: [[:pointer, :pointer, :pointer, :pointer, :uint32], :void],
  JPH_CompoundShapeSettings_AddShape2: [[:pointer, :pointer, :pointer, :pointer, :uint32], :void],
  JPH_CompoundShape_GetNumSubShapes: [[:pointer], :uint32],
  JPH_CompoundShape_GetSubShape: [[:pointer, :uint32, :pointer, :pointer, :pointer, :pointer], :void],
  JPH_CompoundShape_GetSubShapeIndexFromID: [[:pointer, :uint32, :pointer], :uint32],
  JPH_ConeConstraintSettings_Init: [[:pointer], :void],
  JPH_ConeConstraint_Create: [[:pointer, :pointer, :pointer], :pointer],
  JPH_ConeConstraint_GetCosHalfConeAngle: [[:pointer], :float],
  JPH_ConeConstraint_GetSettings: [[:pointer, :pointer], :void],
  JPH_ConeConstraint_GetTotalLambdaPosition: [[:pointer, :pointer], :void],
  JPH_ConeConstraint_GetTotalLambdaRotation: [[:pointer], :float],
  JPH_ConeConstraint_SetHalfConeAngle: [[:pointer, :float], :void],
  JPH_Constraint_Destroy: [[:pointer], :void],
  JPH_Constraint_GetConstraintPriority: [[:pointer], :uint32],
  JPH_Constraint_GetEnabled: [[:pointer], :bool],
  JPH_Constraint_GetNumPositionStepsOverride: [[:pointer], :uint32],
  JPH_Constraint_GetNumVelocityStepsOverride: [[:pointer], :uint32],
  JPH_Constraint_GetSubType: [[:pointer], :int],
  JPH_Constraint_GetType: [[:pointer], :int],
  JPH_Constraint_GetUserData: [[:pointer], :uint64],
  JPH_Constraint_IsActive: [[:pointer], :bool],
  JPH_Constraint_NotifyShapeChanged: [[:pointer, :uint32, :pointer], :void],
  JPH_Constraint_ResetWarmStart: [[:pointer], :void],
  JPH_Constraint_SetConstraintPriority: [[:pointer, :uint32], :void],
  JPH_Constraint_SetEnabled: [[:pointer, :bool], :void],
  JPH_Constraint_SetNumPositionStepsOverride: [[:pointer, :uint32], :void],
  JPH_Constraint_SetNumVelocityStepsOverride: [[:pointer, :uint32], :void],
  JPH_Constraint_SetUserData: [[:pointer, :uint64], :void],
  JPH_Constraint_SetupVelocityConstraint: [[:pointer, :float], :void],
  JPH_Constraint_SolvePositionConstraint: [[:pointer, :float, :float], :bool],
  JPH_Constraint_SolveVelocityConstraint: [[:pointer, :float], :bool],
  JPH_Constraint_WarmStartVelocityConstraint: [[:pointer, :float], :void],
  JPH_ContactListener_Create: [[:pointer], :pointer],
  JPH_ContactListener_Destroy: [[:pointer], :void],
  JPH_ContactListener_SetProcs: [[:pointer], :void],
  JPH_ContactManifold_GetPenetrationDepth: [[:pointer], :float],
  JPH_ContactManifold_GetPointCount: [[:pointer], :uint32],
  JPH_ContactManifold_GetSubShapeID1: [[:pointer], :uint32],
  JPH_ContactManifold_GetSubShapeID2: [[:pointer], :uint32],
  JPH_ContactManifold_GetWorldSpaceContactPointOn1: [[:pointer, :uint32, :pointer], :void],
  JPH_ContactManifold_GetWorldSpaceContactPointOn2: [[:pointer, :uint32, :pointer], :void],
  JPH_ContactManifold_GetWorldSpaceNormal: [[:pointer, :pointer], :void],
  JPH_ConvexHullShapeSettings_Create: [[:pointer, :uint32, :float], :pointer],
  JPH_ConvexHullShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_ConvexHullShape_GetFaceVertices: [[:pointer, :uint32, :uint32, :pointer], :uint32],
  JPH_ConvexHullShape_GetNumFaces: [[:pointer], :uint32],
  JPH_ConvexHullShape_GetNumPoints: [[:pointer], :uint32],
  JPH_ConvexHullShape_GetNumVerticesInFace: [[:pointer, :uint32], :uint32],
  JPH_ConvexHullShape_GetPoint: [[:pointer, :uint32, :pointer], :void],
  JPH_ConvexShapeSettings_GetDensity: [[:pointer], :float],
  JPH_ConvexShapeSettings_SetDensity: [[:pointer, :float], :void],
  JPH_ConvexShape_GetDensity: [[:pointer], :float],
  JPH_ConvexShape_SetDensity: [[:pointer, :float], :void],
  JPH_CylinderShapeSettings_Create: [[:float, :float, :float], :pointer],
  JPH_CylinderShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_CylinderShape_Create: [[:float, :float], :pointer],
  JPH_CylinderShape_GetHalfHeight: [[:pointer], :float],
  JPH_CylinderShape_GetRadius: [[:pointer], :float],
  JPH_DebugRenderer_Create: [[:pointer], :pointer],
  JPH_DebugRenderer_Destroy: [[:pointer], :void],
  JPH_DebugRenderer_DrawArrow: [[:pointer, :pointer, :pointer, :uint32, :float], :void],
  JPH_DebugRenderer_DrawBox: [[:pointer, :pointer, :uint32, :int, :int], :void],
  JPH_DebugRenderer_DrawBox2: [[:pointer, :pointer, :pointer, :uint32, :int, :int], :void],
  JPH_DebugRenderer_DrawCapsule: [[:pointer, :pointer, :float, :float, :uint32, :int, :int], :void],
  JPH_DebugRenderer_DrawCoordinateSystem: [[:pointer, :pointer, :float], :void],
  JPH_DebugRenderer_DrawCylinder: [[:pointer, :pointer, :float, :float, :uint32, :int, :int], :void],
  JPH_DebugRenderer_DrawLine: [[:pointer, :pointer, :pointer, :uint32], :void],
  JPH_DebugRenderer_DrawMarker: [[:pointer, :pointer, :uint32, :float], :void],
  JPH_DebugRenderer_DrawOpenCone: [[:pointer, :pointer, :pointer, :pointer, :float, :float, :uint32, :int, :int], :void],
  JPH_DebugRenderer_DrawPie: [[:pointer, :pointer, :float, :pointer, :pointer, :float, :float, :uint32, :int, :int], :void],
  JPH_DebugRenderer_DrawPlane: [[:pointer, :pointer, :pointer, :uint32, :float], :void],
  JPH_DebugRenderer_DrawSphere: [[:pointer, :pointer, :float, :uint32, :int, :int], :void],
  JPH_DebugRenderer_DrawSwingConeLimits: [[:pointer, :pointer, :float, :float, :float, :uint32, :int, :int], :void],
  JPH_DebugRenderer_DrawSwingPyramidLimits: [[:pointer, :pointer, :float, :float, :float, :float, :float, :uint32, :int, :int], :void],
  JPH_DebugRenderer_DrawTaperedCylinder: [[:pointer, :pointer, :float, :float, :float, :float, :uint32, :int, :int], :void],
  JPH_DebugRenderer_DrawTriangle: [[:pointer, :pointer, :pointer, :pointer, :uint32, :int], :void],
  JPH_DebugRenderer_DrawUnitSphere: [[:pointer, Mat4.by_value, :uint32, :int, :int], :void],
  JPH_DebugRenderer_DrawWireBox: [[:pointer, :pointer, :uint32], :void],
  JPH_DebugRenderer_DrawWireBox2: [[:pointer, :pointer, :pointer, :uint32], :void],
  JPH_DebugRenderer_DrawWireSphere: [[:pointer, :pointer, :float, :uint32, :int32], :void],
  JPH_DebugRenderer_DrawWireTriangle: [[:pointer, :pointer, :pointer, :pointer, :uint32], :void],
  JPH_DebugRenderer_DrawWireUnitSphere: [[:pointer, :pointer, :uint32, :int32], :void],
  JPH_DebugRenderer_NextFrame: [[:pointer], :void],
  JPH_DebugRenderer_SetCameraPos: [[:pointer, :pointer], :void],
  JPH_DebugRenderer_SetProcs: [[:pointer], :void],
  JPH_DecoratedShape_GetInnerShape: [[:pointer], :pointer],
  JPH_DistanceConstraintSettings_Init: [[:pointer], :void],
  JPH_DistanceConstraint_Create: [[:pointer, :pointer, :pointer], :pointer],
  JPH_DistanceConstraint_GetLimitsSpringSettings: [[:pointer, :pointer], :void],
  JPH_DistanceConstraint_GetMaxDistance: [[:pointer], :float],
  JPH_DistanceConstraint_GetMinDistance: [[:pointer], :float],
  JPH_DistanceConstraint_GetSettings: [[:pointer, :pointer], :void],
  JPH_DistanceConstraint_GetTotalLambdaPosition: [[:pointer], :float],
  JPH_DistanceConstraint_SetDistance: [[:pointer, :float, :float], :void],
  JPH_DistanceConstraint_SetLimitsSpringSettings: [[:pointer, :pointer], :void],
  JPH_DrawSettings_InitDefault: [[:pointer], :void],
  JPH_EmptyShapeSettings_Create: [[:pointer], :pointer],
  JPH_EmptyShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_EstimateCollisionResponse: [[:pointer, :pointer, :pointer, :float, :float, :float, :uint32, :pointer], :void],
  JPH_FixedConstraintSettings_Init: [[:pointer], :void],
  JPH_FixedConstraint_Create: [[:pointer, :pointer, :pointer], :pointer],
  JPH_FixedConstraint_GetSettings: [[:pointer, :pointer], :void],
  JPH_FixedConstraint_GetTotalLambdaPosition: [[:pointer, :pointer], :void],
  JPH_FixedConstraint_GetTotalLambdaRotation: [[:pointer, :pointer], :void],
  JPH_GearConstraintSettings_Init: [[:pointer], :void],
  JPH_GearConstraint_Create: [[:pointer, :pointer, :pointer], :pointer],
  JPH_GearConstraint_GetSettings: [[:pointer, :pointer], :void],
  JPH_GearConstraint_GetTotalLambda: [[:pointer], :float],
  JPH_GearConstraint_SetConstraints: [[:pointer, :pointer, :pointer], :void],
  JPH_GroupFilterTable_Create: [[:uint32], :pointer],
  JPH_GroupFilterTable_DisableCollision: [[:pointer, :uint32, :uint32], :void],
  JPH_GroupFilterTable_EnableCollision: [[:pointer, :uint32, :uint32], :void],
  JPH_GroupFilterTable_IsCollisionEnabled: [[:pointer, :uint32, :uint32], :bool],
  JPH_GroupFilter_CanCollide: [[:pointer, :pointer, :pointer], :bool],
  JPH_GroupFilter_Destroy: [[:pointer], :void],
  JPH_HeightFieldShapeSettings_CalculateBitsPerSampleForError: [[:pointer, :float], :uint32],
  JPH_HeightFieldShapeSettings_Create: [[:pointer, :pointer, :pointer, :uint32, :pointer], :pointer],
  JPH_HeightFieldShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_HeightFieldShapeSettings_DetermineMinAndMaxSample: [[:pointer, :pointer, :pointer, :pointer], :void],
  JPH_HeightFieldShapeSettings_GetActiveEdgeCosThresholdAngle: [[:pointer], :float],
  JPH_HeightFieldShapeSettings_GetBitsPerSample: [[:pointer], :uint32],
  JPH_HeightFieldShapeSettings_GetBlockSize: [[:pointer], :uint32],
  JPH_HeightFieldShapeSettings_GetMaxHeightValue: [[:pointer], :float],
  JPH_HeightFieldShapeSettings_GetMinHeightValue: [[:pointer], :float],
  JPH_HeightFieldShapeSettings_GetOffset: [[:pointer, :pointer], :void],
  JPH_HeightFieldShapeSettings_GetSampleCount: [[:pointer], :uint32],
  JPH_HeightFieldShapeSettings_GetScale: [[:pointer, :pointer], :void],
  JPH_HeightFieldShapeSettings_SetActiveEdgeCosThresholdAngle: [[:pointer, :float], :void],
  JPH_HeightFieldShapeSettings_SetBitsPerSample: [[:pointer, :uint32], :void],
  JPH_HeightFieldShapeSettings_SetBlockSize: [[:pointer, :uint32], :void],
  JPH_HeightFieldShapeSettings_SetMaxHeightValue: [[:pointer, :float], :void],
  JPH_HeightFieldShapeSettings_SetMinHeightValue: [[:pointer, :float], :void],
  JPH_HeightFieldShapeSettings_SetOffset: [[:pointer, :pointer], :void],
  JPH_HeightFieldShapeSettings_SetSampleCount: [[:pointer, :uint32], :void],
  JPH_HeightFieldShapeSettings_SetScale: [[:pointer, :pointer], :void],
  JPH_HeightFieldShape_GetBlockSize: [[:pointer], :uint32],
  JPH_HeightFieldShape_GetMaterial: [[:pointer, :uint32, :uint32], :pointer],
  JPH_HeightFieldShape_GetMaxHeightValue: [[:pointer], :float],
  JPH_HeightFieldShape_GetMinHeightValue: [[:pointer], :float],
  JPH_HeightFieldShape_GetPosition: [[:pointer, :uint32, :uint32, :pointer], :void],
  JPH_HeightFieldShape_GetSampleCount: [[:pointer], :uint32],
  JPH_HeightFieldShape_IsNoCollision: [[:pointer, :uint32, :uint32], :bool],
  JPH_HeightFieldShape_ProjectOntoSurface: [[:pointer, :pointer, :pointer, :pointer], :bool],
  JPH_HingeConstraintSettings_Init: [[:pointer], :void],
  JPH_HingeConstraint_Create: [[:pointer, :pointer, :pointer], :pointer],
  JPH_HingeConstraint_GetCurrentAngle: [[:pointer], :float],
  JPH_HingeConstraint_GetLimitsMax: [[:pointer], :float],
  JPH_HingeConstraint_GetLimitsMin: [[:pointer], :float],
  JPH_HingeConstraint_GetLimitsSpringSettings: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_GetLocalSpaceHingeAxis1: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_GetLocalSpaceHingeAxis2: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_GetLocalSpaceNormalAxis1: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_GetLocalSpaceNormalAxis2: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_GetLocalSpacePoint1: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_GetLocalSpacePoint2: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_GetMaxFrictionTorque: [[:pointer], :float],
  JPH_HingeConstraint_GetMotorSettings: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_GetMotorState: [[:pointer], :int],
  JPH_HingeConstraint_GetSettings: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_GetTargetAngle: [[:pointer], :float],
  JPH_HingeConstraint_GetTargetAngularVelocity: [[:pointer], :float],
  JPH_HingeConstraint_GetTotalLambdaMotor: [[:pointer], :float],
  JPH_HingeConstraint_GetTotalLambdaPosition: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_GetTotalLambdaRotation: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_GetTotalLambdaRotationLimits: [[:pointer], :float],
  JPH_HingeConstraint_HasLimits: [[:pointer], :bool],
  JPH_HingeConstraint_SetLimits: [[:pointer, :float, :float], :void],
  JPH_HingeConstraint_SetLimitsSpringSettings: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_SetMaxFrictionTorque: [[:pointer, :float], :void],
  JPH_HingeConstraint_SetMotorSettings: [[:pointer, :pointer], :void],
  JPH_HingeConstraint_SetMotorState: [[:pointer, :int], :void],
  JPH_HingeConstraint_SetTargetAngle: [[:pointer, :float], :void],
  JPH_HingeConstraint_SetTargetAngularVelocity: [[:pointer, :float], :void],
  JPH_Init: [[], :bool],
  JPH_JobSystemCallback_Create: [[:pointer], :pointer],
  JPH_JobSystemThreadPool_Create: [[:pointer], :pointer],
  JPH_JobSystem_Destroy: [[:pointer], :void],
  JPH_LinearCurve_AddPoint: [[:pointer, :float, :float], :void],
  JPH_LinearCurve_Clear: [[:pointer], :void],
  JPH_LinearCurve_Create: [[], :pointer],
  JPH_LinearCurve_Destroy: [[:pointer], :void],
  JPH_LinearCurve_GetMaxX: [[:pointer], :float],
  JPH_LinearCurve_GetMinX: [[:pointer], :float],
  JPH_LinearCurve_GetPoint: [[:pointer, :uint32, :pointer], :void],
  JPH_LinearCurve_GetPointCount: [[:pointer], :uint32],
  JPH_LinearCurve_GetPoints: [[:pointer, :pointer, :pointer], :void],
  JPH_LinearCurve_GetValue: [[:pointer, :float], :float],
  JPH_LinearCurve_Reserve: [[:pointer, :uint32], :void],
  JPH_LinearCurve_Sort: [[:pointer], :void],
  JPH_MassProperties_DecomposePrincipalMomentsOfInertia: [[:pointer, :pointer, :pointer], :void],
  JPH_MassProperties_GetEquivalentSolidBoxSize: [[:float, :pointer, :pointer], :void],
  JPH_MassProperties_ScaleToMass: [[:pointer, :float], :void],
  JPH_Mat4_Add: [[:pointer, :pointer, :pointer], :void],
  JPH_Mat4_GetAxisX: [[:pointer, :pointer], :void],
  JPH_Mat4_GetAxisY: [[:pointer, :pointer], :void],
  JPH_Mat4_GetAxisZ: [[:pointer, :pointer], :void],
  JPH_Mat4_GetQuaternion: [[:pointer, :pointer], :void],
  JPH_Mat4_GetTranslation: [[:pointer, :pointer], :void],
  JPH_Mat4_Identity: [[:pointer], :void],
  JPH_Mat4_InverseRotationTranslation: [[:pointer, :pointer, :pointer], :void],
  JPH_Mat4_Inversed: [[:pointer, :pointer], :void],
  JPH_Mat4_Multiply: [[:pointer, :pointer, :pointer], :void],
  JPH_Mat4_MultiplyScalar: [[:pointer, :float, :pointer], :void],
  JPH_Mat4_Rotation: [[:pointer, :pointer], :void],
  JPH_Mat4_Rotation2: [[:pointer, :pointer, :float], :void],
  JPH_Mat4_RotationTranslation: [[:pointer, :pointer, :pointer], :void],
  JPH_Mat4_Scale: [[:pointer, :pointer], :void],
  JPH_Mat4_Subtract: [[:pointer, :pointer, :pointer], :void],
  JPH_Mat4_Translation: [[:pointer, :pointer], :void],
  JPH_Mat4_Transposed: [[:pointer, :pointer], :void],
  JPH_Mat4_Zero: [[:pointer], :void],
  JPH_Math_Cos: [[:float], :float],
  JPH_Math_Sin: [[:float], :float],
  JPH_MeshShapeSettings_Create: [[:pointer, :uint32], :pointer],
  JPH_MeshShapeSettings_Create2: [[:pointer, :uint32, :pointer, :uint32], :pointer],
  JPH_MeshShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_MeshShapeSettings_GetActiveEdgeCosThresholdAngle: [[:pointer], :float],
  JPH_MeshShapeSettings_GetBuildQuality: [[:pointer], :int],
  JPH_MeshShapeSettings_GetMaxTrianglesPerLeaf: [[:pointer], :uint32],
  JPH_MeshShapeSettings_GetPerTriangleUserData: [[:pointer], :bool],
  JPH_MeshShapeSettings_Sanitize: [[:pointer], :void],
  JPH_MeshShapeSettings_SetActiveEdgeCosThresholdAngle: [[:pointer, :float], :void],
  JPH_MeshShapeSettings_SetBuildQuality: [[:pointer, :int], :void],
  JPH_MeshShapeSettings_SetMaxTrianglesPerLeaf: [[:pointer, :uint32], :void],
  JPH_MeshShapeSettings_SetPerTriangleUserData: [[:pointer, :bool], :void],
  JPH_MeshShape_GetTriangleUserData: [[:pointer, :uint32], :uint32],
  JPH_MotionProperties_GetAllowedDOFs: [[:pointer], :int],
  JPH_MotionProperties_GetAngularDamping: [[:pointer], :float],
  JPH_MotionProperties_GetInertiaRotation: [[:pointer, :pointer], :void],
  JPH_MotionProperties_GetInverseInertiaDiagonal: [[:pointer, :pointer], :void],
  JPH_MotionProperties_GetInverseMassUnchecked: [[:pointer], :float],
  JPH_MotionProperties_GetLinearDamping: [[:pointer], :float],
  JPH_MotionProperties_ScaleToMass: [[:pointer, :float], :void],
  JPH_MotionProperties_SetAngularDamping: [[:pointer, :float], :void],
  JPH_MotionProperties_SetInverseInertia: [[:pointer, :pointer, :pointer], :void],
  JPH_MotionProperties_SetInverseMass: [[:pointer, :float], :void],
  JPH_MotionProperties_SetLinearDamping: [[:pointer, :float], :void],
  JPH_MotionProperties_SetMassProperties: [[:pointer, :int, :pointer], :void],
  JPH_MotorcycleControllerSettings_Create: [[], :pointer],
  JPH_MotorcycleControllerSettings_GetLeanSmoothingFactor: [[:pointer], :float],
  JPH_MotorcycleControllerSettings_GetLeanSpringConstant: [[:pointer], :float],
  JPH_MotorcycleControllerSettings_GetLeanSpringDamping: [[:pointer], :float],
  JPH_MotorcycleControllerSettings_GetLeanSpringIntegrationCoefficient: [[:pointer], :float],
  JPH_MotorcycleControllerSettings_GetLeanSpringIntegrationCoefficientDecay: [[:pointer], :float],
  JPH_MotorcycleControllerSettings_GetMaxLeanAngle: [[:pointer], :float],
  JPH_MotorcycleControllerSettings_SetLeanSmoothingFactor: [[:pointer, :float], :void],
  JPH_MotorcycleControllerSettings_SetLeanSpringConstant: [[:pointer, :float], :void],
  JPH_MotorcycleControllerSettings_SetLeanSpringDamping: [[:pointer, :float], :void],
  JPH_MotorcycleControllerSettings_SetLeanSpringIntegrationCoefficient: [[:pointer, :float], :void],
  JPH_MotorcycleControllerSettings_SetLeanSpringIntegrationCoefficientDecay: [[:pointer, :float], :void],
  JPH_MotorcycleControllerSettings_SetMaxLeanAngle: [[:pointer, :float], :void],
  JPH_MotorcycleController_EnableLeanController: [[:pointer, :bool], :void],
  JPH_MotorcycleController_EnableLeanSteeringLimit: [[:pointer, :bool], :void],
  JPH_MotorcycleController_GetLeanSmoothingFactor: [[:pointer], :float],
  JPH_MotorcycleController_GetLeanSpringConstant: [[:pointer], :float],
  JPH_MotorcycleController_GetLeanSpringDamping: [[:pointer], :float],
  JPH_MotorcycleController_GetLeanSpringIntegrationCoefficient: [[:pointer], :float],
  JPH_MotorcycleController_GetLeanSpringIntegrationCoefficientDecay: [[:pointer], :float],
  JPH_MotorcycleController_GetWheelBase: [[:pointer], :float],
  JPH_MotorcycleController_IsLeanControllerEnabled: [[:pointer], :bool],
  JPH_MotorcycleController_IsLeanSteeringLimitEnabled: [[:pointer], :bool],
  JPH_MotorcycleController_SetLeanSmoothingFactor: [[:pointer, :float], :void],
  JPH_MotorcycleController_SetLeanSpringConstant: [[:pointer, :float], :void],
  JPH_MotorcycleController_SetLeanSpringDamping: [[:pointer, :float], :void],
  JPH_MotorcycleController_SetLeanSpringIntegrationCoefficient: [[:pointer, :float], :void],
  JPH_MotorcycleController_SetLeanSpringIntegrationCoefficientDecay: [[:pointer, :float], :void],
  JPH_MutableCompoundShapeSettings_Create: [[], :pointer],
  JPH_MutableCompoundShape_AddShape: [[:pointer, :pointer, :pointer, :pointer, :uint32, :uint32], :uint32],
  JPH_MutableCompoundShape_AdjustCenterOfMass: [[:pointer], :void],
  JPH_MutableCompoundShape_Create: [[:pointer], :pointer],
  JPH_MutableCompoundShape_ModifyShape: [[:pointer, :uint32, :pointer, :pointer], :void],
  JPH_MutableCompoundShape_ModifyShape2: [[:pointer, :uint32, :pointer, :pointer, :pointer], :void],
  JPH_MutableCompoundShape_RemoveShape: [[:pointer, :uint32], :void],
  JPH_NarrowPhaseQuery_CastRay: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_NarrowPhaseQuery_CastRay2: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_NarrowPhaseQuery_CastRay3: [[:pointer, :pointer, :pointer, :pointer, :int, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_NarrowPhaseQuery_CastShape: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_NarrowPhaseQuery_CastShape2: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :int, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_NarrowPhaseQuery_CollidePoint: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_NarrowPhaseQuery_CollidePoint2: [[:pointer, :pointer, :int, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_NarrowPhaseQuery_CollideShape: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_NarrowPhaseQuery_CollideShape2: [[:pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :int, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer], :bool],
  JPH_ObjectLayerFilter_Create: [[:pointer], :pointer],
  JPH_ObjectLayerFilter_Destroy: [[:pointer], :void],
  JPH_ObjectLayerFilter_SetProcs: [[:pointer], :void],
  JPH_ObjectLayerPairFilterMask_Create: [[], :pointer],
  JPH_ObjectLayerPairFilterMask_GetGroup: [[:uint32], :uint32],
  JPH_ObjectLayerPairFilterMask_GetMask: [[:uint32], :uint32],
  JPH_ObjectLayerPairFilterMask_GetObjectLayer: [[:uint32, :uint32], :uint32],
  JPH_ObjectLayerPairFilterTable_Create: [[:uint32], :pointer],
  JPH_ObjectLayerPairFilterTable_DisableCollision: [[:pointer, :uint32, :uint32], :void],
  JPH_ObjectLayerPairFilterTable_EnableCollision: [[:pointer, :uint32, :uint32], :void],
  JPH_ObjectLayerPairFilterTable_ShouldCollide: [[:pointer, :uint32, :uint32], :bool],
  JPH_ObjectLayerPairFilter_Destroy: [[:pointer], :void],
  JPH_ObjectVsBroadPhaseLayerFilterMask_Create: [[:pointer], :pointer],
  JPH_ObjectVsBroadPhaseLayerFilterTable_Create: [[:pointer, :uint32, :pointer, :uint32], :pointer],
  JPH_ObjectVsBroadPhaseLayerFilter_Destroy: [[:pointer], :void],
  JPH_OffsetCenterOfMassShapeSettings_Create: [[:pointer, :pointer], :pointer],
  JPH_OffsetCenterOfMassShapeSettings_Create2: [[:pointer, :pointer], :pointer],
  JPH_OffsetCenterOfMassShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_OffsetCenterOfMassShape_Create: [[:pointer, :pointer], :pointer],
  JPH_OffsetCenterOfMassShape_GetOffset: [[:pointer, :pointer], :void],
  JPH_PhysicsMaterial_Create: [[:pointer, :uint32], :pointer],
  JPH_PhysicsMaterial_Destroy: [[:pointer], :void],
  JPH_PhysicsMaterial_GetDebugColor: [[:pointer], :uint32],
  JPH_PhysicsMaterial_GetDebugName: [[:pointer], :pointer],
  JPH_PhysicsStepListener_Create: [[:pointer], :pointer],
  JPH_PhysicsStepListener_Destroy: [[:pointer], :void],
  JPH_PhysicsStepListener_SetProcs: [[:pointer], :void],
  JPH_PhysicsSystem_ActivateBodiesInAABox: [[:pointer, :pointer, :uint32], :void],
  JPH_PhysicsSystem_AddConstraint: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_AddConstraints: [[:pointer, :pointer, :uint32], :void],
  JPH_PhysicsSystem_AddStepListener: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_Create: [[:pointer], :pointer],
  JPH_PhysicsSystem_Destroy: [[:pointer], :void],
  JPH_PhysicsSystem_DrawBodies: [[:pointer, :pointer, :pointer, :pointer], :void],
  JPH_PhysicsSystem_DrawConstraintLimits: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_DrawConstraintReferenceFrame: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_DrawConstraints: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_GetActiveBodies: [[:pointer, :int, :pointer, :uint32], :void],
  JPH_PhysicsSystem_GetActiveBodiesUnsafe: [[:pointer, :int], :pointer],
  JPH_PhysicsSystem_GetBodies: [[:pointer, :pointer, :uint32], :void],
  JPH_PhysicsSystem_GetBodyInterface: [[:pointer], :pointer],
  JPH_PhysicsSystem_GetBodyInterfaceNoLock: [[:pointer], :pointer],
  JPH_PhysicsSystem_GetBodyLockInterface: [[:pointer], :pointer],
  JPH_PhysicsSystem_GetBodyLockInterfaceNoLock: [[:pointer], :pointer],
  JPH_PhysicsSystem_GetBodyPtr: [[:pointer, :uint32], :pointer],
  JPH_PhysicsSystem_GetBroadPhaseQuery: [[:pointer], :pointer],
  JPH_PhysicsSystem_GetConstraints: [[:pointer, :pointer, :uint32], :void],
  JPH_PhysicsSystem_GetGravity: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_GetMaxBodies: [[:pointer], :uint32],
  JPH_PhysicsSystem_GetNarrowPhaseQuery: [[:pointer], :pointer],
  JPH_PhysicsSystem_GetNarrowPhaseQueryNoLock: [[:pointer], :pointer],
  JPH_PhysicsSystem_GetNumActiveBodies: [[:pointer, :int], :uint32],
  JPH_PhysicsSystem_GetNumBodies: [[:pointer], :uint32],
  JPH_PhysicsSystem_GetNumConstraints: [[:pointer], :uint32],
  JPH_PhysicsSystem_GetPhysicsSettings: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_OptimizeBroadPhase: [[:pointer], :void],
  JPH_PhysicsSystem_RemoveConstraint: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_RemoveConstraints: [[:pointer, :pointer, :uint32], :void],
  JPH_PhysicsSystem_RemoveStepListener: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_SetBodyActivationListener: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_SetContactListener: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_SetGravity: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_SetPhysicsSettings: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_SetSimShapeFilter: [[:pointer, :pointer], :void],
  JPH_PhysicsSystem_Update: [[:pointer, :float, :int32, :pointer], :int],
  JPH_PhysicsSystem_Update2: [[:pointer, :float, :int32, :pointer, :pointer], :int],
  JPH_PhysicsSystem_WereBodiesInContact: [[:pointer, :uint32, :uint32], :bool],
  JPH_PlaneShapeSettings_Create: [[:pointer, :pointer, :float], :pointer],
  JPH_PlaneShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_PlaneShape_Create: [[:pointer, :pointer, :float], :pointer],
  JPH_PlaneShape_GetHalfExtent: [[:pointer], :float],
  JPH_PlaneShape_GetPlane: [[:pointer, :pointer], :void],
  JPH_PointConstraintSettings_Init: [[:pointer], :void],
  JPH_PointConstraint_Create: [[:pointer, :pointer, :pointer], :pointer],
  JPH_PointConstraint_GetLocalSpacePoint1: [[:pointer, :pointer], :void],
  JPH_PointConstraint_GetLocalSpacePoint2: [[:pointer, :pointer], :void],
  JPH_PointConstraint_GetSettings: [[:pointer, :pointer], :void],
  JPH_PointConstraint_GetTotalLambdaPosition: [[:pointer, :pointer], :void],
  JPH_PointConstraint_SetPoint1: [[:pointer, :int, :pointer], :void],
  JPH_PointConstraint_SetPoint2: [[:pointer, :int, :pointer], :void],
  JPH_Quat_Add: [[:pointer, :pointer, :pointer], :void],
  JPH_Quat_Conjugated: [[:pointer, :pointer], :void],
  JPH_Quat_DivideScalar: [[:pointer, :float, :pointer], :void],
  JPH_Quat_Dot: [[:pointer, :pointer, :pointer], :void],
  JPH_Quat_FromEulerAngles: [[:pointer, :pointer], :void],
  JPH_Quat_FromTo: [[:pointer, :pointer, :pointer], :void],
  JPH_Quat_GetAxisAngle: [[:pointer, :pointer, :pointer], :void],
  JPH_Quat_GetEulerAngles: [[:pointer, :pointer], :void],
  JPH_Quat_GetPerpendicular: [[:pointer, :pointer], :void],
  JPH_Quat_GetRotationAngle: [[:pointer, :pointer], :float],
  JPH_Quat_GetSwingTwist: [[:pointer, :pointer, :pointer], :void],
  JPH_Quat_GetTwist: [[:pointer, :pointer, :pointer], :void],
  JPH_Quat_InverseRotate: [[:pointer, :pointer, :pointer], :void],
  JPH_Quat_Inversed: [[:pointer, :pointer], :void],
  JPH_Quat_Lerp: [[:pointer, :pointer, :float, :pointer], :void],
  JPH_Quat_Multiply: [[:pointer, :pointer, :pointer], :void],
  JPH_Quat_MultiplyScalar: [[:pointer, :float, :pointer], :void],
  JPH_Quat_Rotate: [[:pointer, :pointer, :pointer], :void],
  JPH_Quat_RotateAxisX: [[:pointer, :pointer], :void],
  JPH_Quat_RotateAxisY: [[:pointer, :pointer], :void],
  JPH_Quat_RotateAxisZ: [[:pointer, :pointer], :void],
  JPH_Quat_Slerp: [[:pointer, :pointer, :float, :pointer], :void],
  JPH_Quat_Subtract: [[:pointer, :pointer, :pointer], :void],
  JPH_RRayCast_GetPointOnRay: [[:pointer, :pointer, :float, :pointer], :void],
  JPH_RagdollSettings_CalculateBodyIndexToConstraintIndex: [[:pointer], :void],
  JPH_RagdollSettings_CalculateConstraintIndexToBodyIdxPair: [[:pointer], :void],
  JPH_RagdollSettings_Create: [[], :pointer],
  JPH_RagdollSettings_CreateRagdoll: [[:pointer, :pointer, :uint32, :uint64], :pointer],
  JPH_RagdollSettings_Destroy: [[:pointer], :void],
  JPH_RagdollSettings_DisableParentChildCollisions: [[:pointer, :pointer, :float], :void],
  JPH_RagdollSettings_GetConstraintIndexForBodyIndex: [[:pointer, :int32], :int32],
  JPH_RagdollSettings_GetPartCount: [[:pointer], :int32],
  JPH_RagdollSettings_GetSkeleton: [[:pointer], :pointer],
  JPH_RagdollSettings_ResizeParts: [[:pointer, :int32], :void],
  JPH_RagdollSettings_SetPartMassProperties: [[:pointer, :int32, :float], :void],
  JPH_RagdollSettings_SetPartMotionType: [[:pointer, :int32, :int], :void],
  JPH_RagdollSettings_SetPartObjectLayer: [[:pointer, :int32, :uint32], :void],
  JPH_RagdollSettings_SetPartPosition: [[:pointer, :int32, :pointer], :void],
  JPH_RagdollSettings_SetPartRotation: [[:pointer, :int32, :pointer], :void],
  JPH_RagdollSettings_SetPartShape: [[:pointer, :int32, :pointer], :void],
  JPH_RagdollSettings_SetPartToParent: [[:pointer, :int32, :pointer], :void],
  JPH_RagdollSettings_SetSkeleton: [[:pointer, :pointer], :void],
  JPH_RagdollSettings_Stabilize: [[:pointer], :bool],
  JPH_Ragdoll_Activate: [[:pointer, :bool], :void],
  JPH_Ragdoll_AddToPhysicsSystem: [[:pointer, :int, :bool], :void],
  JPH_Ragdoll_Destroy: [[:pointer], :void],
  JPH_Ragdoll_DriveToPoseUsingKinematics: [[:pointer, :pointer, :float, :bool], :void],
  JPH_Ragdoll_DriveToPoseUsingMotors: [[:pointer, :pointer], :void],
  JPH_Ragdoll_GetBodyCount: [[:pointer], :int32],
  JPH_Ragdoll_GetBodyID: [[:pointer, :int32], :uint32],
  JPH_Ragdoll_GetConstraint: [[:pointer, :int32], :pointer],
  JPH_Ragdoll_GetConstraintCount: [[:pointer], :int32],
  JPH_Ragdoll_GetPose: [[:pointer, :pointer, :bool], :void],
  JPH_Ragdoll_GetPose2: [[:pointer, :pointer, :pointer, :bool], :void],
  JPH_Ragdoll_GetRagdollSettings: [[:pointer], :pointer],
  JPH_Ragdoll_GetRootTransform: [[:pointer, :pointer, :pointer, :bool], :void],
  JPH_Ragdoll_IsActive: [[:pointer, :bool], :bool],
  JPH_Ragdoll_RemoveFromPhysicsSystem: [[:pointer, :bool], :void],
  JPH_Ragdoll_ResetWarmStart: [[:pointer], :void],
  JPH_Ragdoll_SetPose: [[:pointer, :pointer, :bool], :void],
  JPH_Ragdoll_SetPose2: [[:pointer, :pointer, :pointer, :bool], :void],
  JPH_RayCast_GetPointOnRay: [[:pointer, :pointer, :float, :pointer], :void],
  JPH_RotatedTranslatedShapeSettings_Create: [[:pointer, :pointer, :pointer], :pointer],
  JPH_RotatedTranslatedShapeSettings_Create2: [[:pointer, :pointer, :pointer], :pointer],
  JPH_RotatedTranslatedShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_RotatedTranslatedShape_Create: [[:pointer, :pointer, :pointer], :pointer],
  JPH_RotatedTranslatedShape_GetPosition: [[:pointer, :pointer], :void],
  JPH_RotatedTranslatedShape_GetRotation: [[:pointer, :pointer], :void],
  JPH_ScaledShapeSettings_Create: [[:pointer, :pointer], :pointer],
  JPH_ScaledShapeSettings_Create2: [[:pointer, :pointer], :pointer],
  JPH_ScaledShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_ScaledShape_Create: [[:pointer, :pointer], :pointer],
  JPH_ScaledShape_GetScale: [[:pointer, :pointer], :void],
  JPH_SetAssertFailureHandler: [[:pointer], :void],
  JPH_SetTraceHandler: [[:pointer], :void],
  JPH_ShapeCastSettings_Init: [[:pointer], :void],
  JPH_ShapeFilter_Create: [[:pointer], :pointer],
  JPH_ShapeFilter_Destroy: [[:pointer], :void],
  JPH_ShapeFilter_GetBodyID2: [[:pointer], :uint32],
  JPH_ShapeFilter_SetBodyID2: [[:pointer, :uint32], :void],
  JPH_ShapeFilter_SetProcs: [[:pointer], :void],
  JPH_ShapeSettings_Destroy: [[:pointer], :void],
  JPH_ShapeSettings_GetUserData: [[:pointer], :uint64],
  JPH_ShapeSettings_SetUserData: [[:pointer, :uint64], :void],
  JPH_Shape_CastRay: [[:pointer, :pointer, :pointer, :pointer], :bool],
  JPH_Shape_CastRay2: [[:pointer, :pointer, :pointer, :pointer, :int, :pointer, :pointer, :pointer], :bool],
  JPH_Shape_CollidePoint: [[:pointer, :pointer, :pointer], :bool],
  JPH_Shape_CollidePoint2: [[:pointer, :pointer, :int, :pointer, :pointer, :pointer], :bool],
  JPH_Shape_Destroy: [[:pointer], :void],
  JPH_Shape_Draw: [[:pointer, :pointer, :pointer, :pointer, :uint32, :bool, :bool], :void],
  JPH_Shape_GetCenterOfMass: [[:pointer, :pointer], :void],
  JPH_Shape_GetInnerRadius: [[:pointer], :float],
  JPH_Shape_GetLeafShape: [[:pointer, :uint32, :pointer], :pointer],
  JPH_Shape_GetLocalBounds: [[:pointer, :pointer], :void],
  JPH_Shape_GetMassProperties: [[:pointer, :pointer], :void],
  JPH_Shape_GetMaterial: [[:pointer, :uint32], :pointer],
  JPH_Shape_GetSubShapeIDBitsRecursive: [[:pointer], :uint32],
  JPH_Shape_GetSubType: [[:pointer], :int],
  JPH_Shape_GetSupportingFace: [[:pointer, :uint32, :pointer, :pointer, :pointer, :pointer], :void],
  JPH_Shape_GetSurfaceNormal: [[:pointer, :uint32, :pointer, :pointer], :void],
  JPH_Shape_GetType: [[:pointer], :int],
  JPH_Shape_GetUserData: [[:pointer], :uint64],
  JPH_Shape_GetVolume: [[:pointer], :float],
  JPH_Shape_GetWorldSpaceBounds: [[:pointer, :pointer, :pointer, :pointer], :void],
  JPH_Shape_IsValidScale: [[:pointer, :pointer], :bool],
  JPH_Shape_MakeScaleValid: [[:pointer, :pointer, :pointer], :void],
  JPH_Shape_MustBeStatic: [[:pointer], :bool],
  JPH_Shape_ScaleShape: [[:pointer, :pointer], :pointer],
  JPH_Shape_SetUserData: [[:pointer, :uint64], :void],
  JPH_Shutdown: [[], :void],
  JPH_SimShapeFilter_Create: [[:pointer], :pointer],
  JPH_SimShapeFilter_Destroy: [[:pointer], :void],
  JPH_SimShapeFilter_SetProcs: [[:pointer], :void],
  JPH_SixDOFConstraintSettings_Init: [[:pointer], :void],
  JPH_SixDOFConstraintSettings_IsFixedAxis: [[:pointer, :int], :bool],
  JPH_SixDOFConstraintSettings_IsFreeAxis: [[:pointer, :int], :bool],
  JPH_SixDOFConstraintSettings_MakeFixedAxis: [[:pointer, :int], :void],
  JPH_SixDOFConstraintSettings_MakeFreeAxis: [[:pointer, :int], :void],
  JPH_SixDOFConstraintSettings_SetLimitedAxis: [[:pointer, :int, :float, :float], :void],
  JPH_SixDOFConstraint_Create: [[:pointer, :pointer, :pointer], :pointer],
  JPH_SixDOFConstraint_GetLimitsMax: [[:pointer, :int], :float],
  JPH_SixDOFConstraint_GetLimitsMin: [[:pointer, :int], :float],
  JPH_SixDOFConstraint_GetLimitsSpringSettings: [[:pointer, :pointer, :int], :void],
  JPH_SixDOFConstraint_GetMaxFriction: [[:pointer, :int], :float],
  JPH_SixDOFConstraint_GetMotorSettings: [[:pointer, :int, :pointer], :void],
  JPH_SixDOFConstraint_GetMotorState: [[:pointer, :int], :int],
  JPH_SixDOFConstraint_GetRotationInConstraintSpace: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetRotationLimitsMax: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetRotationLimitsMin: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetSettings: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetTargetAngularVelocityCS: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetTargetOrientationCS: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetTargetPositionCS: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetTargetVelocityCS: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetTotalLambdaMotorRotation: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetTotalLambdaMotorTranslation: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetTotalLambdaPosition: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetTotalLambdaRotation: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetTranslationLimitsMax: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_GetTranslationLimitsMin: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_IsFixedAxis: [[:pointer, :int], :bool],
  JPH_SixDOFConstraint_IsFreeAxis: [[:pointer, :int], :bool],
  JPH_SixDOFConstraint_SetLimitsSpringSettings: [[:pointer, :pointer, :int], :void],
  JPH_SixDOFConstraint_SetMaxFriction: [[:pointer, :int, :float], :void],
  JPH_SixDOFConstraint_SetMotorState: [[:pointer, :int, :int], :void],
  JPH_SixDOFConstraint_SetTargetAngularVelocityCS: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_SetTargetOrientationBS: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_SetTargetOrientationCS: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_SetTargetPositionCS: [[:pointer, :pointer], :void],
  JPH_SixDOFConstraint_SetTargetVelocityCS: [[:pointer, :pointer], :void],
  JPH_SkeletalAnimation_AddAnimatedJoint: [[:pointer, :pointer], :void],
  JPH_SkeletalAnimation_AddKeyframe: [[:pointer, :int32, :float, :pointer, :pointer], :void],
  JPH_SkeletalAnimation_Create: [[], :pointer],
  JPH_SkeletalAnimation_Destroy: [[:pointer], :void],
  JPH_SkeletalAnimation_GetAnimatedJointCount: [[:pointer], :int32],
  JPH_SkeletalAnimation_GetDuration: [[:pointer], :float],
  JPH_SkeletalAnimation_IsLooping: [[:pointer], :bool],
  JPH_SkeletalAnimation_Sample: [[:pointer, :float, :pointer], :void],
  JPH_SkeletalAnimation_ScaleJoints: [[:pointer, :float], :void],
  JPH_SkeletalAnimation_SetIsLooping: [[:pointer, :bool], :void],
  JPH_SkeletonMapper_Create: [[], :pointer],
  JPH_SkeletonMapper_Destroy: [[:pointer], :void],
  JPH_SkeletonMapper_GetMappedJointIndex: [[:pointer, :int32], :int32],
  JPH_SkeletonMapper_Initialize: [[:pointer, :pointer, :pointer, :pointer, :pointer], :void],
  JPH_SkeletonMapper_IsJointTranslationLocked: [[:pointer, :int32], :bool],
  JPH_SkeletonMapper_LockAllTranslations: [[:pointer, :pointer, :pointer], :void],
  JPH_SkeletonMapper_LockTranslations: [[:pointer, :pointer, :pointer, :pointer], :void],
  JPH_SkeletonMapper_Map: [[:pointer, :pointer, :pointer, :pointer], :void],
  JPH_SkeletonMapper_MapReverse: [[:pointer, :pointer, :pointer], :void],
  JPH_SkeletonPose_CalculateJointMatrices: [[:pointer], :void],
  JPH_SkeletonPose_CalculateJointStates: [[:pointer], :void],
  JPH_SkeletonPose_CalculateLocalSpaceJointMatrices: [[:pointer, :pointer], :void],
  JPH_SkeletonPose_Create: [[], :pointer],
  JPH_SkeletonPose_Destroy: [[:pointer], :void],
  JPH_SkeletonPose_GetJointCount: [[:pointer], :int32],
  JPH_SkeletonPose_GetJointMatrices: [[:pointer, :pointer, :int32], :void],
  JPH_SkeletonPose_GetJointMatrix: [[:pointer, :int32, :pointer], :void],
  JPH_SkeletonPose_GetJointState: [[:pointer, :int32, :pointer, :pointer], :void],
  JPH_SkeletonPose_GetRootOffset: [[:pointer, :pointer], :void],
  JPH_SkeletonPose_GetSkeleton: [[:pointer], :pointer],
  JPH_SkeletonPose_SetJointMatrices: [[:pointer, :pointer, :int32], :void],
  JPH_SkeletonPose_SetJointMatrix: [[:pointer, :int32, :pointer], :void],
  JPH_SkeletonPose_SetJointState: [[:pointer, :int32, :pointer, :pointer], :void],
  JPH_SkeletonPose_SetRootOffset: [[:pointer, :pointer], :void],
  JPH_SkeletonPose_SetSkeleton: [[:pointer, :pointer], :void],
  JPH_Skeleton_AddJoint: [[:pointer, :pointer], :uint32],
  JPH_Skeleton_AddJoint2: [[:pointer, :pointer, :int32], :uint32],
  JPH_Skeleton_AddJoint3: [[:pointer, :pointer, :pointer], :uint32],
  JPH_Skeleton_AreJointsCorrectlyOrdered: [[:pointer], :bool],
  JPH_Skeleton_CalculateParentJointIndices: [[:pointer], :void],
  JPH_Skeleton_Create: [[], :pointer],
  JPH_Skeleton_Destroy: [[:pointer], :void],
  JPH_Skeleton_GetJoint: [[:pointer, :int32, :pointer], :void],
  JPH_Skeleton_GetJointCount: [[:pointer], :int32],
  JPH_Skeleton_GetJointIndex: [[:pointer, :pointer], :int32],
  JPH_SliderConstraintSettings_Init: [[:pointer], :void],
  JPH_SliderConstraintSettings_SetSliderAxis: [[:pointer, :pointer], :void],
  JPH_SliderConstraint_Create: [[:pointer, :pointer, :pointer], :pointer],
  JPH_SliderConstraint_GetCurrentPosition: [[:pointer], :float],
  JPH_SliderConstraint_GetLimitsMax: [[:pointer], :float],
  JPH_SliderConstraint_GetLimitsMin: [[:pointer], :float],
  JPH_SliderConstraint_GetLimitsSpringSettings: [[:pointer, :pointer], :void],
  JPH_SliderConstraint_GetMaxFrictionForce: [[:pointer], :float],
  JPH_SliderConstraint_GetMotorSettings: [[:pointer, :pointer], :void],
  JPH_SliderConstraint_GetMotorState: [[:pointer], :int],
  JPH_SliderConstraint_GetSettings: [[:pointer, :pointer], :void],
  JPH_SliderConstraint_GetTargetPosition: [[:pointer], :float],
  JPH_SliderConstraint_GetTargetVelocity: [[:pointer], :float],
  JPH_SliderConstraint_GetTotalLambdaMotor: [[:pointer], :float],
  JPH_SliderConstraint_GetTotalLambdaPosition: [[:pointer, :pointer], :void],
  JPH_SliderConstraint_GetTotalLambdaPositionLimits: [[:pointer], :float],
  JPH_SliderConstraint_GetTotalLambdaRotation: [[:pointer, :pointer], :void],
  JPH_SliderConstraint_HasLimits: [[:pointer], :bool],
  JPH_SliderConstraint_SetLimits: [[:pointer, :float, :float], :void],
  JPH_SliderConstraint_SetLimitsSpringSettings: [[:pointer, :pointer], :void],
  JPH_SliderConstraint_SetMaxFrictionForce: [[:pointer, :float], :void],
  JPH_SliderConstraint_SetMotorSettings: [[:pointer, :pointer], :void],
  JPH_SliderConstraint_SetMotorState: [[:pointer, :int], :void],
  JPH_SliderConstraint_SetTargetPosition: [[:pointer, :float], :void],
  JPH_SliderConstraint_SetTargetVelocity: [[:pointer, :float], :void],
  JPH_SoftBodyCreationSettings_Create: [[], :pointer],
  JPH_SoftBodyCreationSettings_Create2: [[:pointer, :pointer, :pointer, :uint32], :pointer],
  JPH_SoftBodyCreationSettings_Destroy: [[:pointer], :void],
  JPH_SoftBodyCreationSettings_GetAllowSleeping: [[:pointer], :bool],
  JPH_SoftBodyCreationSettings_GetCollisionGroup: [[:pointer, :pointer], :void],
  JPH_SoftBodyCreationSettings_GetFacesDoubleSided: [[:pointer], :bool],
  JPH_SoftBodyCreationSettings_GetFriction: [[:pointer], :float],
  JPH_SoftBodyCreationSettings_GetGravityFactor: [[:pointer], :float],
  JPH_SoftBodyCreationSettings_GetLinearDamping: [[:pointer], :float],
  JPH_SoftBodyCreationSettings_GetMakeRotationIdentity: [[:pointer], :bool],
  JPH_SoftBodyCreationSettings_GetMaxLinearVelocity: [[:pointer], :float],
  JPH_SoftBodyCreationSettings_GetNumIterations: [[:pointer], :uint32],
  JPH_SoftBodyCreationSettings_GetObjectLayer: [[:pointer], :uint32],
  JPH_SoftBodyCreationSettings_GetPosition: [[:pointer, :pointer], :void],
  JPH_SoftBodyCreationSettings_GetPressure: [[:pointer], :float],
  JPH_SoftBodyCreationSettings_GetRestitution: [[:pointer], :float],
  JPH_SoftBodyCreationSettings_GetRotation: [[:pointer, :pointer], :void],
  JPH_SoftBodyCreationSettings_GetSettings: [[:pointer], :pointer],
  JPH_SoftBodyCreationSettings_GetUpdatePosition: [[:pointer], :bool],
  JPH_SoftBodyCreationSettings_GetUserData: [[:pointer], :uint64],
  JPH_SoftBodyCreationSettings_GetVertexRadius: [[:pointer], :float],
  JPH_SoftBodyCreationSettings_SetAllowSleeping: [[:pointer, :bool], :void],
  JPH_SoftBodyCreationSettings_SetCollisionGroup: [[:pointer, :pointer], :void],
  JPH_SoftBodyCreationSettings_SetFacesDoubleSided: [[:pointer, :bool], :void],
  JPH_SoftBodyCreationSettings_SetFriction: [[:pointer, :float], :void],
  JPH_SoftBodyCreationSettings_SetGravityFactor: [[:pointer, :float], :void],
  JPH_SoftBodyCreationSettings_SetLinearDamping: [[:pointer, :float], :void],
  JPH_SoftBodyCreationSettings_SetMakeRotationIdentity: [[:pointer, :bool], :void],
  JPH_SoftBodyCreationSettings_SetMaxLinearVelocity: [[:pointer, :float], :void],
  JPH_SoftBodyCreationSettings_SetNumIterations: [[:pointer, :uint32], :void],
  JPH_SoftBodyCreationSettings_SetObjectLayer: [[:pointer, :uint32], :void],
  JPH_SoftBodyCreationSettings_SetPosition: [[:pointer, :pointer], :void],
  JPH_SoftBodyCreationSettings_SetPressure: [[:pointer, :float], :void],
  JPH_SoftBodyCreationSettings_SetRestitution: [[:pointer, :float], :void],
  JPH_SoftBodyCreationSettings_SetRotation: [[:pointer, :pointer], :void],
  JPH_SoftBodyCreationSettings_SetSettings: [[:pointer, :pointer], :void],
  JPH_SoftBodyCreationSettings_SetUpdatePosition: [[:pointer, :bool], :void],
  JPH_SoftBodyCreationSettings_SetUserData: [[:pointer, :uint64], :void],
  JPH_SoftBodyCreationSettings_SetVertexRadius: [[:pointer, :float], :void],
  JPH_SoftBodySharedSettings_AddFace: [[:pointer, :pointer], :void],
  JPH_SoftBodySharedSettings_AddFaces: [[:pointer, :pointer, :uint32], :void],
  JPH_SoftBodySharedSettings_AddVertex: [[:pointer, :pointer], :void],
  JPH_SoftBodySharedSettings_AddVertices: [[:pointer, :pointer, :uint32], :void],
  JPH_SoftBodySharedSettings_Create: [[], :pointer],
  JPH_SoftBodySharedSettings_CreateConstraints: [[:pointer, :float, :int], :void],
  JPH_SoftBodySharedSettings_Destroy: [[:pointer], :void],
  JPH_SoftBodySharedSettings_GetFace: [[:pointer, :uint32, :pointer], :bool],
  JPH_SoftBodySharedSettings_GetFaceCount: [[:pointer], :uint32],
  JPH_SoftBodySharedSettings_GetVertex: [[:pointer, :uint32, :pointer], :bool],
  JPH_SoftBodySharedSettings_GetVertexCount: [[:pointer], :uint32],
  JPH_SoftBodySharedSettings_Optimize: [[:pointer], :void],
  JPH_SoftBodySharedSettings_RemoveFace: [[:pointer, :uint32], :bool],
  JPH_SoftBodySharedSettings_RemoveVertex: [[:pointer, :uint32], :bool],
  JPH_SphereShapeSettings_Create: [[:float], :pointer],
  JPH_SphereShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_SphereShapeSettings_GetRadius: [[:pointer], :float],
  JPH_SphereShapeSettings_SetRadius: [[:pointer, :float], :void],
  JPH_SphereShape_Create: [[:float], :pointer],
  JPH_SphereShape_GetRadius: [[:pointer], :float],
  JPH_StaticCompoundShapeSettings_Create: [[], :pointer],
  JPH_StaticCompoundShape_Create: [[:pointer], :pointer],
  JPH_SwingTwistConstraintSettings_Init: [[:pointer], :void],
  JPH_SwingTwistConstraint_Create: [[:pointer, :pointer, :pointer], :pointer],
  JPH_SwingTwistConstraint_GetNormalHalfConeAngle: [[:pointer], :float],
  JPH_SwingTwistConstraint_GetSettings: [[:pointer, :pointer], :void],
  JPH_SwingTwistConstraint_GetTotalLambdaMotor: [[:pointer, :pointer], :void],
  JPH_SwingTwistConstraint_GetTotalLambdaPosition: [[:pointer, :pointer], :void],
  JPH_SwingTwistConstraint_GetTotalLambdaSwingY: [[:pointer], :float],
  JPH_SwingTwistConstraint_GetTotalLambdaSwingZ: [[:pointer], :float],
  JPH_SwingTwistConstraint_GetTotalLambdaTwist: [[:pointer], :float],
  JPH_TaperedCapsuleShapeSettings_Create: [[:float, :float, :float], :pointer],
  JPH_TaperedCapsuleShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_TaperedCapsuleShape_GetBottomRadius: [[:pointer], :float],
  JPH_TaperedCapsuleShape_GetHalfHeight: [[:pointer], :float],
  JPH_TaperedCapsuleShape_GetTopRadius: [[:pointer], :float],
  JPH_TaperedCylinderShapeSettings_Create: [[:float, :float, :float, :float, :pointer], :pointer],
  JPH_TaperedCylinderShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_TaperedCylinderShape_GetBottomRadius: [[:pointer], :float],
  JPH_TaperedCylinderShape_GetConvexRadius: [[:pointer], :float],
  JPH_TaperedCylinderShape_GetHalfHeight: [[:pointer], :float],
  JPH_TaperedCylinderShape_GetTopRadius: [[:pointer], :float],
  JPH_TempAllocatorMalloc_Create: [[], :pointer],
  JPH_TempAllocator_Create: [[:uint32], :pointer],
  JPH_TempAllocator_Destroy: [[:pointer], :void],
  JPH_TrackedVehicleControllerSettings_Create: [[], :pointer],
  JPH_TrackedVehicleControllerSettings_GetEngine: [[:pointer, :pointer], :void],
  JPH_TrackedVehicleControllerSettings_GetTransmission: [[:pointer], :pointer],
  JPH_TrackedVehicleControllerSettings_SetEngine: [[:pointer, :pointer], :void],
  JPH_TrackedVehicleControllerSettings_SetTrack: [[:pointer, :uint32, :pointer], :void],
  JPH_TrackedVehicleControllerSettings_SetTransmission: [[:pointer, :pointer], :void],
  JPH_TrackedVehicleController_GetBrakeInput: [[:pointer], :float],
  JPH_TrackedVehicleController_GetEngine: [[:pointer], :pointer],
  JPH_TrackedVehicleController_GetForwardInput: [[:pointer], :float],
  JPH_TrackedVehicleController_GetLeftRatio: [[:pointer], :float],
  JPH_TrackedVehicleController_GetRightRatio: [[:pointer], :float],
  JPH_TrackedVehicleController_GetTrack: [[:pointer, :int], :pointer],
  JPH_TrackedVehicleController_GetTransmission: [[:pointer], :pointer],
  JPH_TrackedVehicleController_SetBrakeInput: [[:pointer, :float], :void],
  JPH_TrackedVehicleController_SetDriverInput: [[:pointer, :float, :float, :float, :float], :void],
  JPH_TrackedVehicleController_SetForwardInput: [[:pointer, :float], :void],
  JPH_TrackedVehicleController_SetLeftRatio: [[:pointer, :float], :void],
  JPH_TrackedVehicleController_SetRightRatio: [[:pointer, :float], :void],
  JPH_TriangleShapeSettings_Create: [[:pointer, :pointer, :pointer, :float], :pointer],
  JPH_TriangleShapeSettings_CreateShape: [[:pointer], :pointer],
  JPH_TriangleShape_Create: [[:pointer, :pointer, :pointer, :float], :pointer],
  JPH_TriangleShape_GetConvexRadius: [[:pointer], :float],
  JPH_TriangleShape_GetVertex1: [[:pointer, :pointer], :void],
  JPH_TriangleShape_GetVertex2: [[:pointer, :pointer], :void],
  JPH_TriangleShape_GetVertex3: [[:pointer, :pointer], :void],
  JPH_TwoBodyConstraint_GetBody1: [[:pointer], :pointer],
  JPH_TwoBodyConstraint_GetBody2: [[:pointer], :pointer],
  JPH_TwoBodyConstraint_GetConstraintToBody1Matrix: [[:pointer, :pointer], :void],
  JPH_TwoBodyConstraint_GetConstraintToBody2Matrix: [[:pointer, :pointer], :void],
  JPH_Vec3_Abs: [[:pointer, :pointer], :void],
  JPH_Vec3_Add: [[:pointer, :pointer, :pointer], :void],
  JPH_Vec3_AxisX: [[:pointer], :void],
  JPH_Vec3_AxisY: [[:pointer], :void],
  JPH_Vec3_AxisZ: [[:pointer], :void],
  JPH_Vec3_Cross: [[:pointer, :pointer, :pointer], :void],
  JPH_Vec3_Divide: [[:pointer, :pointer, :pointer], :void],
  JPH_Vec3_DivideScalar: [[:pointer, :float, :pointer], :void],
  JPH_Vec3_DotProduct: [[:pointer, :pointer, :pointer], :void],
  JPH_Vec3_GetNormalizedPerpendicular: [[:pointer, :pointer], :void],
  JPH_Vec3_IsClose: [[:pointer, :pointer, :float], :bool],
  JPH_Vec3_IsNaN: [[:pointer], :bool],
  JPH_Vec3_IsNearZero: [[:pointer, :float], :bool],
  JPH_Vec3_IsNormalized: [[:pointer, :float], :bool],
  JPH_Vec3_Length: [[:pointer], :float],
  JPH_Vec3_LengthSquared: [[:pointer], :float],
  JPH_Vec3_Multiply: [[:pointer, :pointer, :pointer], :void],
  JPH_Vec3_MultiplyMatrix: [[:pointer, :pointer, :pointer], :void],
  JPH_Vec3_MultiplyScalar: [[:pointer, :float, :pointer], :void],
  JPH_Vec3_Negate: [[:pointer, :pointer], :void],
  JPH_Vec3_Normalize: [[:pointer, :pointer], :void],
  JPH_Vec3_Normalized: [[:pointer, :pointer], :void],
  JPH_Vec3_Subtract: [[:pointer, :pointer, :pointer], :void],
  JPH_VehicleAntiRollBar_Init: [[:pointer], :void],
  JPH_VehicleCollisionTesterCastCylinder_Create: [[:uint32, :float], :pointer],
  JPH_VehicleCollisionTesterCastSphere_Create: [[:uint32, :float, :pointer, :float], :pointer],
  JPH_VehicleCollisionTesterRay_Create: [[:uint32, :pointer, :float], :pointer],
  JPH_VehicleCollisionTester_Destroy: [[:pointer], :void],
  JPH_VehicleCollisionTester_GetObjectLayer: [[:pointer], :uint32],
  JPH_VehicleCollisionTester_SetObjectLayer: [[:pointer, :uint32], :void],
  JPH_VehicleConstraintSettings_Init: [[:pointer], :void],
  JPH_VehicleConstraint_AsPhysicsStepListener: [[:pointer], :pointer],
  JPH_VehicleConstraint_Create: [[:pointer, :pointer], :pointer],
  JPH_VehicleConstraint_GetController: [[:pointer], :pointer],
  JPH_VehicleConstraint_GetGravityOverride: [[:pointer, :pointer], :void],
  JPH_VehicleConstraint_GetLocalForward: [[:pointer, :pointer], :void],
  JPH_VehicleConstraint_GetLocalUp: [[:pointer, :pointer], :void],
  JPH_VehicleConstraint_GetVehicleBody: [[:pointer], :pointer],
  JPH_VehicleConstraint_GetWheel: [[:pointer, :uint32], :pointer],
  JPH_VehicleConstraint_GetWheelLocalBasis: [[:pointer, :pointer, :pointer, :pointer, :pointer], :void],
  JPH_VehicleConstraint_GetWheelLocalTransform: [[:pointer, :uint32, :pointer, :pointer, :pointer], :void],
  JPH_VehicleConstraint_GetWheelWorldTransform: [[:pointer, :uint32, :pointer, :pointer, :pointer], :void],
  JPH_VehicleConstraint_GetWheelsCount: [[:pointer], :uint32],
  JPH_VehicleConstraint_GetWorldUp: [[:pointer, :pointer], :void],
  JPH_VehicleConstraint_IsGravityOverridden: [[:pointer], :bool],
  JPH_VehicleConstraint_OverrideGravity: [[:pointer, :pointer], :void],
  JPH_VehicleConstraint_ResetGravityOverride: [[:pointer], :void],
  JPH_VehicleConstraint_SetMaxPitchRollAngle: [[:pointer, :float], :void],
  JPH_VehicleConstraint_SetVehicleCollisionTester: [[:pointer, :pointer], :void],
  JPH_VehicleControllerSettings_Destroy: [[:pointer], :void],
  JPH_VehicleController_GetConstraint: [[:pointer], :pointer],
  JPH_VehicleDifferentialSettings_Init: [[:pointer], :void],
  JPH_VehicleEngineSettings_Init: [[:pointer], :void],
  JPH_VehicleEngine_AllowSleep: [[:pointer], :bool],
  JPH_VehicleEngine_ApplyDamping: [[:pointer, :float], :void],
  JPH_VehicleEngine_ApplyTorque: [[:pointer, :float, :float], :void],
  JPH_VehicleEngine_ClampRPM: [[:pointer], :void],
  JPH_VehicleEngine_GetAngularVelocity: [[:pointer], :float],
  JPH_VehicleEngine_GetCurrentRPM: [[:pointer], :float],
  JPH_VehicleEngine_GetTorque: [[:pointer, :float], :float],
  JPH_VehicleEngine_SetCurrentRPM: [[:pointer, :float], :void],
  JPH_VehicleTrackSettings_Init: [[:pointer], :void],
  JPH_VehicleTrack_GetAngularDamping: [[:pointer], :float],
  JPH_VehicleTrack_GetAngularVelocity: [[:pointer], :float],
  JPH_VehicleTrack_GetDifferentialRatio: [[:pointer], :float],
  JPH_VehicleTrack_GetDrivenWheel: [[:pointer], :uint32],
  JPH_VehicleTrack_GetInertia: [[:pointer], :float],
  JPH_VehicleTrack_GetMaxBrakeTorque: [[:pointer], :float],
  JPH_VehicleTrack_SetAngularVelocity: [[:pointer, :float], :void],
  JPH_VehicleTransmissionSettings_Create: [[], :pointer],
  JPH_VehicleTransmissionSettings_Destroy: [[:pointer], :void],
  JPH_VehicleTransmissionSettings_GetClutchReleaseTime: [[:pointer], :float],
  JPH_VehicleTransmissionSettings_GetClutchStrength: [[:pointer], :float],
  JPH_VehicleTransmissionSettings_GetGearRatio: [[:pointer, :uint32], :float],
  JPH_VehicleTransmissionSettings_GetGearRatioCount: [[:pointer], :uint32],
  JPH_VehicleTransmissionSettings_GetGearRatios: [[:pointer], :pointer],
  JPH_VehicleTransmissionSettings_GetMode: [[:pointer], :int],
  JPH_VehicleTransmissionSettings_GetReverseGearRatio: [[:pointer, :uint32], :float],
  JPH_VehicleTransmissionSettings_GetReverseGearRatioCount: [[:pointer], :uint32],
  JPH_VehicleTransmissionSettings_GetReverseGearRatios: [[:pointer], :pointer],
  JPH_VehicleTransmissionSettings_GetShiftDownRPM: [[:pointer], :float],
  JPH_VehicleTransmissionSettings_GetShiftUpRPM: [[:pointer], :float],
  JPH_VehicleTransmissionSettings_GetSwitchLatency: [[:pointer], :float],
  JPH_VehicleTransmissionSettings_GetSwitchTime: [[:pointer], :float],
  JPH_VehicleTransmissionSettings_SetClutchReleaseTime: [[:pointer, :float], :void],
  JPH_VehicleTransmissionSettings_SetClutchStrength: [[:pointer, :float], :void],
  JPH_VehicleTransmissionSettings_SetGearRatio: [[:pointer, :uint32, :float], :void],
  JPH_VehicleTransmissionSettings_SetGearRatios: [[:pointer, :pointer, :uint32], :void],
  JPH_VehicleTransmissionSettings_SetMode: [[:pointer, :int], :void],
  JPH_VehicleTransmissionSettings_SetReverseGearRatio: [[:pointer, :uint32, :float], :void],
  JPH_VehicleTransmissionSettings_SetReverseGearRatios: [[:pointer, :pointer, :uint32], :void],
  JPH_VehicleTransmissionSettings_SetShiftDownRPM: [[:pointer, :float], :void],
  JPH_VehicleTransmissionSettings_SetShiftUpRPM: [[:pointer, :float], :void],
  JPH_VehicleTransmissionSettings_SetSwitchLatency: [[:pointer, :float], :void],
  JPH_VehicleTransmissionSettings_SetSwitchTime: [[:pointer, :float], :void],
  JPH_VehicleTransmission_AllowSleep: [[:pointer], :bool],
  JPH_VehicleTransmission_GetClutchFriction: [[:pointer], :float],
  JPH_VehicleTransmission_GetCurrentGear: [[:pointer], :int32],
  JPH_VehicleTransmission_GetCurrentRatio: [[:pointer], :float],
  JPH_VehicleTransmission_IsSwitchingGear: [[:pointer], :bool],
  JPH_VehicleTransmission_Set: [[:pointer, :int32, :float], :void],
  JPH_VehicleTransmission_SetMode: [[:pointer, :int], :void],
  JPH_VehicleTransmission_Update: [[:pointer, :float, :float, :float, :bool], :void],
  JPH_WheelSettingsTV_Create: [[], :pointer],
  JPH_WheelSettingsTV_GetLateralFriction: [[:pointer], :float],
  JPH_WheelSettingsTV_GetLongitudinalFriction: [[:pointer], :float],
  JPH_WheelSettingsTV_SetLateralFriction: [[:pointer, :float], :void],
  JPH_WheelSettingsTV_SetLongitudinalFriction: [[:pointer, :float], :void],
  JPH_WheelSettingsWV_Create: [[], :pointer],
  JPH_WheelSettingsWV_GetAngularDamping: [[:pointer], :float],
  JPH_WheelSettingsWV_GetInertia: [[:pointer], :float],
  JPH_WheelSettingsWV_GetLateralFriction: [[:pointer], :pointer],
  JPH_WheelSettingsWV_GetLongitudinalFriction: [[:pointer], :pointer],
  JPH_WheelSettingsWV_GetMaxBrakeTorque: [[:pointer], :float],
  JPH_WheelSettingsWV_GetMaxHandBrakeTorque: [[:pointer], :float],
  JPH_WheelSettingsWV_GetMaxSteerAngle: [[:pointer], :float],
  JPH_WheelSettingsWV_SetAngularDamping: [[:pointer, :float], :void],
  JPH_WheelSettingsWV_SetInertia: [[:pointer, :float], :void],
  JPH_WheelSettingsWV_SetLateralFriction: [[:pointer, :pointer], :void],
  JPH_WheelSettingsWV_SetLongitudinalFriction: [[:pointer, :pointer], :void],
  JPH_WheelSettingsWV_SetMaxBrakeTorque: [[:pointer, :float], :void],
  JPH_WheelSettingsWV_SetMaxHandBrakeTorque: [[:pointer, :float], :void],
  JPH_WheelSettingsWV_SetMaxSteerAngle: [[:pointer, :float], :void],
  JPH_WheelSettings_Create: [[], :pointer],
  JPH_WheelSettings_Destroy: [[:pointer], :void],
  JPH_WheelSettings_GetEnableSuspensionForcePoint: [[:pointer], :bool],
  JPH_WheelSettings_GetPosition: [[:pointer, :pointer], :void],
  JPH_WheelSettings_GetRadius: [[:pointer], :float],
  JPH_WheelSettings_GetSteeringAxis: [[:pointer, :pointer], :void],
  JPH_WheelSettings_GetSuspensionDirection: [[:pointer, :pointer], :void],
  JPH_WheelSettings_GetSuspensionForcePoint: [[:pointer, :pointer], :void],
  JPH_WheelSettings_GetSuspensionMaxLength: [[:pointer], :float],
  JPH_WheelSettings_GetSuspensionMinLength: [[:pointer], :float],
  JPH_WheelSettings_GetSuspensionPreloadLength: [[:pointer], :float],
  JPH_WheelSettings_GetSuspensionSpring: [[:pointer, :pointer], :void],
  JPH_WheelSettings_GetWheelForward: [[:pointer, :pointer], :void],
  JPH_WheelSettings_GetWheelUp: [[:pointer, :pointer], :void],
  JPH_WheelSettings_GetWidth: [[:pointer], :float],
  JPH_WheelSettings_SetEnableSuspensionForcePoint: [[:pointer, :bool], :void],
  JPH_WheelSettings_SetPosition: [[:pointer, :pointer], :void],
  JPH_WheelSettings_SetRadius: [[:pointer, :float], :void],
  JPH_WheelSettings_SetSteeringAxis: [[:pointer, :pointer], :void],
  JPH_WheelSettings_SetSuspensionDirection: [[:pointer, :pointer], :void],
  JPH_WheelSettings_SetSuspensionForcePoint: [[:pointer, :pointer], :void],
  JPH_WheelSettings_SetSuspensionMaxLength: [[:pointer, :float], :void],
  JPH_WheelSettings_SetSuspensionMinLength: [[:pointer, :float], :void],
  JPH_WheelSettings_SetSuspensionPreloadLength: [[:pointer, :float], :void],
  JPH_WheelSettings_SetSuspensionSpring: [[:pointer, :pointer], :void],
  JPH_WheelSettings_SetWheelForward: [[:pointer, :pointer], :void],
  JPH_WheelSettings_SetWheelUp: [[:pointer, :pointer], :void],
  JPH_WheelSettings_SetWidth: [[:pointer, :float], :void],
  JPH_WheelTV_Create: [[:pointer], :pointer],
  JPH_WheelTV_GetSettings: [[:pointer], :pointer],
  JPH_WheelWV_ApplyTorque: [[:pointer, :float, :float], :void],
  JPH_WheelWV_Create: [[:pointer], :pointer],
  JPH_WheelWV_GetSettings: [[:pointer], :pointer],
  JPH_Wheel_Create: [[:pointer], :pointer],
  JPH_Wheel_Destroy: [[:pointer], :void],
  JPH_Wheel_GetAngularVelocity: [[:pointer], :float],
  JPH_Wheel_GetContactBodyID: [[:pointer], :uint32],
  JPH_Wheel_GetContactLateral: [[:pointer, :pointer], :void],
  JPH_Wheel_GetContactLongitudinal: [[:pointer, :pointer], :void],
  JPH_Wheel_GetContactNormal: [[:pointer, :pointer], :void],
  JPH_Wheel_GetContactPointVelocity: [[:pointer, :pointer], :void],
  JPH_Wheel_GetContactPosition: [[:pointer, :pointer], :void],
  JPH_Wheel_GetContactSubShapeID: [[:pointer], :uint32],
  JPH_Wheel_GetLateralLambda: [[:pointer], :float],
  JPH_Wheel_GetLongitudinalLambda: [[:pointer], :float],
  JPH_Wheel_GetRotationAngle: [[:pointer], :float],
  JPH_Wheel_GetSettings: [[:pointer], :pointer],
  JPH_Wheel_GetSteerAngle: [[:pointer], :float],
  JPH_Wheel_GetSuspensionLambda: [[:pointer], :float],
  JPH_Wheel_GetSuspensionLength: [[:pointer], :float],
  JPH_Wheel_HasContact: [[:pointer], :bool],
  JPH_Wheel_HasHitHardPoint: [[:pointer], :bool],
  JPH_Wheel_SetAngularVelocity: [[:pointer, :float], :void],
  JPH_Wheel_SetRotationAngle: [[:pointer, :float], :void],
  JPH_Wheel_SetSteerAngle: [[:pointer, :float], :void],
  JPH_WheeledVehicleControllerSettings_AddDifferential: [[:pointer, :int32, :int32], :void],
  JPH_WheeledVehicleControllerSettings_Create: [[], :pointer],
  JPH_WheeledVehicleControllerSettings_GetDifferential: [[:pointer, :uint32, :pointer], :void],
  JPH_WheeledVehicleControllerSettings_GetDifferentialLimitedSlipRatio: [[:pointer], :float],
  JPH_WheeledVehicleControllerSettings_GetDifferentialsCount: [[:pointer], :uint32],
  JPH_WheeledVehicleControllerSettings_GetEngine: [[:pointer, :pointer], :void],
  JPH_WheeledVehicleControllerSettings_GetTransmission: [[:pointer], :pointer],
  JPH_WheeledVehicleControllerSettings_SetDifferential: [[:pointer, :uint32, :pointer], :void],
  JPH_WheeledVehicleControllerSettings_SetDifferentialLimitedSlipRatio: [[:pointer, :float], :void],
  JPH_WheeledVehicleControllerSettings_SetDifferentials: [[:pointer, :pointer, :uint32], :void],
  JPH_WheeledVehicleControllerSettings_SetDifferentialsCount: [[:pointer, :uint32], :void],
  JPH_WheeledVehicleControllerSettings_SetEngine: [[:pointer, :pointer], :void],
  JPH_WheeledVehicleControllerSettings_SetTransmission: [[:pointer, :pointer], :void],
  JPH_WheeledVehicleController_GetBrakeInput: [[:pointer], :float],
  JPH_WheeledVehicleController_GetEngine: [[:pointer], :pointer],
  JPH_WheeledVehicleController_GetForwardInput: [[:pointer], :float],
  JPH_WheeledVehicleController_GetHandBrakeInput: [[:pointer], :float],
  JPH_WheeledVehicleController_GetRightInput: [[:pointer], :float],
  JPH_WheeledVehicleController_GetTransmission: [[:pointer], :pointer],
  JPH_WheeledVehicleController_GetWheelSpeedAtClutch: [[:pointer], :float],
  JPH_WheeledVehicleController_SetBrakeInput: [[:pointer, :float], :void],
  JPH_WheeledVehicleController_SetDriverInput: [[:pointer, :float, :float, :float, :float], :void],
  JPH_WheeledVehicleController_SetForwardInput: [[:pointer, :float], :void],
  JPH_WheeledVehicleController_SetHandBrakeInput: [[:pointer, :float], :void],
  JPH_WheeledVehicleController_SetRightInput: [[:pointer, :float], :void],
  JPH_WheeledVehicleController_SetTireMaxImpulseCallback: [[:pointer, :pointer, :pointer], :void],
}.freeze
HEADER_LAYOUTS =
{
  "JPH_BodyActivationListener_Procs" => [16, { on_body_activated: 0, on_body_deactivated: 8 }],
  "JPH_BodyDrawFilter_Procs" => [8, { should_draw: 0 }],
  "JPH_BodyFilter_Procs" => [16, { should_collide: 0, should_collide_locked: 8 }],
  "JPH_BodyLockRead" => [24, { lock_interface: 0, mutex: 8, body: 16 }],
  "JPH_BodyLockWrite" => [24, { lock_interface: 0, mutex: 8, body: 16 }],
  "JPH_BroadPhaseCastResult" => [8, { body_id: 0, fraction: 4 }],
  "JPH_BroadPhaseLayerFilter_Procs" => [8, { should_collide: 0 }],
  "JPH_CharacterContactListener_Procs" => [88, { on_adjust_body_velocity: 0, on_contact_validate: 8, on_character_contact_validate: 16, on_contact_added: 24, on_contact_persisted: 32, on_contact_removed: 40, on_character_contact_added: 48, on_character_contact_persisted: 56, on_character_contact_removed: 64, on_contact_solve: 72, on_character_contact_solve: 80 }],
  "JPH_CharacterContactSettings" => [2, { can_push_character: 0, can_receive_impulses: 1 }],
  "JPH_CharacterVsCharacterCollision_Procs" => [16, { collide_character: 0, cast_character: 8 }],
  "JPH_CollidePointResult" => [8, { body_id: 0, sub_shape_id2: 4 }],
  "JPH_CollisionGroup" => [16, { group_filter: 0, group_id: 8, sub_group_id: 12 }],
  "JPH_ConstraintSettings" => [32, { enabled: 0, constraint_priority: 4, num_velocity_steps_override: 8, num_position_steps_override: 12, draw_constraint_size: 16, user_data: 24 }],
  "JPH_ContactListener_Procs" => [32, { on_contact_validate: 0, on_contact_added: 8, on_contact_persisted: 16, on_contact_removed: 24 }],
  "JPH_DebugRenderer_Procs" => [24, { draw_line: 0, draw_triangle: 8, draw_text3_d: 16 }],
  "JPH_DrawSettings" => [32, { draw_get_support_function: 0, draw_support_direction: 1, draw_get_supporting_face: 2, draw_shape: 3, draw_shape_wireframe: 4, draw_shape_color: 8, draw_bounding_box: 12, draw_center_of_mass_transform: 13, draw_world_transform: 14, draw_velocity: 15, draw_mass_and_inertia: 16, draw_sleep_stats: 17, draw_soft_body_vertices: 18, draw_soft_body_vertex_velocities: 19, draw_soft_body_edge_constraints: 20, draw_soft_body_bend_constraints: 21, draw_soft_body_volume_constraints: 22, draw_soft_body_skin_constraints: 23, draw_soft_body_lra_constraints: 24, draw_soft_body_predicted_bounds: 25, draw_soft_body_constraint_color: 28 }],
  "JPH_IndexedTriangle" => [20, { i1: 0, i2: 4, i3: 8, material_index: 12, user_data: 16 }],
  "JPH_IndexedTriangleNoMaterial" => [12, { i1: 0, i2: 4, i3: 8 }],
  "JPH_JobSystemConfig" => [32, { context: 0, queue_job: 8, queue_jobs: 16, max_concurrency: 24, max_barriers: 28 }],
  "JPH_ObjectLayerFilter_Procs" => [8, { should_collide: 0 }],
  "JPH_PhysicsSettings" => [84, { max_in_flight_body_pairs: 0, step_listeners_batch_size: 4, step_listener_batches_per_job: 8, baumgarte: 12, speculative_contact_distance: 16, penetration_slop: 20, linear_cast_threshold: 24, linear_cast_max_penetration: 28, manifold_tolerance: 32, max_penetration_distance: 36, body_pair_cache_max_delta_position_sq: 40, body_pair_cache_cos_max_delta_rotation_div2: 44, contact_normal_cos_max_delta_rotation: 48, contact_point_preserve_lambda_max_dist_sq: 52, num_velocity_steps: 56, num_position_steps: 60, min_velocity_for_restitution: 64, time_before_sleep: 68, point_velocity_sleep_threshold: 72, deterministic_simulation: 76, constraint_warm_start: 77, use_body_pair_contact_cache: 78, use_manifold_reduction: 79, use_large_island_splitter: 80, allow_sleeping: 81, check_active_edges: 82 }],
  "JPH_PhysicsStepListenerContext" => [24, { delta_time: 0, is_first_step: 4, is_last_step: 8, physics_system: 16 }],
  "JPH_PhysicsStepListener_Procs" => [8, { on_step: 0 }],
  "JPH_PhysicsSystemSettings" => [48, { max_bodies: 0, num_body_mutexes: 4, max_body_pairs: 8, max_contact_constraints: 12, padding: 16, broad_phase_layer_interface: 24, object_layer_pair_filter: 32, object_vs_broad_phase_layer_filter: 40 }],
  "JPH_Point" => [8, { x: 0, y: 4 }],
  "JPH_Quat" => [16, { x: 0, y: 4, z: 8, w: 12 }],
  "JPH_RayCastResult" => [12, { body_id: 0, fraction: 4, sub_shape_id2: 8 }],
  "JPH_RayCastSettings" => [12, { back_face_mode_triangles: 0, back_face_mode_convex: 4, treat_convex_as_solid: 8 }],
  "JPH_ShapeFilter_Procs" => [16, { should_collide: 0, should_collide2: 8 }],
  "JPH_SimShapeFilter_Procs" => [8, { should_collide: 0 }],
  "JPH_SkeletonJoint" => [24, { name: 0, parent_name: 8, parent_joint_index: 16 }],
  "JPH_SoftFace" => [16, { vertex1: 0, vertex2: 4, vertex3: 8, material_index: 12 }],
  "JPH_SpringSettings" => [12, { mode: 0, frequency_or_stiffness: 4, damping: 8 }],
  "JPH_SubShapeIDPair" => [16, { body1_id: 0, sub_shape_id1: 4, body2_id: 8, sub_shape_id2: 12 }],
  "JPH_Vec3" => [12, { x: 0, y: 4, z: 8 }],
  "JPH_Vec4" => [16, { x: 0, y: 4, z: 8, w: 12 }],
  "JPH_VehicleAntiRollBar" => [12, { left_wheel: 0, right_wheel: 4, stiffness: 8 }],
  "JPH_VehicleDifferentialSettings" => [24, { left_wheel: 0, right_wheel: 4, differential_ratio: 8, left_right_split: 12, limited_slip_ratio: 16, engine_torque_ratio: 20 }],
  "JPH_VehicleEngineSettings" => [32, { max_torque: 0, min_rpm: 4, max_rpm: 8, normalized_torque: 16, inertia: 24, angular_damping: 28 }],
  "JPH_VehicleTrackSettings" => [40, { driven_wheel: 0, wheels: 8, wheels_count: 16, inertia: 20, angular_damping: 24, max_brake_torque: 28, differential_ratio: 32 }],
  "JobSystemThreadPoolConfig" => [12, { max_jobs: 0, max_barriers: 4, num_threads: 8 }],
  "JPH_AABox" => [24, { min: 0, max: 12 }],
  "JPH_CharacterContact" => [120, { hash: 0, body_b: 8, character_idb: 12, sub_shape_idb: 16, position: 20, linear_velocity: 32, contact_normal: 44, surface_normal: 56, distance: 68, fraction: 72, motion_type_b: 76, is_sensor_b: 80, character_b: 88, user_data: 96, material: 104, had_collision: 112, was_discarded: 113, can_push_character: 114, is_back_facing_contact: 115 }],
  "JPH_CollideSettingsBase" => [28, { active_edge_mode: 0, collect_faces_mode: 4, collision_tolerance: 8, penetration_tolerance: 12, active_edge_movement_direction: 16 }],
  "JPH_CollideShapeResult" => [80, { contact_point_on1: 0, contact_point_on2: 12, penetration_axis: 24, penetration_depth: 36, sub_shape_id1: 40, sub_shape_id2: 44, body_id2: 48, shape1_face_count: 52, shape1_faces: 56, shape2_face_count: 64, shape2_faces: 72 }],
  "JPH_CollisionEstimationResult" => [112, { linear_velocity1: 0, angular_velocity1: 12, linear_velocity2: 24, angular_velocity2: 36, friction_point: 48, tangent1: 60, tangent2: 72, friction_impulse1: 84, friction_impulse2: 88, angular_friction_impulse: 92, contact_impulse_count: 96, contact_impulses: 104 }],
  "JPH_ConeConstraintSettings" => [88, { base: 0, space: 32, point1: 36, twist_axis1: 48, point2: 60, twist_axis2: 72, half_cone_angle: 84 }],
  "JPH_ContactSettings" => [52, { combined_friction: 0, combined_restitution: 4, inv_mass_scale1: 8, inv_inertia_scale1: 12, inv_mass_scale2: 16, inv_inertia_scale2: 20, is_sensor: 24, relative_linear_surface_velocity: 28, relative_angular_surface_velocity: 40 }],
  "JPH_DistanceConstraintSettings" => [80, { base: 0, space: 32, point1: 36, point2: 48, min_distance: 60, max_distance: 64, limits_spring_settings: 68 }],
  "JPH_ExtendedUpdateSettings" => [48, { stick_to_floor_step_down: 0, walk_stairs_step_up: 12, walk_stairs_min_step_forward: 24, walk_stairs_step_forward_test: 28, walk_stairs_cos_angle_forward_contact: 32, walk_stairs_step_down_extra: 36 }],
  "JPH_FixedConstraintSettings" => [112, { base: 0, space: 32, auto_detect_point: 36, point1: 40, axis_x1: 52, axis_y1: 64, point2: 76, axis_x2: 88, axis_y2: 100 }],
  "JPH_GearConstraintSettings" => [64, { base: 0, space: 32, hinge_axis1: 36, hinge_axis2: 48, ratio: 60 }],
  "JPH_Mat4" => [64, { column: 0 }],
  "JPH_MotorSettings" => [28, { spring_settings: 0, min_force_limit: 12, max_force_limit: 16, min_torque_limit: 20, max_torque_limit: 24 }],
  "JPH_Plane" => [16, { normal: 0, distance: 12 }],
  "JPH_PointConstraintSettings" => [64, { base: 0, space: 32, point1: 36, point2: 48 }],
  "JPH_ShapeCastResult" => [60, { contact_point_on1: 0, contact_point_on2: 12, penetration_axis: 24, penetration_depth: 36, sub_shape_id1: 40, sub_shape_id2: 44, body_id2: 48, fraction: 52, is_back_face_hit: 56 }],
  "JPH_SoftVertex" => [28, { position: 0, velocity: 12, inv_mass: 24 }],
  "JPH_SupportingFace" => [388, { count: 0, vertices: 4 }],
  "JPH_Triangle" => [40, { v1: 0, v2: 12, v3: 24, material_index: 36 }],
  "JPH_VehicleConstraintSettings" => [96, { base: 0, up: 32, forward: 44, max_pitch_roll_angle: 56, wheels_count: 60, wheels: 64, anti_roll_bars_count: 72, anti_roll_bars: 80, controller: 88 }],
  "JPH_CharacterBaseSettings" => [48, { up: 0, supporting_volume: 12, max_slope_angle: 28, enhanced_internal_edge_removal: 32, shape: 40 }],
  "JPH_CollideShapeSettings" => [36, { base: 0, max_separation_distance: 28, back_face_mode: 32 }],
  "JPH_HingeConstraintSettings" => [160, { base: 0, space: 32, point1: 36, hinge_axis1: 48, normal_axis1: 60, point2: 72, hinge_axis2: 84, normal_axis2: 96, limits_min: 108, limits_max: 112, limits_spring_settings: 116, max_friction_torque: 128, motor_settings: 132 }],
  "JPH_MassProperties" => [68, { mass: 0, inertia: 4 }],
  "JPH_ShapeCastSettings" => [40, { base: 0, back_face_mode_triangles: 28, back_face_mode_convex: 32, use_shrunken_shape_and_convex_radius: 36, return_deepest_point: 37 }],
  "JPH_SixDOFConstraintSettings" => [392, { base: 0, space: 32, position1: 36, axis_x1: 48, axis_y1: 60, position2: 72, axis_x2: 84, axis_y2: 96, max_friction: 108, swing_type: 132, limit_min: 136, limit_max: 160, limits_spring_settings: 184, motor_settings: 220 }],
  "JPH_SliderConstraintSettings" => [168, { base: 0, space: 32, auto_detect_point: 36, point1: 40, slider_axis1: 52, normal_axis1: 64, point2: 76, slider_axis2: 88, normal_axis2: 100, limits_min: 112, limits_max: 116, limits_spring_settings: 120, max_friction_force: 132, motor_settings: 136 }],
  "JPH_SwingTwistConstraintSettings" => [192, { base: 0, space: 32, position1: 36, twist_axis1: 48, plane_axis1: 60, position2: 72, twist_axis2: 84, plane_axis2: 96, swing_type: 108, normal_half_cone_angle: 112, plane_half_cone_angle: 116, twist_min_angle: 120, twist_max_angle: 124, max_friction_torque: 128, swing_motor_settings: 132, twist_motor_settings: 160 }],
  "JPH_CharacterSettings" => [72, { base: 0, layer: 48, mass: 52, friction: 56, gravity_factor: 60, allowed_do_fs: 64 }],
  "JPH_CharacterVirtualSettings" => [128, { base: 0, id: 48, mass: 52, max_strength: 56, shape_offset: 60, back_face_mode: 72, predictive_contact_distance: 76, max_collision_iterations: 80, max_constraint_iterations: 84, min_time_remaining: 88, collision_tolerance: 92, character_padding: 96, max_num_hits: 100, hit_reduction_cos_max_angle: 104, penetration_recovery_speed: 108, inner_body_shape: 112, inner_body_id_override: 120, inner_body_layer: 124 }],
}.freeze
BLOCKING_FUNCTIONS =
%i[JPH_PhysicsSystem_Update].freeze

Class Method Summary collapse

Class Method Details

.attach(native, names: FUNCTIONS.keys) ⇒ Object



1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
# File 'lib/jolt/native/generated.rb', line 1976

def attach(native, names: FUNCTIONS.keys)
  missing = []
  names.each do |name|
    arguments, result = FUNCTIONS.fetch(name)
    options = BLOCKING_FUNCTIONS.include?(name) ? { blocking: true } : {}
    begin
      native.attach_function(name, arguments, result, **options)
    rescue FFI::NotFoundError
      missing << name
    end
  end
  @missing_functions = missing.freeze
end

.missing_functionsObject



1990
1991
1992
# File 'lib/jolt/native/generated.rb', line 1990

def missing_functions
  @missing_functions || [].freeze
end