297 lines
20 KiB
C++
297 lines
20 KiB
C++
#ifndef __LayaBulletExport_H__
|
|
#define __LayaBulletExport_H__
|
|
|
|
#include "../../../JCScriptRuntime.h"
|
|
#include "../../JSInterface/JSInterface.h"
|
|
#include "btBulletDynamicsCommon.h"
|
|
#include "BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h"
|
|
#include "BulletCollision/Gimpact/btGImpactShape.h"
|
|
#include "BulletCollision/CollisionDispatch/btGhostObject.h"
|
|
#include "BulletDynamics/Character/btKinematicCharacterController.h"
|
|
#define WASM_EXP JSLayaConchBullet::
|
|
#define __BTWASM_SYSCALL_NAME(name)
|
|
typedef intptr_t pointer_t;
|
|
namespace laya
|
|
{
|
|
inline void layaMotionStateGetWorldTransform(pointer_t rigidBodyID, pointer_t worldTrans)
|
|
{
|
|
JCScriptRuntime* pScriptRuntime = JCScriptRuntime::s_JSRT;
|
|
if (pScriptRuntime)
|
|
{
|
|
pScriptRuntime->m_bJSBulletGetWorldTransformHandle.Call(rigidBodyID, worldTrans);
|
|
}
|
|
}
|
|
inline void layaMotionStateSetWorldTransform(pointer_t rigidBodyID, const pointer_t worldTrans)
|
|
{
|
|
JCScriptRuntime* pScriptRuntime = JCScriptRuntime::s_JSRT;
|
|
if (pScriptRuntime)
|
|
{
|
|
pScriptRuntime->m_bJSBulletSetWorldTransformHandle.Call(rigidBodyID, worldTrans);
|
|
}
|
|
}
|
|
|
|
|
|
class LayaMotionState : public btMotionState
|
|
{
|
|
public:
|
|
pointer_t rigidBodyID;
|
|
virtual void getWorldTransform(btTransform ¢erOfMassWorldTrans)
|
|
{
|
|
layaMotionStateGetWorldTransform(rigidBodyID, (pointer_t)¢erOfMassWorldTrans);
|
|
}
|
|
virtual void setWorldTransform(const btTransform ¢erOfMassWorldTrans)
|
|
{
|
|
layaMotionStateSetWorldTransform(rigidBodyID, (pointer_t)¢erOfMassWorldTrans);
|
|
}
|
|
};
|
|
class JSLayaConchBullet : public JsObjBase, public JSObjNode
|
|
{
|
|
private:
|
|
static JSLayaConchBullet* ms_pInstance;
|
|
public:
|
|
|
|
static JsObjClassInfo JSCLSINFO;
|
|
|
|
static JSLayaConchBullet* GetInstance();
|
|
|
|
static void exportJS();
|
|
|
|
JSLayaConchBullet();
|
|
|
|
~JSLayaConchBullet();
|
|
|
|
void btGImpactCollisionAlgorithm_RegisterAlgorithm(pointer_t dispatcher);
|
|
pointer_t btVector3_create(btScalar x, btScalar y, btScalar z);
|
|
void btVector3_setValue(pointer_t ptr, btScalar x, btScalar y, btScalar z);
|
|
btScalar btVector3_x(pointer_t ptr);
|
|
btScalar btVector3_y(pointer_t ptr);
|
|
btScalar btVector3_z(pointer_t ptr);
|
|
pointer_t btQuaternion_create(btScalar x, btScalar y, btScalar z, btScalar w);
|
|
void btQuaternion_setValue(pointer_t ptr, btScalar x, btScalar y, btScalar z, btScalar w);
|
|
btScalar btQuaternion_x(pointer_t ptr);
|
|
btScalar btQuaternion_y(pointer_t ptr);
|
|
btScalar btQuaternion_z(pointer_t ptr);
|
|
btScalar btQuaternion_w(pointer_t ptr);
|
|
pointer_t btTransform_create();
|
|
void btTransform_setOrigin(pointer_t ptr, pointer_t origin);
|
|
void btTransform_setRotation(pointer_t ptr, pointer_t q);
|
|
pointer_t btTransform_getOrigin(pointer_t ptr);
|
|
pointer_t btTransform_getRotation(pointer_t ptr);
|
|
void btTransform_setIdentity(pointer_t ptr);
|
|
void btMotionState_destroy(pointer_t ptr);
|
|
pointer_t layaMotionState_create();
|
|
void layaMotionState_set_rigidBodyID(pointer_t ptr, int rigidBodyID);
|
|
pointer_t btCollisionObject_create();
|
|
void btCollisionObject_setContactProcessingThreshold(pointer_t ptr, btScalar contactProcessingThreshold);
|
|
void btCollisionObject_setActivationState(pointer_t ptr, int newState);
|
|
void btCollisionObject_forceActivationState(pointer_t ptr, int newState);
|
|
void btCollisionObject_activate(pointer_t ptr, bool forceActivation);
|
|
bool btCollisionObject_isActive(pointer_t ptr);
|
|
void btCollisionObject_setRestitution(pointer_t ptr, btScalar rest);
|
|
void btCollisionObject_setFriction(pointer_t ptr, btScalar frict);
|
|
void btCollisionObject_setRollingFriction(pointer_t ptr, btScalar frict);
|
|
int btCollisionObject_getCollisionFlags(pointer_t ptr);
|
|
void btCollisionObject_setCollisionFlags(pointer_t ptr, int flags);
|
|
pointer_t btCollisionObject_getWorldTransform(pointer_t ptr);
|
|
void btCollisionObject_setCollisionShape(pointer_t ptr, pointer_t collisionShape);
|
|
btScalar btCollisionObject_getCcdMotionThreshold(pointer_t ptr);
|
|
void btCollisionObject_setCcdMotionThreshold(pointer_t ptr, btScalar ccdMotionThreshold);
|
|
btScalar btCollisionObject_getCcdSweptSphereRadius(pointer_t ptr);
|
|
void btCollisionObject_setCcdSweptSphereRadius(pointer_t ptr, btScalar radius);
|
|
int btCollisionObject_getUserIndex(pointer_t ptr);
|
|
void btCollisionObject_setUserIndex(pointer_t ptr, int index);
|
|
int btCollisionObject_getActivationState(pointer_t ptr);
|
|
void btCollisionObject_setInterpolationAngularVelocity(pointer_t ptr, pointer_t angvel);
|
|
void btCollisionObject_setInterpolationLinearVelocity(pointer_t ptr, pointer_t linvel);
|
|
void btCollisionObject_destroy(pointer_t ptr);
|
|
void RayResultCallback_set_m_flags(pointer_t ptr, int flags);
|
|
bool RayResultCallback_hasHit(pointer_t ptr);
|
|
void RayResultCallback_set_m_collisionFilterGroup(pointer_t ptr, int group);
|
|
void RayResultCallback_set_m_collisionFilterMask(pointer_t ptr, int mask);
|
|
btScalar RayResultCallback_get_m_closestHitFraction(pointer_t ptr);
|
|
void RayResultCallback_set_m_closestHitFraction(pointer_t ptr, btScalar fraction);
|
|
pointer_t RayResultCallback_get_m_collisionObject(pointer_t ptr);
|
|
void RayResultCallback_set_m_collisionObject(pointer_t ptr, pointer_t collisionObject);
|
|
pointer_t ClosestRayResultCallback_create(pointer_t rayFromWorld, pointer_t rayToWorld);
|
|
pointer_t ClosestRayResultCallback_get_m_rayFromWorld(pointer_t ptr);
|
|
void ClosestRayResultCallback_set_m_rayFromWorld(pointer_t ptr, pointer_t rayFromWorld);
|
|
pointer_t ClosestRayResultCallback_get_m_rayToWorld(pointer_t ptr);
|
|
void ClosestRayResultCallback_set_m_rayToWorld(pointer_t ptr, pointer_t rayToWorld);
|
|
pointer_t ClosestRayResultCallback_get_m_hitNormalWorld(pointer_t ptr);
|
|
pointer_t ClosestRayResultCallback_get_m_hitPointWorld(pointer_t ptr);
|
|
int tBtCollisionObjectArray_size(pointer_t ptr);
|
|
pointer_t tBtCollisionObjectArray_at(pointer_t ptr, int n);
|
|
void tBtCollisionObjectArray_clear(pointer_t ptr);
|
|
pointer_t tVector3Array_at(pointer_t ptr, int n);
|
|
void tVector3Array_clear(pointer_t ptr);
|
|
btScalar tScalarArray_at(pointer_t ptr, int n);
|
|
void tScalarArray_clear(pointer_t ptr);
|
|
pointer_t AllHitsRayResultCallback_create(pointer_t rayFromWorld, pointer_t rayToWorld);
|
|
pointer_t AllHitsRayResultCallback_get_m_rayFromWorld(pointer_t ptr);
|
|
void AllHitsRayResultCallback_set_m_rayFromWorld(pointer_t ptr, pointer_t rayFromWorld);
|
|
pointer_t AllHitsRayResultCallback_get_m_rayToWorld(pointer_t ptr);
|
|
void AllHitsRayResultCallback_set_m_rayToWorld(pointer_t ptr, pointer_t rayToWorld);
|
|
pointer_t AllHitsRayResultCallback_get_m_hitPointWorld(pointer_t ptr);
|
|
pointer_t AllHitsRayResultCallback_get_m_hitNormalWorld(pointer_t ptr);
|
|
pointer_t AllHitsRayResultCallback_get_m_collisionObjects(pointer_t ptr);
|
|
pointer_t AllHitsRayResultCallback_get_m_hitFractions(pointer_t ptr);
|
|
pointer_t btManifoldPoint_get_m_positionWorldOnA(pointer_t ptr);
|
|
pointer_t btManifoldPoint_get_m_positionWorldOnB(pointer_t ptr);
|
|
pointer_t btManifoldPoint_get_m_normalWorldOnB(pointer_t ptr);
|
|
btScalar btManifoldPoint_getDistance(pointer_t ptr);
|
|
bool ConvexResultCallback_hasHit(pointer_t ptr);
|
|
void ConvexResultCallback_set_m_collisionFilterGroup(pointer_t ptr, int group);
|
|
void ConvexResultCallback_set_m_collisionFilterMask(pointer_t ptr, int mask);
|
|
btScalar ConvexResultCallback_get_m_closestHitFraction(pointer_t ptr);
|
|
void ConvexResultCallback_set_m_closestHitFraction(pointer_t ptr, btScalar fraction);
|
|
pointer_t ClosestConvexResultCallback_create(pointer_t convexFromWorld, pointer_t convexToWorld);
|
|
pointer_t ClosestConvexResultCallback_get_m_hitNormalWorld(pointer_t ptr);
|
|
pointer_t ClosestConvexResultCallback_get_m_hitPointWorld(pointer_t ptr);
|
|
pointer_t ClosestConvexResultCallback_get_m_hitCollisionObject(pointer_t ptr);
|
|
void ClosestConvexResultCallback_set_m_hitCollisionObject(pointer_t ptr, pointer_t hitCollisionObject);
|
|
pointer_t AllConvexResultCallback_create(pointer_t convexFromWorld, pointer_t convexToWorld);
|
|
pointer_t AllConvexResultCallback_get_m_hitNormalWorld(pointer_t ptr);
|
|
pointer_t AllConvexResultCallback_get_m_hitPointWorld(pointer_t ptr);
|
|
pointer_t AllConvexResultCallback_get_m_hitFractions(pointer_t ptr);
|
|
pointer_t AllConvexResultCallback_get_m_collisionObjects(pointer_t ptr);
|
|
pointer_t btCollisionShape_getLocalScaling(pointer_t ptr);
|
|
void btCollisionShape_setLocalScaling(pointer_t ptr, pointer_t scaling);
|
|
void btCollisionShape_calculateLocalInertia(pointer_t ptr, btScalar mass, pointer_t inertia);
|
|
void btCollisionShape_destroy(pointer_t ptr);
|
|
pointer_t btBoxShape_create(pointer_t boxHalfExtents);
|
|
pointer_t btCapsuleShape_create(btScalar radius, btScalar height);
|
|
pointer_t btCapsuleShapeX_create(btScalar radius, btScalar height);
|
|
pointer_t btCapsuleShapeZ_create(btScalar radius, btScalar height);
|
|
pointer_t btCylinderShape_create(pointer_t halfExtents);
|
|
pointer_t btCylinderShapeX_create(pointer_t halfExtents);
|
|
pointer_t btCylinderShapeZ_create(pointer_t halfExtents);
|
|
pointer_t btSphereShape_create(btScalar radius);
|
|
pointer_t btConeShape_create(btScalar radius, btScalar height);
|
|
pointer_t btConeShapeX_create(btScalar radius, btScalar height);
|
|
pointer_t btConeShapeZ_create(btScalar radius, btScalar height);
|
|
pointer_t btStaticPlaneShape_create(pointer_t planeNormal, btScalar planeConstant);
|
|
void btGImpactShapeInterface_updateBound(pointer_t ptr);
|
|
pointer_t btGImpactMeshShape_create(pointer_t meshInterface);
|
|
pointer_t btCompoundShape_create();
|
|
void btCompoundShape_addChildShape(pointer_t ptr, pointer_t localTransform, pointer_t shape);
|
|
void btCompoundShape_removeChildShapeByIndex(pointer_t ptr, int childShapeIndex);
|
|
pointer_t btCompoundShape_getChildShape(pointer_t ptr, int index);
|
|
void btCompoundShape_updateChildTransform(pointer_t ptr, int index, pointer_t newChildTransform, bool shouldRecalculateLocalAabb);
|
|
void btStridingMeshInterface_destroy(pointer_t ptr);
|
|
pointer_t btTriangleMesh_create();
|
|
void btTriangleMesh_addTriangle(pointer_t ptr, pointer_t vertex1, pointer_t vertex2, pointer_t vertex3, bool removeDuplicateVertices);
|
|
pointer_t btDefaultCollisionConfiguration_create();
|
|
void btDefaultCollisionConfiguration_destroy(pointer_t ptr);
|
|
pointer_t btPersistentManifold_getBody0(pointer_t ptr);
|
|
pointer_t btPersistentManifold_getBody1(pointer_t ptr);
|
|
int btPersistentManifold_getNumContacts(pointer_t ptr);
|
|
pointer_t btPersistentManifold_getContactPoint(pointer_t ptr, int index);
|
|
int btDispatcher_getNumManifolds(pointer_t ptr);
|
|
pointer_t btDispatcher_getManifoldByIndexInternal(pointer_t ptr, int index);
|
|
pointer_t btCollisionDispatcher_create(pointer_t collisionConfiguration);
|
|
void btCollisionDispatcher_destroy(pointer_t ptr);
|
|
void btOverlappingPairCache_setInternalGhostPairCallback(pointer_t ptr, pointer_t ghostPairCallback);
|
|
pointer_t btDbvtBroadphase_create();
|
|
pointer_t btDbvtBroadphase_getOverlappingPairCache(pointer_t ptr);
|
|
void btDbvtBroadphase_destroy(pointer_t ptr);
|
|
pointer_t btRigidBodyConstructionInfo_create(btScalar mass, pointer_t motionState, pointer_t collisionShape, pointer_t localInertia);
|
|
void btRigidBodyConstructionInfo_destroy(pointer_t ptr);
|
|
pointer_t btRigidBody_create(pointer_t constructionInfo);
|
|
void btRigidBody_setCenterOfMassTransform(pointer_t ptr, pointer_t xform);
|
|
void btRigidBody_setSleepingThresholds(pointer_t ptr, btScalar linear, btScalar angular);
|
|
btScalar btRigidBody_getLinearSleepingThreshold(pointer_t ptr);
|
|
btScalar btRigidBody_getAngularSleepingThreshold(pointer_t ptr);
|
|
void btRigidBody_setDamping(pointer_t ptr, btScalar lin_damping, btScalar ang_damping);
|
|
void btRigidBody_setMassProps(pointer_t ptr, btScalar mass, pointer_t inertia);
|
|
void btRigidBody_setLinearFactor(pointer_t ptr, pointer_t linearFactor);
|
|
void btRigidBody_applyTorque(pointer_t ptr, pointer_t torque);
|
|
void btRigidBody_applyForce(pointer_t ptr, pointer_t force, pointer_t rel_pos);
|
|
void btRigidBody_applyCentralForce(pointer_t ptr, pointer_t force);
|
|
void btRigidBody_applyTorqueImpulse(pointer_t ptr, pointer_t torque);
|
|
void btRigidBody_applyImpulse(pointer_t ptr, pointer_t impulse, pointer_t rel_pos);
|
|
void btRigidBody_applyCentralImpulse(pointer_t ptr, pointer_t impulse);
|
|
void btRigidBody_updateInertiaTensor(pointer_t ptr);
|
|
pointer_t btRigidBody_getLinearVelocity(pointer_t ptr);
|
|
pointer_t btRigidBody_getAngularVelocity(pointer_t ptr);
|
|
void btRigidBody_setLinearVelocity(pointer_t ptr, pointer_t lin_vel);
|
|
void btRigidBody_setAngularVelocity(pointer_t ptr, pointer_t ang_vel);
|
|
void btRigidBody_setAngularFactor(pointer_t ptr, pointer_t angularFactor);
|
|
pointer_t btRigidBody_getGravity(pointer_t ptr);
|
|
void btRigidBody_setGravity(pointer_t ptr, pointer_t acceleration);
|
|
void btKinematicCharacterController_setUp(pointer_t ptr, pointer_t up);
|
|
void btKinematicCharacterController_setStepHeight(pointer_t ptr, btScalar h);
|
|
void btCollisionObject_setInterpolationWorldTransform(pointer_t ptr, pointer_t worldTrans);
|
|
void btCollisionObject_setWorldTransform(pointer_t ptr, pointer_t worldTrans);
|
|
pointer_t btRigidBody_getTotalForce(pointer_t ptr);
|
|
pointer_t btRigidBody_getTotalTorque(pointer_t ptr);
|
|
int btRigidBody_getFlags(pointer_t ptr);
|
|
void btRigidBody_setFlags(pointer_t ptr, int flags);
|
|
void btRigidBody_clearForces(pointer_t ptr);
|
|
pointer_t btSequentialImpulseConstraintSolver_create();
|
|
bool btCollisionWorld_get_m_useContinuous(pointer_t ptr);
|
|
void btCollisionWorld_set_m_useContinuous(pointer_t ptr, bool useContinuous);
|
|
void btCollisionWorld_rayTest(pointer_t ptr, pointer_t rayFromWorld, pointer_t rayToWorld, pointer_t resultCallback);
|
|
pointer_t btCollisionWorld_getDispatchInfo(pointer_t ptr);
|
|
void btCollisionWorld_addCollisionObject(pointer_t ptr, pointer_t collisionObject, int collisionFilterGroup, int collisionFilterMask);
|
|
void btCollisionWorld_removeCollisionObject(pointer_t ptr, pointer_t collisionObject);
|
|
void btCollisionWorld_convexSweepTest(pointer_t ptr, pointer_t castShape, pointer_t from, pointer_t to, pointer_t resultCallback, float allowedCcdPenetration);
|
|
void btCollisionWorld_destroy(pointer_t ptr);
|
|
void btDynamicsWorld_addAction(pointer_t ptr, pointer_t action);
|
|
void btDynamicsWorld_removeAction(pointer_t ptr, pointer_t action);
|
|
pointer_t btDynamicsWorld_getSolverInfo(pointer_t ptr);
|
|
pointer_t btDiscreteDynamicsWorld_create(pointer_t dispatcher, pointer_t pairCache, pointer_t constraintSolver, pointer_t collisionConfiguration);
|
|
void btDiscreteDynamicsWorld_setGravity(pointer_t ptr, pointer_t gravity);
|
|
pointer_t btDiscreteDynamicsWorld_getGravity(pointer_t ptr);
|
|
void btDiscreteDynamicsWorld_addRigidBody(pointer_t ptr, pointer_t body, int group, int mask);
|
|
void btDiscreteDynamicsWorld_removeRigidBody(pointer_t ptr, pointer_t body);
|
|
void btDiscreteDynamicsWorld_stepSimulation(pointer_t ptr, btScalar timeStep, int maxSubSteps, btScalar fixedTimeStep);
|
|
void btDiscreteDynamicsWorld_clearForces(pointer_t ptr);
|
|
void btDiscreteDynamicsWorld_setApplySpeculativeContactRestitution(pointer_t ptr, bool enable);
|
|
bool btDiscreteDynamicsWorld_getApplySpeculativeContactRestitution(pointer_t ptr);
|
|
pointer_t btKinematicCharacterController_create(pointer_t ghostObject, pointer_t convexShape, btScalar stepHeight, pointer_t up);
|
|
void btKinematicCharacterController_setWalkDirection(pointer_t ptr, pointer_t walkDirection);
|
|
void btKinematicCharacterController_setFallSpeed(pointer_t ptr, btScalar fallSpeed);
|
|
void btKinematicCharacterController_setJumpSpeed(pointer_t ptr, btScalar jumpSpeed);
|
|
void btKinematicCharacterController_setMaxSlope(pointer_t ptr, btScalar slopeRadians);
|
|
bool btKinematicCharacterController_onGround(pointer_t ptr);
|
|
void btKinematicCharacterController_jump(pointer_t ptr, pointer_t v);
|
|
void btKinematicCharacterController_setGravity(pointer_t ptr, pointer_t gravity);
|
|
void btKinematicCharacterController_destroy(pointer_t ptr);
|
|
pointer_t btPairCachingGhostObject_create();
|
|
pointer_t btGhostPairCallback_create();
|
|
void btTransform_equal(pointer_t ptr, pointer_t other);
|
|
|
|
void btTypedConstraint_setEnabled(pointer_t constraintptr, bool enabled);
|
|
void btCollisionWorld_addConstraint(pointer_t ptr, pointer_t constraintptr, bool disableCollisionsBetweenLinkedBodies);
|
|
void btCollisionWorld_removeConstraint(pointer_t ptr, pointer_t constraintptr);
|
|
pointer_t btJointFeedback_create();
|
|
void btJointFeedback_destroy(pointer_t jointFeedbackptr);
|
|
void btTypedConstraint_setJointFeedback(pointer_t constraintptr, pointer_t jointFeedbackptr);
|
|
pointer_t btTypedConstraint_getJointFeedback(pointer_t constraintptr);
|
|
void btTypedConstraint_enableFeedback(pointer_t constraintptr, bool needsFeedback);
|
|
void btTypedConstraint_setParam(pointer_t constraintptr, int axis1, int constraintParams, btScalar value);
|
|
void btTypedConstraint_setOverrideNumSolverIterations(pointer_t constraintptr, int overideNumIterations);
|
|
void btTypedConstraint_destroy(pointer_t constraintptr);
|
|
pointer_t btJointFeedback_getAppliedForceBodyA(pointer_t jointFeedbackptr);
|
|
pointer_t btJointFeedback_getAppliedForceBodyB(pointer_t jointFeedbackptr);
|
|
pointer_t btJointFeedback_getAppliedTorqueBodyA(pointer_t jointFeedbackptr);
|
|
pointer_t btJointFeedback_getAppliedTorqueBodyB(pointer_t jointFeedbackptr);
|
|
pointer_t btFixedConstraint_create(pointer_t rigidBodyA, pointer_t frameInAptr, pointer_t rigidBodyB, pointer_t frameInBptr);
|
|
pointer_t btGeneric6DofSpring2Constraint_create(pointer_t rigidBodyAptr, pointer_t frameInAptr, pointer_t rigidBodyBptr, pointer_t frameInBptr, int rotOrder = 0);
|
|
void btGeneric6DofSpring2Constraint_setAxis(pointer_t g6ds2Constraintptr, pointer_t axis1, pointer_t axis2);
|
|
void btGeneric6DofSpring2Constraint_setLimit(pointer_t g6ds2Constraintptr, int axis, btScalar lo, btScalar hi);
|
|
void btGeneric6DofSpring2Constraint_enableSpring(pointer_t g6ds2Constraintptr, int index, bool enableSpring);
|
|
void btGeneric6DofSpring2Constraint_setBounce(pointer_t g6ds2Constraintptr, int index, btScalar bounce);
|
|
void btGeneric6DofSpring2Constraint_setStiffness(pointer_t g6ds2Constraintptr, int index, btScalar stiffness, bool limitIfNeeded = true);
|
|
void btGeneric6DofSpring2Constraint_setDamping(pointer_t g6ds2Constraintptr, int index, btScalar damping, bool limitIfNeeded = true);
|
|
void btGeneric6DofSpring2Constraint_setEquilibriumPoint(pointer_t g6ds2Constraintptr, int index, btScalar val);
|
|
void btGeneric6DofSpring2Constraint_enableMotor(pointer_t g6ds2Constraintptr, int index, bool onOff);
|
|
void btGeneric6DofSpring2Constraint_setServo(pointer_t g6ds2Constraintptr, int index, bool onOff);
|
|
void btGeneric6DofSpring2Constraint_setTargetVelocity(pointer_t g6ds2Constraintptr, int index, btScalar velocity);
|
|
void btGeneric6DofSpring2Constraint_setServoTarget(pointer_t g6ds2Constraintptr, int index, btScalar target);
|
|
void btGeneric6DofSpring2Constraint_setMaxMotorForce(pointer_t g6ds2Constraintptr, int index, btScalar force);
|
|
void btGeneric6DofSpring2Constraint_setFrames(pointer_t g6ds2Constraintptr, pointer_t frameAptr, pointer_t frameBptr);
|
|
};
|
|
}
|
|
#endif
|