csbindgen/dotnet-sandbox/bullet3_bindgen.cs

1813 lines
112 KiB
C#
Raw Normal View History

2023-02-27 22:18:10 +00:00
// <auto-generated>
// This code is generated via csbindgen.
// DON'T CHANGE THIS DIRECTLY.
// </auto-generated>
using System;
using System.Runtime.InteropServices;
namespace CsBindgen
{
public static unsafe partial class LibBullet3
{
const string __DllName = "libbullet3";
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3PhysicsClientHandle__* b3ConnectSharedMemory(int key);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3PhysicsClientHandle__* b3ConnectSharedMemory2(int key);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3PhysicsClientHandle__* b3ConnectPhysicsDirect();
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3DisconnectSharedMemory(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CanSubmitCommand(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryStatusHandle__* b3SubmitClientCommandAndWaitStatus(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3SubmitClientCommand(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryStatusHandle__* b3ProcessServerStatus(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusType(b3SharedMemoryStatusHandle__* statusHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CreateCustomCommand(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CustomCommandLoadPlugin(b3SharedMemoryCommandHandle__* commandHandle, byte* pluginPath);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CustomCommandLoadPluginSetPostFix(b3SharedMemoryCommandHandle__* commandHandle, byte* postFix);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusPluginUniqueId(b3SharedMemoryStatusHandle__* statusHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusPluginCommandResult(b3SharedMemoryStatusHandle__* statusHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusPluginCommandReturnData(b3PhysicsClientHandle__* physClient, b3UserDataValue* valueOut);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CustomCommandUnloadPlugin(b3SharedMemoryCommandHandle__* commandHandle, int pluginUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CustomCommandExecutePluginCommand(b3SharedMemoryCommandHandle__* commandHandle, int pluginUniqueId, byte* textArguments);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CustomCommandExecuteAddIntArgument(b3SharedMemoryCommandHandle__* commandHandle, int intVal);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CustomCommandExecuteAddFloatArgument(b3SharedMemoryCommandHandle__* commandHandle, float floatVal);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusBodyIndices(b3SharedMemoryStatusHandle__* statusHandle, int* bodyIndicesOut, int bodyIndicesCapacity);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusBodyIndex(b3SharedMemoryStatusHandle__* statusHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusActualState(b3SharedMemoryStatusHandle__* statusHandle, int* bodyUniqueId, int* numDegreeOfFreedomQ, int* numDegreeOfFreedomU, double** rootLocalInertialFrame, double** actualStateQ, double** actualStateQdot, double** jointReactionForces);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusActualState2(b3SharedMemoryStatusHandle__* statusHandle, int* bodyUniqueId, int* numLinks, int* numDegreeOfFreedomQ, int* numDegreeOfFreedomU, double** rootLocalInertialFrame, double** actualStateQ, double** actualStateQdot, double** jointReactionForces, double** linkLocalInertialFrames, double** jointMotorForces, double** linkStates, double** linkWorldVelocities);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3RequestCollisionInfoCommandInit(b3PhysicsClientHandle__* physClient, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusAABB(b3SharedMemoryStatusHandle__* statusHandle, int linkIndex, double* aabbMin, double* aabbMax);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitSyncBodyInfoCommand(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRequestBodyInfoCommand(b3PhysicsClientHandle__* physClient, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRemoveBodyCommand(b3PhysicsClientHandle__* physClient, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetNumBodies(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetBodyUniqueId(b3PhysicsClientHandle__* physClient, int serialIndex);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetBodyInfo(b3PhysicsClientHandle__* physClient, int bodyUniqueId, b3BodyInfo* info);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetNumJoints(b3PhysicsClientHandle__* physClient, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetNumDofs(b3PhysicsClientHandle__* physClient, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ComputeDofCount(b3PhysicsClientHandle__* physClient, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetJointInfo(b3PhysicsClientHandle__* physClient, int bodyUniqueId, int jointIndex, b3JointInfo* info);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitSyncUserDataCommand(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3AddBodyToSyncUserDataRequest(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitAddUserDataCommand(b3PhysicsClientHandle__* physClient, int bodyUniqueId, int linkIndex, int visualShapeIndex, byte* key, int valueType, int valueLength, void* valueData);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRemoveUserDataCommand(b3PhysicsClientHandle__* physClient, int userDataId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetUserData(b3PhysicsClientHandle__* physClient, int userDataId, b3UserDataValue* valueOut);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetUserDataId(b3PhysicsClientHandle__* physClient, int bodyUniqueId, int linkIndex, int visualShapeIndex, byte* key);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetUserDataIdFromStatus(b3SharedMemoryStatusHandle__* statusHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetNumUserData(b3PhysicsClientHandle__* physClient, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetUserDataInfo(b3PhysicsClientHandle__* physClient, int bodyUniqueId, int userDataIndex, byte** keyOut, int* userDataIdOut, int* linkIndexOut, int* visualShapeIndexOut);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3GetDynamicsInfoCommandInit(b3PhysicsClientHandle__* physClient, int bodyUniqueId, int linkIndex);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3GetDynamicsInfoCommandInit2(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetDynamicsInfo(b3SharedMemoryStatusHandle__* statusHandle, b3DynamicsInfo* info);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitChangeDynamicsInfo(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitChangeDynamicsInfo2(b3SharedMemoryCommandHandle__* commandHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetMass(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double mass);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetLocalInertiaDiagonal(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double* localInertiaDiagonal);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetAnisotropicFriction(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double* anisotropicFriction);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetJointLimit(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double jointLowerLimit, double jointUpperLimit);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetJointLimitForce(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double jointLimitForce);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetDynamicType(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, int dynamicType);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetSleepThreshold(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, double sleepThreshold);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetLateralFriction(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double lateralFriction);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetSpinningFriction(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double friction);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetRollingFriction(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double friction);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetRestitution(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double restitution);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetLinearDamping(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, double linearDamping);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetAngularDamping(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, double angularDamping);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetJointDamping(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double jointDamping);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetContactStiffnessAndDamping(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double contactStiffness, double contactDamping);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetFrictionAnchor(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, int frictionAnchor);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetCcdSweptSphereRadius(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double ccdSweptSphereRadius);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetContactProcessingThreshold(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkIndex, double contactProcessingThreshold);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetActivationState(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int activationState);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetMaxJointVelocity(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, double maxJointVelocity);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3ChangeDynamicsInfoSetCollisionMargin(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, double collisionMargin);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitCreateUserConstraintCommand(b3PhysicsClientHandle__* physClient, int parentBodyUniqueId, int parentJointIndex, int childBodyUniqueId, int childJointIndex, b3JointInfo* info);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitCreateUserConstraintCommand2(b3SharedMemoryCommandHandle__* commandHandle, int parentBodyUniqueId, int parentJointIndex, int childBodyUniqueId, int childJointIndex, b3JointInfo* info);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusUserConstraintUniqueId(b3SharedMemoryStatusHandle__* statusHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitChangeUserConstraintCommand(b3PhysicsClientHandle__* physClient, int userConstraintUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3InitChangeUserConstraintSetPivotInB(b3SharedMemoryCommandHandle__* commandHandle, double* jointChildPivot);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3InitChangeUserConstraintSetFrameInB(b3SharedMemoryCommandHandle__* commandHandle, double* jointChildFrameOrn);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3InitChangeUserConstraintSetMaxForce(b3SharedMemoryCommandHandle__* commandHandle, double maxAppliedForce);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3InitChangeUserConstraintSetGearRatio(b3SharedMemoryCommandHandle__* commandHandle, double gearRatio);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3InitChangeUserConstraintSetGearAuxLink(b3SharedMemoryCommandHandle__* commandHandle, int gearAuxLink);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3InitChangeUserConstraintSetRelativePositionTarget(b3SharedMemoryCommandHandle__* commandHandle, double relativePositionTarget);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3InitChangeUserConstraintSetERP(b3SharedMemoryCommandHandle__* commandHandle, double erp);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRemoveUserConstraintCommand(b3PhysicsClientHandle__* physClient, int userConstraintUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetNumUserConstraints(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitGetUserConstraintStateCommand(b3PhysicsClientHandle__* physClient, int constraintUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusUserConstraintState(b3SharedMemoryStatusHandle__* statusHandle, b3UserConstraintState* constraintState);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetUserConstraintInfo(b3PhysicsClientHandle__* physClient, int constraintUniqueId, b3UserConstraint* info);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetUserConstraintId(b3PhysicsClientHandle__* physClient, int serialIndex);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRequestDebugLinesCommand(b3PhysicsClientHandle__* physClient, int debugMode);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetDebugLines(b3PhysicsClientHandle__* physClient, b3DebugLines* lines);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitConfigureOpenGLVisualizer(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitConfigureOpenGLVisualizer2(b3SharedMemoryCommandHandle__* commandHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ConfigureOpenGLVisualizerSetVisualizationFlags(b3SharedMemoryCommandHandle__* commandHandle, int flag, int enabled);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ConfigureOpenGLVisualizerSetLightPosition(b3SharedMemoryCommandHandle__* commandHandle, float* lightPosition);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ConfigureOpenGLVisualizerSetShadowMapResolution(b3SharedMemoryCommandHandle__* commandHandle, int shadowMapResolution);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ConfigureOpenGLVisualizerSetShadowMapIntensity(b3SharedMemoryCommandHandle__* commandHandle, double shadowMapIntensity);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ConfigureOpenGLVisualizerSetLightRgbBackground(b3SharedMemoryCommandHandle__* commandHandle, float* rgbBackground);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ConfigureOpenGLVisualizerSetShadowMapWorldSize(b3SharedMemoryCommandHandle__* commandHandle, int shadowMapWorldSize);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ConfigureOpenGLVisualizerSetRemoteSyncTransformInterval(b3SharedMemoryCommandHandle__* commandHandle, double remoteSyncTransformInterval);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ConfigureOpenGLVisualizerSetViewMatrix(b3SharedMemoryCommandHandle__* commandHandle, float cameraDistance, float cameraPitch, float cameraYaw, float* cameraTargetPosition);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRequestOpenGLVisualizerCameraCommand(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusOpenGLVisualizerCamera(b3SharedMemoryStatusHandle__* statusHandle, b3OpenGLVisualizerCameraInfo* camera);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitUserDebugDrawAddLine3D(b3PhysicsClientHandle__* physClient, double* fromXYZ, double* toXYZ, double* colorRGB, double lineWidth, double lifeTime);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitUserDebugDrawAddPoints3D(b3PhysicsClientHandle__* physClient, double* positionsXYZ, double* colorsRGB, double pointSize, double lifeTime, int pointNum);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitUserDebugDrawAddText3D(b3PhysicsClientHandle__* physClient, byte* txt, double* positionXYZ, double* colorRGB, double textSize, double lifeTime);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3UserDebugTextSetOptionFlags(b3SharedMemoryCommandHandle__* commandHandle, int optionFlags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3UserDebugTextSetOrientation(b3SharedMemoryCommandHandle__* commandHandle, double* orientation);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3UserDebugItemSetReplaceItemUniqueId(b3SharedMemoryCommandHandle__* commandHandle, int replaceItem);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3UserDebugItemSetParentObject(b3SharedMemoryCommandHandle__* commandHandle, int objectUniqueId, int linkIndex);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitUserDebugAddParameter(b3PhysicsClientHandle__* physClient, byte* txt, double rangeMin, double rangeMax, double startValue);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitUserDebugReadParameter(b3PhysicsClientHandle__* physClient, int debugItemUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusDebugParameterValue(b3SharedMemoryStatusHandle__* statusHandle, double* paramValue);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitUserDebugDrawRemove(b3PhysicsClientHandle__* physClient, int debugItemUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitUserDebugDrawRemoveAll(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitUserRemoveAllParameters(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitDebugDrawingCommand(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetDebugObjectColor(b3SharedMemoryCommandHandle__* commandHandle, int objectUniqueId, int linkIndex, double* objectColorRGB);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RemoveDebugObjectColor(b3SharedMemoryCommandHandle__* commandHandle, int objectUniqueId, int linkIndex);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetDebugItemUniqueId(b3SharedMemoryStatusHandle__* statusHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRequestCameraImage(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRequestCameraImage2(b3SharedMemoryCommandHandle__* commandHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetCameraMatrices(b3SharedMemoryCommandHandle__* commandHandle, float* viewMatrix, float* projectionMatrix);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetPixelResolution(b3SharedMemoryCommandHandle__* commandHandle, int width, int height);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetLightDirection(b3SharedMemoryCommandHandle__* commandHandle, float* lightDirection);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetLightColor(b3SharedMemoryCommandHandle__* commandHandle, float* lightColor);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetLightDistance(b3SharedMemoryCommandHandle__* commandHandle, float lightDistance);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetLightAmbientCoeff(b3SharedMemoryCommandHandle__* commandHandle, float lightAmbientCoeff);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetLightDiffuseCoeff(b3SharedMemoryCommandHandle__* commandHandle, float lightDiffuseCoeff);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetLightSpecularCoeff(b3SharedMemoryCommandHandle__* commandHandle, float lightSpecularCoeff);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetShadow(b3SharedMemoryCommandHandle__* commandHandle, int hasShadow);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSelectRenderer(b3SharedMemoryCommandHandle__* commandHandle, int renderer);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetFlags(b3SharedMemoryCommandHandle__* commandHandle, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetCameraImageData(b3PhysicsClientHandle__* physClient, b3CameraImageData* imageData);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetProjectiveTextureMatrices(b3SharedMemoryCommandHandle__* commandHandle, float* viewMatrix, float* projectionMatrix);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ComputeViewMatrixFromPositions(float* cameraPosition, float* cameraTargetPosition, float* cameraUp, float* viewMatrix);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ComputeViewMatrixFromYawPitchRoll(float* cameraTargetPosition, float distance, float yaw, float pitch, float roll, int upAxis, float* viewMatrix);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ComputePositionFromViewMatrix(float* viewMatrix, float* cameraPosition, float* cameraTargetPosition, float* cameraUp);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ComputeProjectionMatrix(float left, float right, float bottom, float top, float nearVal, float farVal, float* projectionMatrix);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ComputeProjectionMatrixFOV(float fov, float aspect, float nearVal, float farVal, float* projectionMatrix);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetViewMatrix(b3SharedMemoryCommandHandle__* commandHandle, float* cameraPosition, float* cameraTargetPosition, float* cameraUp);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetViewMatrix2(b3SharedMemoryCommandHandle__* commandHandle, float* cameraTargetPosition, float distance, float yaw, float pitch, float roll, int upAxis);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetProjectionMatrix(b3SharedMemoryCommandHandle__* commandHandle, float left, float right, float bottom, float top, float nearVal, float farVal);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RequestCameraImageSetFOVProjectionMatrix(b3SharedMemoryCommandHandle__* commandHandle, float fov, float aspect, float nearVal, float farVal);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRequestContactPointInformation(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetContactFilterBodyA(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueIdA);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetContactFilterBodyB(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueIdB);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetContactFilterLinkA(b3SharedMemoryCommandHandle__* commandHandle, int linkIndexA);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetContactFilterLinkB(b3SharedMemoryCommandHandle__* commandHandle, int linkIndexB);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetContactPointInformation(b3PhysicsClientHandle__* physClient, b3ContactInformation* contactPointData);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitClosestDistanceQuery(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetClosestDistanceFilterBodyA(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueIdA);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetClosestDistanceFilterLinkA(b3SharedMemoryCommandHandle__* commandHandle, int linkIndexA);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetClosestDistanceFilterBodyB(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueIdB);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetClosestDistanceFilterLinkB(b3SharedMemoryCommandHandle__* commandHandle, int linkIndexB);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetClosestDistanceThreshold(b3SharedMemoryCommandHandle__* commandHandle, double distance);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetClosestDistanceFilterCollisionShapeA(b3SharedMemoryCommandHandle__* commandHandle, int collisionShapeA);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetClosestDistanceFilterCollisionShapeB(b3SharedMemoryCommandHandle__* commandHandle, int collisionShapeB);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetClosestDistanceFilterCollisionShapePositionA(b3SharedMemoryCommandHandle__* commandHandle, double* collisionShapePositionA);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetClosestDistanceFilterCollisionShapePositionB(b3SharedMemoryCommandHandle__* commandHandle, double* collisionShapePositionB);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetClosestDistanceFilterCollisionShapeOrientationA(b3SharedMemoryCommandHandle__* commandHandle, double* collisionShapeOrientationA);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetClosestDistanceFilterCollisionShapeOrientationB(b3SharedMemoryCommandHandle__* commandHandle, double* collisionShapeOrientationB);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetClosestPointInformation(b3PhysicsClientHandle__* physClient, b3ContactInformation* contactPointInfo);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitAABBOverlapQuery(b3PhysicsClientHandle__* physClient, double* aabbMin, double* aabbMax);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetAABBOverlapResults(b3PhysicsClientHandle__* physClient, b3AABBOverlapData* data);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRequestVisualShapeInformation(b3PhysicsClientHandle__* physClient, int bodyUniqueIdA);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetVisualShapeInformation(b3PhysicsClientHandle__* physClient, b3VisualShapeInformation* visualShapeInfo);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRequestCollisionShapeInformation(b3PhysicsClientHandle__* physClient, int bodyUniqueId, int linkIndex);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetCollisionShapeInformation(b3PhysicsClientHandle__* physClient, b3CollisionShapeInformation* collisionShapeInfo);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitLoadTexture(b3PhysicsClientHandle__* physClient, byte* filename);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusTextureUniqueId(b3SharedMemoryStatusHandle__* statusHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CreateChangeTextureCommandInit(b3PhysicsClientHandle__* physClient, int textureUniqueId, int width, int height, byte* rgbPixels);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitUpdateVisualShape(b3PhysicsClientHandle__* physClient, int bodyUniqueId, int jointIndex, int shapeIndex, int textureUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitUpdateVisualShape2(b3PhysicsClientHandle__* physClient, int bodyUniqueId, int jointIndex, int shapeIndex);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3UpdateVisualShapeTexture(b3SharedMemoryCommandHandle__* commandHandle, int textureUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3UpdateVisualShapeRGBAColor(b3SharedMemoryCommandHandle__* commandHandle, double* rgbaColor);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3UpdateVisualShapeFlags(b3SharedMemoryCommandHandle__* commandHandle, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3UpdateVisualShapeSpecularColor(b3SharedMemoryCommandHandle__* commandHandle, double* specularColor);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitPhysicsParamCommand(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitPhysicsParamCommand2(b3SharedMemoryCommandHandle__* commandHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetGravity(b3SharedMemoryCommandHandle__* commandHandle, double gravx, double gravy, double gravz);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetTimeStep(b3SharedMemoryCommandHandle__* commandHandle, double timeStep);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetDefaultContactERP(b3SharedMemoryCommandHandle__* commandHandle, double defaultContactERP);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetDefaultNonContactERP(b3SharedMemoryCommandHandle__* commandHandle, double defaultNonContactERP);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetDefaultFrictionERP(b3SharedMemoryCommandHandle__* commandHandle, double frictionERP);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetDefaultGlobalCFM(b3SharedMemoryCommandHandle__* commandHandle, double defaultGlobalCFM);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetDefaultFrictionCFM(b3SharedMemoryCommandHandle__* commandHandle, double frictionCFM);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetNumSubSteps(b3SharedMemoryCommandHandle__* commandHandle, int numSubSteps);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetRealTimeSimulation(b3SharedMemoryCommandHandle__* commandHandle, int enableRealTimeSimulation);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetNumSolverIterations(b3SharedMemoryCommandHandle__* commandHandle, int numSolverIterations);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetNumNonContactInnerIterations(b3SharedMemoryCommandHandle__* commandHandle, int numMotorIterations);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetWarmStartingFactor(b3SharedMemoryCommandHandle__* commandHandle, double warmStartingFactor);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetArticulatedWarmStartingFactor(b3SharedMemoryCommandHandle__* commandHandle, double warmStartingFactor);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetCollisionFilterMode(b3SharedMemoryCommandHandle__* commandHandle, int filterMode);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetUseSplitImpulse(b3SharedMemoryCommandHandle__* commandHandle, int useSplitImpulse);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetSplitImpulsePenetrationThreshold(b3SharedMemoryCommandHandle__* commandHandle, double splitImpulsePenetrationThreshold);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetContactBreakingThreshold(b3SharedMemoryCommandHandle__* commandHandle, double contactBreakingThreshold);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetMaxNumCommandsPer1ms(b3SharedMemoryCommandHandle__* commandHandle, int maxNumCmdPer1ms);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetEnableFileCaching(b3SharedMemoryCommandHandle__* commandHandle, int enableFileCaching);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetRestitutionVelocityThreshold(b3SharedMemoryCommandHandle__* commandHandle, double restitutionVelocityThreshold);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetEnableConeFriction(b3SharedMemoryCommandHandle__* commandHandle, int enableConeFriction);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParameterSetDeterministicOverlappingPairs(b3SharedMemoryCommandHandle__* commandHandle, int deterministicOverlappingPairs);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParameterSetAllowedCcdPenetration(b3SharedMemoryCommandHandle__* commandHandle, double allowedCcdPenetration);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParameterSetJointFeedbackMode(b3SharedMemoryCommandHandle__* commandHandle, int jointFeedbackMode);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetSolverResidualThreshold(b3SharedMemoryCommandHandle__* commandHandle, double solverResidualThreshold);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetContactSlop(b3SharedMemoryCommandHandle__* commandHandle, double contactSlop);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParameterSetEnableSAT(b3SharedMemoryCommandHandle__* commandHandle, int enableSAT);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParameterSetConstraintSolverType(b3SharedMemoryCommandHandle__* commandHandle, int constraintSolverType);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParameterSetMinimumSolverIslandSize(b3SharedMemoryCommandHandle__* commandHandle, int minimumSolverIslandSize);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetSolverAnalytics(b3SharedMemoryCommandHandle__* commandHandle, int reportSolverAnalytics);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParameterSetSparseSdfVoxelSize(b3SharedMemoryCommandHandle__* commandHandle, double sparseSdfVoxelSize);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRequestPhysicsParamCommand(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusPhysicsSimulationParameters(b3SharedMemoryStatusHandle__* statusHandle, b3PhysicsSimulationParameters* @params);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3PhysicsParamSetInternalSimFlags(b3SharedMemoryCommandHandle__* commandHandle, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitStepSimulationCommand(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitStepSimulationCommand2(b3SharedMemoryCommandHandle__* commandHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitPerformCollisionDetectionCommand(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusForwardDynamicsAnalyticsData(b3SharedMemoryStatusHandle__* statusHandle, b3ForwardDynamicsAnalyticsArgs* analyticsData);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitResetSimulationCommand(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitResetSimulationCommand2(b3SharedMemoryCommandHandle__* commandHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3InitResetSimulationSetFlags(b3SharedMemoryCommandHandle__* commandHandle, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3LoadUrdfCommandInit(b3PhysicsClientHandle__* physClient, byte* urdfFileName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3LoadUrdfCommandInit2(b3SharedMemoryCommandHandle__* commandHandle, byte* urdfFileName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadUrdfCommandSetStartPosition(b3SharedMemoryCommandHandle__* commandHandle, double startPosX, double startPosY, double startPosZ);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadUrdfCommandSetStartOrientation(b3SharedMemoryCommandHandle__* commandHandle, double startOrnX, double startOrnY, double startOrnZ, double startOrnW);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadUrdfCommandSetUseMultiBody(b3SharedMemoryCommandHandle__* commandHandle, int useMultiBody);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadUrdfCommandSetUseFixedBase(b3SharedMemoryCommandHandle__* commandHandle, int useFixedBase);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadUrdfCommandSetFlags(b3SharedMemoryCommandHandle__* commandHandle, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadUrdfCommandSetGlobalScaling(b3SharedMemoryCommandHandle__* commandHandle, double globalScaling);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3SaveStateCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRemoveStateCommand(b3PhysicsClientHandle__* physClient, int stateId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusGetStateId(b3SharedMemoryStatusHandle__* statusHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3LoadStateCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadStateSetStateId(b3SharedMemoryCommandHandle__* commandHandle, int stateId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadStateSetFileName(b3SharedMemoryCommandHandle__* commandHandle, byte* fileName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3LoadBulletCommandInit(b3PhysicsClientHandle__* physClient, byte* fileName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3SaveBulletCommandInit(b3PhysicsClientHandle__* physClient, byte* fileName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3LoadMJCFCommandInit(b3PhysicsClientHandle__* physClient, byte* fileName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3LoadMJCFCommandInit2(b3SharedMemoryCommandHandle__* commandHandle, byte* fileName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3LoadMJCFCommandSetFlags(b3SharedMemoryCommandHandle__* commandHandle, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3LoadMJCFCommandSetUseMultiBody(b3SharedMemoryCommandHandle__* commandHandle, int useMultiBody);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CalculateInverseDynamicsCommandInit(b3PhysicsClientHandle__* physClient, int bodyUniqueId, double* jointPositionsQ, double* jointVelocitiesQdot, double* jointAccelerations);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CalculateInverseDynamicsCommandInit2(b3PhysicsClientHandle__* physClient, int bodyUniqueId, double* jointPositionsQ, int dofCountQ, double* jointVelocitiesQdot, double* jointAccelerations, int dofCountQdot);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateInverseDynamicsSetFlags(b3SharedMemoryCommandHandle__* commandHandle, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusInverseDynamicsJointForces(b3SharedMemoryStatusHandle__* statusHandle, int* bodyUniqueId, int* dofCount, double* jointForces);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CalculateJacobianCommandInit(b3PhysicsClientHandle__* physClient, int bodyUniqueId, int linkIndex, double* localPosition, double* jointPositionsQ, double* jointVelocitiesQdot, double* jointAccelerations);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusJacobian(b3SharedMemoryStatusHandle__* statusHandle, int* dofCount, double* linearJacobian, double* angularJacobian);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CalculateMassMatrixCommandInit(b3PhysicsClientHandle__* physClient, int bodyUniqueId, double* jointPositionsQ, int dofCountQ);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateMassMatrixSetFlags(b3SharedMemoryCommandHandle__* commandHandle, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusMassMatrix(b3PhysicsClientHandle__* physClient, b3SharedMemoryStatusHandle__* statusHandle, int* dofCount, double* massMatrix);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CalculateInverseKinematicsCommandInit(b3PhysicsClientHandle__* physClient, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateInverseKinematicsAddTargetPurePosition(b3SharedMemoryCommandHandle__* commandHandle, int endEffectorLinkIndex, double* targetPosition);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateInverseKinematicsAddTargetsPurePosition(b3SharedMemoryCommandHandle__* commandHandle, int numEndEffectorLinkIndices, int* endEffectorIndices, double* targetPositions);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateInverseKinematicsAddTargetPositionWithOrientation(b3SharedMemoryCommandHandle__* commandHandle, int endEffectorLinkIndex, double* targetPosition, double* targetOrientation);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateInverseKinematicsPosWithNullSpaceVel(b3SharedMemoryCommandHandle__* commandHandle, int numDof, int endEffectorLinkIndex, double* targetPosition, double* lowerLimit, double* upperLimit, double* jointRange, double* restPose);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateInverseKinematicsPosOrnWithNullSpaceVel(b3SharedMemoryCommandHandle__* commandHandle, int numDof, int endEffectorLinkIndex, double* targetPosition, double* targetOrientation, double* lowerLimit, double* upperLimit, double* jointRange, double* restPose);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateInverseKinematicsSetJointDamping(b3SharedMemoryCommandHandle__* commandHandle, int numDof, double* jointDampingCoeff);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateInverseKinematicsSelectSolver(b3SharedMemoryCommandHandle__* commandHandle, int solver);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusInverseKinematicsJointPositions(b3SharedMemoryStatusHandle__* statusHandle, int* bodyUniqueId, int* dofCount, double* jointPositions);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateInverseKinematicsSetCurrentPositions(b3SharedMemoryCommandHandle__* commandHandle, int numDof, double* currentJointPositions);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateInverseKinematicsSetMaxNumIterations(b3SharedMemoryCommandHandle__* commandHandle, int maxNumIterations);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateInverseKinematicsSetResidualThreshold(b3SharedMemoryCommandHandle__* commandHandle, double residualThreshold);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CollisionFilterCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetCollisionFilterPair(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueIdA, int bodyUniqueIdB, int linkIndexA, int linkIndexB, int enableCollision);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetCollisionFilterGroupMask(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueIdA, int linkIndexA, int collisionFilterGroup, int collisionFilterMask);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3LoadSdfCommandInit(b3PhysicsClientHandle__* physClient, byte* sdfFileName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3LoadSdfCommandInit2(b3SharedMemoryCommandHandle__* commandHandle, byte* sdfFileName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSdfCommandSetUseMultiBody(b3SharedMemoryCommandHandle__* commandHandle, int useMultiBody);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSdfCommandSetUseGlobalScaling(b3SharedMemoryCommandHandle__* commandHandle, double globalScaling);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3SaveWorldCommandInit(b3PhysicsClientHandle__* physClient, byte* sdfFileName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3JointControlCommandInit(b3PhysicsClientHandle__* physClient, int controlMode);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3JointControlCommandInit2(b3PhysicsClientHandle__* physClient, int bodyUniqueId, int controlMode);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3JointControlCommandInit2Internal(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int controlMode);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetDesiredPosition(b3SharedMemoryCommandHandle__* commandHandle, int qIndex, double value);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetDesiredPositionMultiDof(b3SharedMemoryCommandHandle__* commandHandle, int qIndex, double* position, int dofCount);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetKp(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double value);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetKpMultiDof(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double* kps, int dofCount);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetKd(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double value);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetKdMultiDof(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double* kds, int dofCount);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetMaximumVelocity(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double maximumVelocity);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetDesiredVelocity(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double value);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetDesiredVelocityMultiDof(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double* velocity, int dofCount);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetDesiredVelocityMultiDof2(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double* velocity, int dofCount);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetMaximumForce(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double value);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetDesiredForceTorqueMultiDof(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double* forces, int dofCount);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetDamping(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double value);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetDampingMultiDof(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double* damping, int dofCount);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3JointControlSetDesiredForceTorque(b3SharedMemoryCommandHandle__* commandHandle, int dofIndex, double value);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CreateCollisionShapeCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateCollisionShapeAddSphere(b3SharedMemoryCommandHandle__* commandHandle, double radius);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateCollisionShapeAddBox(b3SharedMemoryCommandHandle__* commandHandle, double* halfExtents);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateCollisionShapeAddCapsule(b3SharedMemoryCommandHandle__* commandHandle, double radius, double height);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateCollisionShapeAddCylinder(b3SharedMemoryCommandHandle__* commandHandle, double radius, double height);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateCollisionShapeAddHeightfield(b3SharedMemoryCommandHandle__* commandHandle, byte* fileName, double* meshScale, double textureScaling);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateCollisionShapeAddHeightfield2(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle, double* meshScale, double textureScaling, float* heightfieldData, int numHeightfieldRows, int numHeightfieldColumns, int replaceHeightfieldIndex);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateCollisionShapeAddPlane(b3SharedMemoryCommandHandle__* commandHandle, double* planeNormal, double planeConstant);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateCollisionShapeAddMesh(b3SharedMemoryCommandHandle__* commandHandle, byte* fileName, double* meshScale);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateCollisionShapeAddConvexMesh(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle, double* meshScale, double* vertices, int numVertices);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateCollisionShapeAddConcaveMesh(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle, double* meshScale, double* vertices, int numVertices, int* indices, int numIndices);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CreateCollisionSetFlag(b3SharedMemoryCommandHandle__* commandHandle, int shapeIndex, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CreateCollisionShapeSetChildTransform(b3SharedMemoryCommandHandle__* commandHandle, int shapeIndex, double* childPosition, double* childOrientation);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusCollisionShapeUniqueId(b3SharedMemoryStatusHandle__* statusHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitRemoveCollisionShapeCommand(b3PhysicsClientHandle__* physClient, int collisionShapeId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3GetMeshDataCommandInit(b3PhysicsClientHandle__* physClient, int bodyUniqueId, int linkIndex);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3GetTetraMeshDataCommandInit(b3PhysicsClientHandle__* physClient, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetMeshDataSimulationMesh(b3SharedMemoryCommandHandle__* commandHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3MeshDataSimulationMeshVelocity(b3SharedMemoryCommandHandle__* commandHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetMeshDataSetCollisionShapeIndex(b3SharedMemoryCommandHandle__* commandHandle, int shapeIndex);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetMeshDataSetFlags(b3SharedMemoryCommandHandle__* commandHandle, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetTetraMeshDataSetFlags(b3SharedMemoryCommandHandle__* commandHandle, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetMeshData(b3PhysicsClientHandle__* physClient, b3MeshData* meshData);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetTetraMeshData(b3PhysicsClientHandle__* physClient, b3TetraMeshData* meshData);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3ResetMeshDataCommandInit(b3PhysicsClientHandle__* physClient, int bodyUniqueId, int num_vertices, double* vertices);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CreateVisualShapeCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateVisualShapeAddSphere(b3SharedMemoryCommandHandle__* commandHandle, double radius);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateVisualShapeAddBox(b3SharedMemoryCommandHandle__* commandHandle, double* halfExtents);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateVisualShapeAddCapsule(b3SharedMemoryCommandHandle__* commandHandle, double radius, double height);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateVisualShapeAddCylinder(b3SharedMemoryCommandHandle__* commandHandle, double radius, double height);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateVisualShapeAddPlane(b3SharedMemoryCommandHandle__* commandHandle, double* planeNormal, double planeConstant);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateVisualShapeAddMesh(b3SharedMemoryCommandHandle__* commandHandle, byte* fileName, double* meshScale);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateVisualShapeAddMesh2(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle, double* meshScale, double* vertices, int numVertices, int* indices, int numIndices, double* normals, int numNormals, double* uvs, int numUVs);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CreateVisualSetFlag(b3SharedMemoryCommandHandle__* commandHandle, int shapeIndex, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CreateVisualShapeSetChildTransform(b3SharedMemoryCommandHandle__* commandHandle, int shapeIndex, double* childPosition, double* childOrientation);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CreateVisualShapeSetSpecularColor(b3SharedMemoryCommandHandle__* commandHandle, int shapeIndex, double* specularColor);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CreateVisualShapeSetRGBAColor(b3SharedMemoryCommandHandle__* commandHandle, int shapeIndex, double* rgbaColor);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusVisualShapeUniqueId(b3SharedMemoryStatusHandle__* statusHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CreateMultiBodyCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateMultiBodyBase(b3SharedMemoryCommandHandle__* commandHandle, double mass, int collisionShapeUnique, int visualShapeUniqueId, double* basePosition, double* baseOrientation, double* baseInertialFramePosition, double* baseInertialFrameOrientation);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateMultiBodyLink(b3SharedMemoryCommandHandle__* commandHandle, double linkMass, double linkCollisionShapeIndex, double linkVisualShapeIndex, double* linkPosition, double* linkOrientation, double* linkInertialFramePosition, double* linkInertialFrameOrientation, int linkParentIndex, int linkJointType, double* linkJointAxis);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateMultiBodySetBatchPositions(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle, double* batchPositions, int numBatchObjects);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CreateMultiBodyUseMaximalCoordinates(b3SharedMemoryCommandHandle__* commandHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CreateMultiBodySetFlags(b3SharedMemoryCommandHandle__* commandHandle, int flags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CreateBoxShapeCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateBoxCommandSetStartPosition(b3SharedMemoryCommandHandle__* commandHandle, double startPosX, double startPosY, double startPosZ);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateBoxCommandSetStartOrientation(b3SharedMemoryCommandHandle__* commandHandle, double startOrnX, double startOrnY, double startOrnZ, double startOrnW);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateBoxCommandSetHalfExtents(b3SharedMemoryCommandHandle__* commandHandle, double halfExtentsX, double halfExtentsY, double halfExtentsZ);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateBoxCommandSetMass(b3SharedMemoryCommandHandle__* commandHandle, double mass);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateBoxCommandSetCollisionShapeType(b3SharedMemoryCommandHandle__* commandHandle, int collisionShapeType);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateBoxCommandSetColorRGBA(b3SharedMemoryCommandHandle__* commandHandle, double red, double green, double blue, double alpha);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CreatePoseCommandInit(b3PhysicsClientHandle__* physClient, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CreatePoseCommandInit2(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetBasePosition(b3SharedMemoryCommandHandle__* commandHandle, double startPosX, double startPosY, double startPosZ);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetBaseOrientation(b3SharedMemoryCommandHandle__* commandHandle, double startOrnX, double startOrnY, double startOrnZ, double startOrnW);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetBaseLinearVelocity(b3SharedMemoryCommandHandle__* commandHandle, double* linVel);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetBaseAngularVelocity(b3SharedMemoryCommandHandle__* commandHandle, double* angVel);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetBaseScaling(b3SharedMemoryCommandHandle__* commandHandle, double* scaling);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetJointPositions(b3SharedMemoryCommandHandle__* commandHandle, int numJointPositions, double* jointPositions);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetJointPosition(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle, int jointIndex, double jointPosition);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetJointPositionMultiDof(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle, int jointIndex, double* jointPosition, int posSize);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetQ(b3SharedMemoryCommandHandle__* commandHandle, int numJointPositions, double* q, int* hasQ);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetQdots(b3SharedMemoryCommandHandle__* commandHandle, int numJointVelocities, double* qDots, int* hasQdots);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetJointVelocities(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle, int numJointVelocities, double* jointVelocities);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetJointVelocity(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle, int jointIndex, double jointVelocity);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreatePoseCommandSetJointVelocityMultiDof(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle, int jointIndex, double* jointVelocity, int velSize);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CreateSensorCommandInit(b3PhysicsClientHandle__* physClient, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateSensorEnable6DofJointForceTorqueSensor(b3SharedMemoryCommandHandle__* commandHandle, int jointIndex, int enable);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3CreateSensorEnableIMUForLink(b3SharedMemoryCommandHandle__* commandHandle, int linkIndex, int enable);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3RequestActualStateCommandInit(b3PhysicsClientHandle__* physClient, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3RequestActualStateCommandInit2(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3RequestActualStateCommandComputeLinkVelocity(b3SharedMemoryCommandHandle__* commandHandle, int computeLinkVelocity);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3RequestActualStateCommandComputeForwardKinematics(b3SharedMemoryCommandHandle__* commandHandle, int computeForwardKinematics);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetJointState(b3PhysicsClientHandle__* physClient, b3SharedMemoryStatusHandle__* statusHandle, int jointIndex, b3JointSensorState* state);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetJointStateMultiDof(b3PhysicsClientHandle__* physClient, b3SharedMemoryStatusHandle__* statusHandle, int jointIndex, b3JointSensorState2* state);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetLinkState(b3PhysicsClientHandle__* physClient, b3SharedMemoryStatusHandle__* statusHandle, int linkIndex, b3LinkState* state);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3PickBody(b3PhysicsClientHandle__* physClient, double rayFromWorldX, double rayFromWorldY, double rayFromWorldZ, double rayToWorldX, double rayToWorldY, double rayToWorldZ);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3MovePickedBody(b3PhysicsClientHandle__* physClient, double rayFromWorldX, double rayFromWorldY, double rayFromWorldZ, double rayToWorldX, double rayToWorldY, double rayToWorldZ);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3RemovePickingConstraint(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CreateRaycastCommandInit(b3PhysicsClientHandle__* physClient, double rayFromWorldX, double rayFromWorldY, double rayFromWorldZ, double rayToWorldX, double rayToWorldY, double rayToWorldZ);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3CreateRaycastBatchCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RaycastBatchSetNumThreads(b3SharedMemoryCommandHandle__* commandHandle, int numThreads);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RaycastBatchAddRay(b3SharedMemoryCommandHandle__* commandHandle, double* rayFromWorld, double* rayToWorld);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RaycastBatchAddRays(b3PhysicsClientHandle__* physClient, b3SharedMemoryCommandHandle__* commandHandle, double* rayFromWorld, double* rayToWorld, int numRays);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RaycastBatchSetParentObject(b3SharedMemoryCommandHandle__* commandHandle, int parentObjectUniqueId, int parentLinkIndex);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RaycastBatchSetReportHitNumber(b3SharedMemoryCommandHandle__* commandHandle, int reportHitNumber);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RaycastBatchSetCollisionFilterMask(b3SharedMemoryCommandHandle__* commandHandle, int collisionFilterMask);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RaycastBatchSetFractionEpsilon(b3SharedMemoryCommandHandle__* commandHandle, double fractionEpsilon);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetRaycastInformation(b3PhysicsClientHandle__* physClient, b3RaycastInformation* raycastInfo);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3ApplyExternalForceCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ApplyExternalForce(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkId, double* force, double* position, int flag);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3ApplyExternalTorque(b3SharedMemoryCommandHandle__* commandHandle, int bodyUniqueId, int linkId, double* torque, int flag);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3LoadSoftBodyCommandInit(b3PhysicsClientHandle__* physClient, byte* fileName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodySetScale(b3SharedMemoryCommandHandle__* commandHandle, double scale);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodySetMass(b3SharedMemoryCommandHandle__* commandHandle, double mass);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodySetCollisionMargin(b3SharedMemoryCommandHandle__* commandHandle, double collisionMargin);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodySetStartPosition(b3SharedMemoryCommandHandle__* commandHandle, double startPosX, double startPosY, double startPosZ);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodySetStartOrientation(b3SharedMemoryCommandHandle__* commandHandle, double startOrnX, double startOrnY, double startOrnZ, double startOrnW);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodyUpdateSimMesh(b3SharedMemoryCommandHandle__* commandHandle, byte* filename);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodyAddCorotatedForce(b3SharedMemoryCommandHandle__* commandHandle, double corotatedMu, double corotatedLambda);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodyAddNeoHookeanForce(b3SharedMemoryCommandHandle__* commandHandle, double NeoHookeanMu, double NeoHookeanLambda, double NeoHookeanDamping);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodyAddMassSpringForce(b3SharedMemoryCommandHandle__* commandHandle, double springElasticStiffness, double springDampingStiffness);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodyAddGravityForce(b3SharedMemoryCommandHandle__* commandHandle, double gravityX, double gravityY, double gravityZ);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodySetCollisionHardness(b3SharedMemoryCommandHandle__* commandHandle, double collisionHardness);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodySetSelfCollision(b3SharedMemoryCommandHandle__* commandHandle, int useSelfCollision);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodySetRepulsionStiffness(b3SharedMemoryCommandHandle__* commandHandle, double stiffness);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodyUseFaceContact(b3SharedMemoryCommandHandle__* commandHandle, int useFaceContact);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodySetFrictionCoefficient(b3SharedMemoryCommandHandle__* commandHandle, double frictionCoefficient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodyUseBendingSprings(b3SharedMemoryCommandHandle__* commandHandle, int useBendingSprings, double bendingStiffness);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3LoadSoftBodyUseAllDirectionDampingSprings(b3SharedMemoryCommandHandle__* commandHandle, int useAllDirectionDamping);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3InitCreateSoftBodyAnchorConstraintCommand(b3PhysicsClientHandle__* physClient, int softBodyUniqueId, int nodeIndex, int bodyUniqueId, int linkIndex, double* bodyFramePosition);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3RequestVREventsCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3VREventsSetDeviceTypeFilter(b3SharedMemoryCommandHandle__* commandHandle, int deviceTypeFilter);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetVREventsData(b3PhysicsClientHandle__* physClient, b3VREventsData* vrEventsData);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3SetVRCameraStateCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3SetVRCameraRootPosition(b3SharedMemoryCommandHandle__* commandHandle, double* rootPos);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3SetVRCameraRootOrientation(b3SharedMemoryCommandHandle__* commandHandle, double* rootOrn);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3SetVRCameraTrackingObject(b3SharedMemoryCommandHandle__* commandHandle, int objectUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3SetVRCameraTrackingObjectFlag(b3SharedMemoryCommandHandle__* commandHandle, int flag);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3RequestKeyboardEventsCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3RequestKeyboardEventsCommandInit2(b3SharedMemoryCommandHandle__* commandHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetKeyboardEventsData(b3PhysicsClientHandle__* physClient, b3KeyboardEventsData* keyboardEventsData);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3RequestMouseEventsCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetMouseEventsData(b3PhysicsClientHandle__* physClient, b3MouseEventsData* mouseEventsData);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3StateLoggingCommandInit(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3StateLoggingStart(b3SharedMemoryCommandHandle__* commandHandle, int loggingType, byte* fileName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3StateLoggingAddLoggingObjectUniqueId(b3SharedMemoryCommandHandle__* commandHandle, int objectUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3StateLoggingSetMaxLogDof(b3SharedMemoryCommandHandle__* commandHandle, int maxLogDof);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3StateLoggingSetLinkIndexA(b3SharedMemoryCommandHandle__* commandHandle, int linkIndexA);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3StateLoggingSetLinkIndexB(b3SharedMemoryCommandHandle__* commandHandle, int linkIndexB);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3StateLoggingSetBodyAUniqueId(b3SharedMemoryCommandHandle__* commandHandle, int bodyAUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3StateLoggingSetBodyBUniqueId(b3SharedMemoryCommandHandle__* commandHandle, int bodyBUniqueId);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3StateLoggingSetDeviceTypeFilter(b3SharedMemoryCommandHandle__* commandHandle, int deviceTypeFilter);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3StateLoggingSetLogFlags(b3SharedMemoryCommandHandle__* commandHandle, int logFlags);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3GetStatusLoggingUniqueId(b3SharedMemoryStatusHandle__* statusHandle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern int b3StateLoggingStop(b3SharedMemoryCommandHandle__* commandHandle, int loggingUid);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3ProfileTimingCommandInit(b3PhysicsClientHandle__* physClient, byte* name);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetProfileTimingDuractionInMicroSeconds(b3SharedMemoryCommandHandle__* commandHandle, int duration);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetProfileTimingType(b3SharedMemoryCommandHandle__* commandHandle, int type_);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3PushProfileTiming(b3PhysicsClientHandle__* physClient, byte* timingName);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3PopProfileTiming(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3SetTimeOut(b3PhysicsClientHandle__* physClient, double timeOutInSeconds);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern double b3GetTimeOut(b3PhysicsClientHandle__* physClient);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern b3SharedMemoryCommandHandle__* b3SetAdditionalSearchPath(b3PhysicsClientHandle__* physClient, byte* path);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3MultiplyTransforms(double* posA, double* ornA, double* posB, double* ornB, double* outPos, double* outOrn);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3InvertTransform(double* pos, double* orn, double* outPos, double* outOrn);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3QuaternionSlerp(double* startQuat, double* endQuat, double interpolationFraction, double* outOrn);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetQuaternionFromAxisAngle(double* axis, double angle, double* outQuat);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetAxisAngleFromQuaternion(double* quat, double* axis, double* angle);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetQuaternionDifference(double* startQuat, double* endQuat, double* outOrn);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3GetAxisDifferenceQuaternion(double* startQuat, double* endQuat, double* axisOut);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3CalculateVelocityQuaternion(double* startQuat, double* endQuat, double deltaTime, double* angVelOut);
[DllImport(__DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern void b3RotateVector(double* quat, double* vec, double* vecOut);
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3JointInfo
{
public fixed byte m_linkName[1024];
public fixed byte m_jointName[1024];
public int m_jointType;
public int m_qIndex;
public int m_uIndex;
public int m_jointIndex;
public int m_flags;
public double m_jointDamping;
public double m_jointFriction;
public double m_jointLowerLimit;
public double m_jointUpperLimit;
public double m_jointMaxForce;
public double m_jointMaxVelocity;
public fixed double m_parentFrame[7];
public fixed double m_childFrame[7];
public fixed double m_jointAxis[3];
public int m_parentIndex;
public int m_qSize;
public int m_uSize;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3UserDataValue
{
public int m_type;
public int m_length;
public byte* m_data1;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3UserConstraint
{
public int m_parentBodyIndex;
public int m_parentJointIndex;
public int m_childBodyIndex;
public int m_childJointIndex;
public fixed double m_parentFrame[7];
public fixed double m_childFrame[7];
public fixed double m_jointAxis[3];
public int m_jointType;
public double m_maxAppliedForce;
public int m_userConstraintUniqueId;
public double m_gearRatio;
public int m_gearAuxLink;
public double m_relativePositionTarget;
public double m_erp;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3BodyInfo
{
public fixed byte m_baseName[1024];
public fixed byte m_bodyName[1024];
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3DynamicsInfo
{
public double m_mass;
public fixed double m_localInertialDiagonal[3];
public fixed double m_localInertialFrame[7];
public double m_lateralFrictionCoeff;
public double m_rollingFrictionCoeff;
public double m_spinningFrictionCoeff;
public double m_restitution;
public double m_contactStiffness;
public double m_contactDamping;
public int m_activationState;
public int m_bodyType;
public double m_angularDamping;
public double m_linearDamping;
public double m_ccdSweptSphereRadius;
public double m_contactProcessingThreshold;
public int m_frictionAnchor;
public double m_collisionMargin;
public int m_dynamicType;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3JointSensorState
{
public double m_jointPosition;
public double m_jointVelocity;
public fixed double m_jointForceTorque[6];
public double m_jointMotorTorque;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3JointSensorState2
{
public fixed double m_jointPosition[4];
public fixed double m_jointVelocity[3];
public fixed double m_jointReactionForceTorque[6];
public fixed double m_jointMotorTorqueMultiDof[3];
public int m_qDofSize;
public int m_uDofSize;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3DebugLines
{
public int m_numDebugLines;
public float* m_linesFrom;
public float* m_linesTo;
public float* m_linesColor;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3OverlappingObject
{
public int m_objectUniqueId;
public int m_linkIndex;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3AABBOverlapData
{
public int m_numOverlappingObjects;
public b3OverlappingObject* m_overlappingObjects;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3CameraImageData
{
public int m_pixelWidth;
public int m_pixelHeight;
public byte* m_rgbColorData;
public float* m_depthValues;
public int* m_segmentationMaskValues;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3MeshVertex
{
public double x;
public double y;
public double z;
public double w;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3MeshData
{
public int m_numVertices;
public b3MeshVertex* m_vertices;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3TetraMeshData
{
public int m_numVertices;
public b3MeshVertex* m_vertices;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3OpenGLVisualizerCameraInfo
{
public int m_width;
public int m_height;
public fixed float m_viewMatrix[16];
public fixed float m_projectionMatrix[16];
public fixed float m_camUp[3];
public fixed float m_camForward[3];
public fixed float m_horizontal[3];
public fixed float m_vertical[3];
public float m_yaw;
public float m_pitch;
public float m_dist;
public fixed float m_target[3];
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3UserConstraintState
{
public fixed double m_appliedConstraintForces[6];
public int m_numDofs;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3VRControllerEvent
{
public int m_controllerId;
public int m_deviceType;
public int m_numMoveEvents;
public int m_numButtonEvents;
public fixed float m_pos[4];
public fixed float m_orn[4];
public float m_analogAxis;
public fixed float m_auxAnalogAxis[10];
public fixed int m_buttons[64];
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3VREventsData
{
public int m_numControllerEvents;
public b3VRControllerEvent* m_controllerEvents;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3KeyboardEvent
{
public int m_keyCode;
public int m_keyState;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3KeyboardEventsData
{
public int m_numKeyboardEvents;
public b3KeyboardEvent* m_keyboardEvents;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3MouseEvent
{
public int m_eventType;
public float m_mousePosX;
public float m_mousePosY;
public int m_buttonIndex;
public int m_buttonState;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3MouseEventsData
{
public int m_numMouseEvents;
public b3MouseEvent* m_mouseEvents;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3BodyNotificationArgs
{
public int m_bodyUniqueId;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3UserDataNotificationArgs
{
public int m_bodyUniqueId;
public int m_linkIndex;
public int m_visualShapeIndex;
public int m_userDataId;
public fixed byte m_key[256];
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3LinkNotificationArgs
{
public int m_bodyUniqueId;
public int m_linkIndex;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3VisualShapeNotificationArgs
{
public int m_bodyUniqueId;
public int m_linkIndex;
public int m_visualShapeIndex;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3TransformChangeNotificationArgs
{
public int m_bodyUniqueId;
public int m_linkIndex;
public fixed double m_worldPosition[3];
public fixed double m_worldRotation[4];
public fixed double m_localScaling[3];
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3SoftBodyChangeNotificationArgs
{
public int m_bodyUniqueId;
public int m_linkIndex;
}
[StructLayout(LayoutKind.Explicit)]
public unsafe struct b3Notification__bindgen_ty_1
{
[FieldOffset(0)]
public b3BodyNotificationArgs m_bodyArgs;
[FieldOffset(0)]
public b3UserDataNotificationArgs m_userDataArgs;
[FieldOffset(0)]
public b3LinkNotificationArgs m_linkArgs;
[FieldOffset(0)]
public b3VisualShapeNotificationArgs m_visualShapeArgs;
[FieldOffset(0)]
public b3TransformChangeNotificationArgs m_transformChangeArgs;
[FieldOffset(0)]
public b3SoftBodyChangeNotificationArgs m_softBodyChangeArgs;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3ContactPointData
{
public int m_contactFlags;
public int m_bodyUniqueIdA;
public int m_bodyUniqueIdB;
public int m_linkIndexA;
public int m_linkIndexB;
public fixed double m_positionOnAInWS[3];
public fixed double m_positionOnBInWS[3];
public fixed double m_contactNormalOnBInWS[3];
public double m_contactDistance;
public double m_normalForce;
public double m_linearFrictionForce1;
public double m_linearFrictionForce2;
public fixed double m_linearFrictionDirection1[3];
public fixed double m_linearFrictionDirection2[3];
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3ContactInformation
{
public int m_numContactPoints;
public b3ContactPointData* m_contactPointData;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3RayData
{
public fixed double m_rayFromPosition[3];
public fixed double m_rayToPosition[3];
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3RayHitInfo
{
public double m_hitFraction;
public int m_hitObjectUniqueId;
public int m_hitObjectLinkIndex;
public fixed double m_hitPositionWorld[3];
public fixed double m_hitNormalWorld[3];
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3RaycastInformation
{
public int m_numRayHits;
public b3RayHitInfo* m_rayHits;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3VisualShapeData
{
public int m_objectUniqueId;
public int m_linkIndex;
public int m_visualGeometryType;
public fixed double m_dimensions[3];
public fixed byte m_meshAssetFileName[1024];
public fixed double m_localVisualFrame[7];
public fixed double m_rgbaColor[4];
public int m_tinyRendererTextureId;
public int m_textureUniqueId;
public int m_openglTextureId;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3VisualShapeInformation
{
public int m_numVisualShapes;
public b3VisualShapeData* m_visualShapeData;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3CollisionShapeData
{
public int m_objectUniqueId;
public int m_linkIndex;
public int m_collisionGeometryType;
public fixed double m_dimensions[3];
public fixed double m_localCollisionFrame[7];
public fixed byte m_meshAssetFileName[1024];
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3CollisionShapeInformation
{
public int m_numCollisionShapes;
public b3CollisionShapeData* m_collisionShapeData;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3LinkState
{
public fixed double m_worldPosition[3];
public fixed double m_worldOrientation[4];
public fixed double m_localInertialPosition[3];
public fixed double m_localInertialOrientation[4];
public fixed double m_worldLinkFramePosition[3];
public fixed double m_worldLinkFrameOrientation[4];
public fixed double m_worldLinearVelocity[3];
public fixed double m_worldAngularVelocity[3];
public fixed double m_worldAABBMin[3];
public fixed double m_worldAABBMax[3];
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3PhysicsSimulationParameters
{
public double m_deltaTime;
public double m_simulationTimestamp;
public fixed double m_gravityAcceleration[3];
public int m_numSimulationSubSteps;
public int m_numSolverIterations;
public double m_warmStartingFactor;
public double m_articulatedWarmStartingFactor;
public int m_useRealTimeSimulation;
public int m_useSplitImpulse;
public double m_splitImpulsePenetrationThreshold;
public double m_contactBreakingThreshold;
public int m_internalSimFlags;
public double m_defaultContactERP;
public int m_collisionFilterMode;
public int m_enableFileCaching;
public double m_restitutionVelocityThreshold;
public double m_defaultNonContactERP;
public double m_frictionERP;
public double m_defaultGlobalCFM;
public double m_frictionCFM;
public int m_enableConeFriction;
public int m_deterministicOverlappingPairs;
public double m_allowedCcdPenetration;
public int m_jointFeedbackMode;
public double m_solverResidualThreshold;
public double m_contactSlop;
public int m_enableSAT;
public int m_constraintSolverType;
public int m_minimumSolverIslandSize;
public int m_reportSolverAnalytics;
public double m_sparseSdfVoxelSize;
public int m_numNonContactInnerIterations;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3ForwardDynamicsAnalyticsIslandData
{
public int m_islandId;
public int m_numBodies;
public int m_numContactManifolds;
public int m_numIterationsUsed;
public double m_remainingLeastSquaresResidual;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3ForwardDynamicsAnalyticsArgs
{
public int m_numSteps;
public int m_numIslands;
public int m_numSolverCalls;
public fixed byte/* b3ForwardDynamicsAnalyticsIslandData, this length is invalid so must keep pointer and can't edit from C# */ m_islandData[64];
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3PhysicsClientHandle__
{
public int unused;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3SharedMemoryCommandHandle__
{
public int unused;
}
[StructLayout(LayoutKind.Sequential)]
public unsafe struct b3SharedMemoryStatusHandle__
{
public int unused;
}
}