Welche 3D Physik Engine als PB Wrapper?
Verfasst: 29.06.2010 08:12
Bitte auch begründen.
Das deutsche PureBasic-Forum
https://www.purebasic.fr/german/
Code: Alles auswählen
Syntax
EnableWorldPhysics(Status)
Beschreibung
Aktiviert oder deaktiviert die Physik-Engine innerhalb der Welt.
Soweit mir bekannt ist PhysX nur mit NVidia (oder PhysX) Karten nutzbar.Thorium hat geschrieben:Warum kein PhysX? Hab noch ne PhysX-Karte hier. ^^
Thorium hat geschrieben:EnableWorldPhysics(Status)
Soweit mir bekannt ist PhysX nur mit NVidia (oder PhysX) Karten nutzbar.Thorium hat geschrieben:Warum kein PhysX? Hab noch ne PhysX-Karte hier. ^^
Das wäre dann die PB Wrapper Syntax.ralle hat geschrieben:EnableWorldPhysics(Status)
Naja, es ist halt der PB eigene Befehl, der schon in der Hilfe drin steht. Also nehme ich an, dass bei der Engine3D von PB schon eine PhysikEngine dabei ist.DrShrek hat geschrieben:Das wäre dann die PB Wrapper Syntax.
Nein, PhysX kann auch ganz normal über die CPU gerechnet werden, egal was für ne Grafikkarte im System ist. Möchte man die Sache Hardwarebeschleunigt haben, braucht man ne nVidia Karte.DrShrek hat geschrieben:Soweit mir bekannt ist PhysX nur mit NVidia (oder PhysX) Karten nutzbar.Thorium hat geschrieben:Warum kein PhysX? Hab noch ne PhysX-Karte hier. ^^
ODE ist in PB Ogre integriert.ralle hat geschrieben:Naja, es ist halt der PB eigene Befehl, der schon in der Hilfe drin steht. Also nehme ich an, dass bei der Engine3D von PB schon eine PhysikEngine dabei ist.DrShrek hat geschrieben:Das wäre dann die PB Wrapper Syntax.
Wie Thorium schon sagte: PhysX geht auch mit CPU emulation.DrShrek hat geschrieben:Soweit mir bekannt ist PhysX nur mit NVidia (oder PhysX) Karten nutzbar.Thorium hat geschrieben:Warum kein PhysX? Hab noch ne PhysX-Karte hier. ^^
Code: Alles auswählen
; http://www.tokamakphysics.com/download/tokamak_lib_1_2_5.zip
; http://www.svenberra.net/twrapperv071.zip
;.lib "tokamakwrapper.dll"
; *** Simulator ***
; If the values below isn't set before you create the simulator,
; default values will be used.
Prototype TOKSIM_SetRigidBodiesCount(Count.l)
;Default = 50
Prototype TOKSIM_SetAnimatedBodiesCount(Count.l)
;Default = 50
Prototype TOKSIM_SetRigidParticleCount(Count.l)
;Default = 50
Prototype TOKSIM_SetControllersCount(Count.l)
;Default = 50
Prototype TOKSIM_SetOverlappedPairsCount(Count.l)
;Default = 1225 = (TBodies*(TBodies-1))/2 where TBodies is the total number
;of Rigid & Animated bodies
Prototype TOKSIM_SetGeometriesCount(Count.l)
;Default = 50
Prototype TOKSIM_SetConstraintsCount(Count.l)
;Default = 100
Prototype TOKSIM_SetConstraintSetsCount(Count.l)
;Default = 100
Prototype TOKSIM_SetConstraintBufferSize(Count.l)
;Default = 2000
Prototype TOKSIM_SetStaticMeshNodesStartCount(Count.l)
;Default = 200
Prototype TOKSIM_SetStaticMeshNodesGrowByCount(Count.l)
;Default = -1 = The nodecount will increase by 100.l when growing.
Prototype.l TOKSIM_CreateSimulator(GravityX.f,GravityY.f,GravityZ.f)
Prototype TOKSIM_DestroySimulator()
Prototype TOKSIM_Advance(timestep.f,SubSteps.l)
Prototype TOKSIM_Advance2(timestep.f,minTimeStep.f,maxTimeStep.f)
Prototype.f TOKSIM_GetPhysicsTime()
Prototype TOKSIM_SetStaticMesh(*Vertices,VertexCount.l,*Triangles,TriangleCount.l)
Prototype TOKSIM_FreeStaticMesh()
Prototype TOKSIM_SetMaterial(Index.l,Friction.f,Restitution.f)
Prototype.f TOKSIM_GetMaterialFriction(Index.l)
Prototype.f TOKSIM_GetMaterialRestitution(Index.l)
Prototype TOKSIM_SetCInfoBank(*CInfoBank)
Prototype TOKSIM_SetCollisionResponse(CollisionID1.l,CollisionID2.l,Response.l)
Prototype.l TOKSIM_GetCollisionCount()
Prototype TOKSIM_SetGravity(GravityX.f,GravityY.f,GravityZ.f)
Prototype.f TOKSIM_GetGravityX()
Prototype.f TOKSIM_GetGravityY()
Prototype.f TOKSIM_GetGravityZ()
; *** Rigid Body ***
Prototype.l TOKRB_Create()
Prototype.l TOKRB_CreateParticle()
Prototype TOKRB_Free(RigidBody.l)
Prototype TOKRB_SetCollisionID(RigidBody.l,ColID.l)
Prototype.l TOKRB_GetCollisionID(RigidBody.l)
Prototype.f TOKRB_GetX(RigidBody.l)
Prototype.f TOKRB_GetY(RigidBody.l)
Prototype.f TOKRB_GetZ(RigidBody.l)
Prototype TOKRB_SetPosition(RigidBody.l,X.f,Y.f,Z.f)
Prototype.f TOKRB_GetPitch(RigidBody.l)
Prototype.f TOKRB_GetYaw(RigidBody.l)
Prototype.f TOKRB_GetRoll(RigidBody.l)
Prototype TOKRB_SetRotation(RigidBody.l,Pitch.f,Yaw.f,Roll.f)
Prototype.l TOKRB_AddBox(RigidBody.l,Width.f,Height.f,Depth.f)
Prototype.l TOKRB_AddSphere(RigidBody.l,Diameter.f)
Prototype.l TOKRB_AddCylinder(RigidBody.l,Diameter.f,Height.f)
Prototype.l TOKRB_AddConvex(RigidBody.l,*Bank,BankSize.l)
Prototype TOKRB_UpdateBoundingInfo(RigidBody.l)
Prototype TOKRB_SetBoxInertiaTensor(RigidBody.l,Width.f,Height.f,Depth.f,Mass.f)
Prototype TOKRB_SetSphereInertiaTensor(RigidBody.l,Diameter.f,Mass.f)
Prototype TOKRB_SetCylinderInertiaTensor(RigidBody.l,Diameter.f,Height.f,Mass.f)
Prototype TOKRB_SetMass(RigidBody.l,Mass.f)
Prototype TOKRB_SetLinearDamping(RigidBody.l,Damping.f)
Prototype TOKRB_SetAngularDamping(RigidBody.l,Damping.f)
Prototype.l TOKRB_IsIdle(RigidBody.l)
Prototype TOKRB_CollideConnected(RigidBody.l,Connected.l)
;Prototype TOKRB_CollideDirectlyConnected(RigidBody.l,Connected.l)
Prototype TOKRB_SetSleepingParameter(RigidBody.l,sleepparam.f)
Prototype TOKRB_Active(RigidBody.l,Active.l)
Prototype.l TOKRB_IsActive(RigidBody.l)
Prototype TOKRB_GravityEnable(RigidBody.l,Enable.l)
Prototype.l TOKRB_IsGravityEnabled(RigidBody.l)
Prototype TOKRB_ApplyImpulse(RigidBody.l,X.f,Y.f,Z.f)
Prototype TOKRB_ApplyImpulse2(RigidBody.l,X.f,Y.f,Z.f,XPos.f,YPos.f,ZPos.f)
Prototype TOKRB_ApplyTwist(RigidBody.l,X.f,Y.f,Z.f)
Prototype TOKRB_SetForce(RigidBody.l,X.f,Y.f,Z.f)
Prototype TOKRB_SetForce2(RigidBody.l,X.f,Y.f,Z.f,XPos.f,YPos.f,ZPos.f)
Prototype TOKRB_SetTorque(RigidBody.l,X.f,Y.f,Z.f)
Prototype TOKRB_SetVelocity(RigidBody.l,X.f,Y.f,Z.f)
Prototype TOKRB_SetAngularMomentum(RigidBody.l,X.f,Y.f,Z.f)
Prototype.f TOKRB_GetVelocityX(RigidBody.l)
Prototype.f TOKRB_GetVelocityY(RigidBody.l)
Prototype.f TOKRB_GetVelocityZ(RigidBody.l)
Prototype.f TOKRB_GetAngularMomentumX(RigidBody.l)
Prototype.f TOKRB_GetAngularMomentumY(RigidBody.l)
Prototype.f TOKRB_GetAngularMomentumZ(RigidBody.l)
Prototype.f TOKRB_GetAngularVelocityX(RigidBody.l)
Prototype.f TOKRB_GetAngularVelocityY(RigidBody.l)
Prototype.f TOKRB_GetAngularVelocityZ(RigidBody.l)
Prototype.f TOKRB_GetVelocityAtPointX(RigidBody.l,X.f,Y.f,Z.f)
Prototype.f TOKRB_GetVelocityAtPointY(RigidBody.l,X.f,Y.f,Z.f)
Prototype.f TOKRB_GetVelocityAtPointZ(RigidBody.l,X.f,Y.f,Z.f)
Prototype TOKRB_RemoveGeometry(RigidBody.l,Geometry.l)
Prototype.l TOKRB_GetGeometryCount(RigidBody.l)
Prototype TOKRB_BeginIterateGeometry(RigidBody.l)
Prototype.l TOKRB_GetNextGeometry(RigidBody.l)
Prototype.l TOKRB_AddSensor(RigidBody.l,PosX.f,PosY.f,PosZ.f,DirX.f,DirY.f,DirZ.f)
Prototype TOKRB_BeginIterateSensor(RigidBody.l)
Prototype.l TOKRB_GetNextSensor(RigidBody.l)
Prototype TOKRB_RemoveSensor(RigidBody.l,Sensor.l)
Prototype TOKRB_SetUserData(RigidBody.l,UserData.l)
Prototype.l TOKRB_GetUserData(RigidBody.l)
; *** Animated Body ***
Prototype.l TOKAB_Create()
Prototype TOKAB_Free(AnimatedBody.l)
Prototype TOKAB_SetCollisionID(AnimatedBody.l,ColID.l)
Prototype.l TOKAB_GetCollisionID(AnimatedBody.l)
Prototype TOKAB_SetPosition(AnimatedBody.l,X.f,Y.f,Z.f)
Prototype TOKAB_SetRotation(AnimatedBody.l,Pitch.f,Yaw.f,Roll.f)
Prototype.f TOKAB_GetX(AnimatedBody.l)
Prototype.f TOKAB_GetY(AnimatedBody.l)
Prototype.f TOKAB_GetZ(AnimatedBody.l)
Prototype.f TOKAB_GetPitch(AnimatedBody.l)
Prototype.f TOKAB_GetYaw(AnimatedBody.l)
Prototype.f TOKAB_GetRoll(AnimatedBody.l)
Prototype.l TOKAB_AddBox(AnimatedBody.l,Width.f,Height.f,Depth.f)
Prototype.l TOKAB_AddSphere(AnimatedBody.l,Diameter.f)
Prototype.l TOKAB_AddCylinder(AnimatedBody.l,Diameter.f,Height.f)
Prototype.l TOKAB_AddConvex(AnimatedBody.l,*Bank,BankSize.l)
Prototype TOKAB_UpdateBoundingInfo(AnimatedBody.l)
Prototype TOKAB_RemoveGeometry(AnimatedBody.l,Geometry.l)
Prototype.l TOKAB_GetGeometryCount(AnimatedBody.l)
Prototype TOKAB_BeginIterateGeometry(AnimatedBody.l)
Prototype.l TOKAB_GetNextGeometry(AnimatedBody.l)
Prototype TOKAB_CollideConnected(AnimatedBody.l,Connected.l)
;Prototype TOKAB_CollideDirectlyConnected(AnimatedBody.l,Connected.l)
Prototype TOKAB_SetUserData(AnimatedBody.l,UserData.l)
Prototype.l TOKAB_GetUserData(AnimatedBody.l)
; *** Geometry ***
Prototype TOKGEOM_SetPositionAndRotation(Geometry.l,X.f,Y.f,Z.f,Pitch.f,Yaw.f,Roll.f)
Prototype TOKGEOM_SetMaterialIndex(Geometry.l,Index.l)
Prototype.l TOKGEOM_GetMaterialIndex(Geometry.l)
Prototype TOKGEOM_SetUserData(Geometry.l,UserData.l)
Prototype.l TOKGEOM_GetUserData(Geometry.l)
; *** Joint ***
Prototype.l TOKJOINT_Create(ConnectionType.l,BodyA.l,BodyB.l)
Prototype.l TOKJOINT_Free(Joint.l)
Prototype TOKJOINT_SetType(Joint.l,JointType.l)
Prototype TOKJOINT_SetPositionAndRotationWorld(Joint.l,X.f,Y.f,Z.f,Pitch.f,Yaw.f,Roll.f)
Prototype TOKJOINT_SetPositionAndRotationFrameA(Joint.l,X.f,Y.f,Z.f,Pitch.f,Yaw.f,Roll.f)
Prototype TOKJOINT_SetPositionAndRotationFrameB(Joint.l,X.f,Y.f,Z.f,Pitch.f,Yaw.f,Roll.f)
Prototype TOKJOINT_SetJointLength(Joint.l,Length.f)
Prototype.f TOKJOINT_GetJointLength(Joint.l)
Prototype TOKJOINT_Enable(Joint.l,Enable)
Prototype.l TOKJOINT_IsEnabled(Joint.l)
Prototype TOKJOINT_SetUpperLimit(Joint.l,Limit.f)
Prototype TOKJOINT_SetLowerLimit(Joint.l,Limit.f)
Prototype TOKJOINT_SetUpperLimit2(Joint.l,Limit.f)
Prototype TOKJOINT_SetLowerLimit2(Joint.l,Limit.f)
Prototype.f TOKJOINT_GetUpperLimit(Joint.l)
Prototype.f TOKJOINT_GetLowerLimit(Joint.l)
Prototype.f TOKJOINT_GetUpperLimit2(Joint.l)
Prototype.f TOKJOINT_GetLowerLimit2(Joint.l)
Prototype TOKJOINT_EnableLimit(Joint.l,Enabled.l)
Prototype TOKJOINT_EnableLimit2(Joint.l,Enabled.l)
Prototype.l TOKJOINT_IsLimitEnabled(Joint.l)
Prototype.l TOKJOINT_IsLimit2Enabled(Joint.l)
Prototype TOKJOINT_SetEpsilon(Joint.l,Epsilon.f)
Prototype TOKJOINT_SetIterations(Joint.l,Iterations.l)
Prototype.f TOKJOINT_GetEpsilon(Joint.l)
Prototype.l TOKJOINT_GetIterations(Joint.l)
Prototype.f TOKJOINT_GetFrameAX(Joint.l)
Prototype.f TOKJOINT_GetFrameAY(Joint.l)
Prototype.f TOKJOINT_GetFrameAZ(Joint.l)
Prototype.f TOKJOINT_GetFrameBX(Joint.l)
Prototype.f TOKJOINT_GetFrameBY(Joint.l)
Prototype.f TOKJOINT_GetFrameBZ(Joint.l)
Prototype.f TOKJOINT_GetFrameAPitch(Joint.l)
Prototype.f TOKJOINT_GetFrameAYaw(Joint.l)
Prototype.f TOKJOINT_GetFrameARoll(Joint.l)
Prototype.f TOKJOINT_GetFrameBPitch(Joint.l)
Prototype.f TOKJOINT_GetFrameBYaw(Joint.l)
Prototype.f TOKJOINT_GetFrameBRoll(Joint.l)
Prototype TOKJOINT_SetDampingFactor(Joint.l,Damping.f)
Prototype.f TOKJOINT_GetDampingFactor(Joint.l)
Prototype TOKJOINT_EnableMotor(Joint.l,Enabled.l)
Prototype.l TOKJOINT_IsMotorEnabled(Joint.l)
Prototype TOKJOINT_SetMotorSpeed(Joint.l,DesiredForce.f,MaxForce.f)
Prototype TOKJOINT_EnableMotor2(Joint.l,Enabled.l)
Prototype.l TOKJOINT_IsMotor2Enabled(Joint.l)
Prototype TOKJOINT_SetMotor2Speed(Joint.l,DesiredForce.f,MaxForce.f)
; *** Sensor ***
Prototype TOKSENSOR_SetLineSensor(Sensor.l,PosX.f,PosY.f,PosZ.f,DirX.f,DirY.f,DirZ.f)
Prototype.f TOKSENSOR_GetLineVectorX(Sensor.l)
Prototype.f TOKSENSOR_GetLineVectorY(Sensor.l)
Prototype.f TOKSENSOR_GetLineVectorZ(Sensor.l)
Prototype.f TOKSENSOR_GetLineUnitVectorX(Sensor.l)
Prototype.f TOKSENSOR_GetLineUnitVectorY(Sensor.l)
Prototype.f TOKSENSOR_GetLineUnitVectorZ(Sensor.l)
Prototype.f TOKSENSOR_GetLinePosX(Sensor.l)
Prototype.f TOKSENSOR_GetLinePosY(Sensor.l)
Prototype.f TOKSENSOR_GetLinePosZ(Sensor.l)
Prototype.f TOKSENSOR_GetDetectDepth(Sensor.l)
Prototype.f TOKSENSOR_GetDetectNormalX(Sensor.l)
Prototype.f TOKSENSOR_GetDetectNormalY(Sensor.l)
Prototype.f TOKSENSOR_GetDetectNormalZ(Sensor.l)
Prototype.f TOKSENSOR_GetDetectContactPointX(Sensor.l)
Prototype.f TOKSENSOR_GetDetectContactPointY(Sensor.l)
Prototype.f TOKSENSOR_GetDetectContactPointZ(Sensor.l)
Prototype.l TOKSENSOR_GetDetectRigidBody(Sensor.l)
Prototype.l TOKSENSOR_GetDetectAnimatedBody(Sensor.l)
Prototype.l TOKSENSOR_GetDetectMaterial(Sensor.l)
Prototype TOKSENSOR_SetUserData(Sensor.l,UserData.l)
Prototype.l TOKSENSOR_GetUserData(Sensor.l)
If OpenLibrary(0, "tokamakwrapper.dll")
;lib "tokamakwrapper.dll"
; *** Simulator ***
; If the values below isn't set before you create the simulator,
; default values will be used.
TOKSIM_SetRigidBodiesCount.TOKSIM_SetRigidBodiesCount = GetFunction(0, "_TOKSIM_SetRigidBodiesCount@4")
;Default = 50
TOKSIM_SetAnimatedBodiesCount.TOKSIM_SetAnimatedBodiesCount = GetFunction(0, "_TOKSIM_SetAnimatedBodiesCount@4")
;Default = 50
TOKSIM_SetRigidParticleCount.TOKSIM_SetRigidParticleCount = GetFunction(0, "_TOKSIM_SetRigidParticleCount@4")
;Default = 50
TOKSIM_SetControllersCount.TOKSIM_SetControllersCount = GetFunction(0, "_TOKSIM_SetControllersCount@4")
;Default = 50
TOKSIM_SetOverlappedPairsCount.TOKSIM_SetOverlappedPairsCount = GetFunction(0, "_TOKSIM_SetOverlappedPairsCount@4")
;Default = 1225 = (TBodies*(TBodies-1))/2 where TBodies is the total number
;of Rigid & Animated bodies
TOKSIM_SetGeometriesCount.TOKSIM_SetGeometriesCount = GetFunction(0, "_TOKSIM_SetGeometriesCount@4")
;Default = 50
TOKSIM_SetConstraintsCount.TOKSIM_SetConstraintsCount = GetFunction(0, "_TOKSIM_SetConstraintsCount@4")
;Default = 100
TOKSIM_SetConstraintSetsCount.TOKSIM_SetConstraintSetsCount = GetFunction(0, "_TOKSIM_SetConstraintSetsCount@4")
;Default = 100
TOKSIM_SetConstraintBufferSize.TOKSIM_SetConstraintBufferSize = GetFunction(0, "_TOKSIM_SetConstraintBufferSize@4")
;Default = 2000
TOKSIM_SetStaticMeshNodesStartCount.TOKSIM_SetStaticMeshNodesStartCount = GetFunction(0, "_TOKSIM_SetStaticMeshNodesStartCount@4")
;Default = 200
TOKSIM_SetStaticMeshNodesGrowByCount.TOKSIM_SetStaticMeshNodesGrowByCount = GetFunction(0, "_TOKSIM_SetStaticMeshNodesGrowByCount@4")
;Default = -1 = The nodecount will increase by 100 when growing.
TOKSIM_CreateSimulator.TOKSIM_CreateSimulator = GetFunction(0, "_TOKSIM_CreateSimulator@12")
TOKSIM_DestroySimulator.TOKSIM_DestroySimulator = GetFunction(0, "_TOKSIM_DestroySimulator@0")
TOKSIM_Advance.TOKSIM_Advance = GetFunction(0, "_TOKSIM_Advance@8")
TOKSIM_Advance2.TOKSIM_Advance2 = GetFunction(0, "_TOKSIM_Advance@12")
TOKSIM_GetPhysicsTime.TOKSIM_GetPhysicsTime = GetFunction(0, "_TOKSIM_GetPhysicsTime@0")
TOKSIM_SetStaticMesh.TOKSIM_SetStaticMesh = GetFunction(0, "_TOKSIM_SetStaticMesh@16")
TOKSIM_FreeStaticMesh.TOKSIM_FreeStaticMesh = GetFunction(0, "_TOKSIM_FreeStaticMesh@0")
TOKSIM_SetMaterial.TOKSIM_SetMaterial = GetFunction(0, "_TOKSIM_SetMaterial@12")
TOKSIM_GetMaterialFriction.TOKSIM_GetMaterialFriction = GetFunction(0, "_TOKSIM_GetMaterialFriction@4")
TOKSIM_GetMaterialRestitution.TOKSIM_GetMaterialRestitution = GetFunction(0, "_TOKSIM_GetMaterialRestitution@4")
TOKSIM_SetCInfoBank.TOKSIM_SetCInfoBank = GetFunction(0, "_TOKSIM_SetCInfoBank@4")
TOKSIM_SetCollisionResponse.TOKSIM_SetCollisionResponse = GetFunction(0, "_TOKSIM_SetCollisionResponse@12")
TOKSIM_GetCollisionCount.TOKSIM_GetCollisionCount = GetFunction(0, "_TOKSIM_GetCollisionCount@0")
TOKSIM_SetGravity.TOKSIM_SetGravity = GetFunction(0, "_TOKSIM_SetGravity@12")
TOKSIM_GetGravityX.TOKSIM_GetGravityX = GetFunction(0, "_TOKSIM_GravityX@0")
TOKSIM_GetGravityY.TOKSIM_GetGravityY = GetFunction(0, "_TOKSIM_GravityY@0")
TOKSIM_GetGravityZ.TOKSIM_GetGravityZ = GetFunction(0, "_TOKSIM_GravityZ@0")
; *** Rigid Body ***
TOKRB_Create.TOKRB_Create = GetFunction(0, "_TOKRB_Create@0")
TOKRB_CreateParticle.TOKRB_CreateParticle = GetFunction(0, "_TOKRB_CreateParticle@0")
TOKRB_Free.TOKRB_Free = GetFunction(0, "_TOKRB_Free@4")
TOKRB_SetCollisionID.TOKRB_SetCollisionID = GetFunction(0, "_TOKRB_SetCollisionID@8")
TOKRB_GetCollisionID.TOKRB_GetCollisionID = GetFunction(0, "_TOKRB_GetCollisionID@4")
TOKRB_GetX.TOKRB_GetX = GetFunction(0, "_TOKRB_GetX@4")
TOKRB_GetY.TOKRB_GetY = GetFunction(0, "_TOKRB_GetY@4")
TOKRB_GetZ.TOKRB_GetZ = GetFunction(0, "_TOKRB_GetZ@4")
TOKRB_SetPosition.TOKRB_SetPosition = GetFunction(0, "_TOKRB_SetPosition@16")
TOKRB_GetPitch.TOKRB_GetPitch = GetFunction(0, "_TOKRB_GetPitch@4")
TOKRB_GetYaw.TOKRB_GetYaw = GetFunction(0, "_TOKRB_GetYaw@4")
TOKRB_GetRoll.TOKRB_GetRoll = GetFunction(0, "_TOKRB_GetRoll@4")
TOKRB_SetRotation.TOKRB_SetRotation = GetFunction(0, "_TOKRB_SetRotation@16")
TOKRB_AddBox.TOKRB_AddBox = GetFunction(0, "_TOKRB_AddBox@16")
TOKRB_AddSphere.TOKRB_AddSphere = GetFunction(0, "_TOKRB_AddSphere@8")
TOKRB_AddCylinder.TOKRB_AddCylinder = GetFunction(0, "_TOKRB_AddCylinder@12")
TOKRB_AddConvex.TOKRB_AddConvex = GetFunction(0, "_TOKRB_AddConvex@12")
TOKRB_UpdateBoundingInfo.TOKRB_UpdateBoundingInfo = GetFunction(0, "_TOKRB_UpdateBoundingInfo@4")
TOKRB_SetBoxInertiaTensor.TOKRB_SetBoxInertiaTensor = GetFunction(0, "_TOKRB_SetBoxInertiaTensor@20")
TOKRB_SetSphereInertiaTensor.TOKRB_SetSphereInertiaTensor = GetFunction(0, "_TOKRB_SetSphereInertiaTensor@12")
TOKRB_SetCylinderInertiaTensor.TOKRB_SetCylinderInertiaTensor = GetFunction(0, "_TOKRB_SetCylinderInertiaTensor@16")
TOKRB_SetMass.TOKRB_SetMass = GetFunction(0, "_TOKRB_SetMass@8")
TOKRB_SetLinearDamping.TOKRB_SetLinearDamping = GetFunction(0, "_TOKRB_SetLinearDamping@8")
TOKRB_SetAngularDamping.TOKRB_SetAngularDamping = GetFunction(0, "_TOKRB_SetAngularDamping@8")
TOKRB_IsIdle.TOKRB_IsIdle = GetFunction(0, "_TOKRB_IsIdle@4")
TOKRB_CollideConnected.TOKRB_CollideConnected = GetFunction(0, "_TOKRB_CollideConnected@8")
;TOKRB_CollideDirectlyConnected.TOKRB_CollideDirectlyConnected = GetFunction(0, "_TOKRB_CollideDirectlyConnected@8")
TOKRB_SetSleepingParameter.TOKRB_SetSleepingParameter = GetFunction(0, "_TOKRB_SetSleepingParameter@8")
TOKRB_Active.TOKRB_Active = GetFunction(0, "_TOKRB_Active@8")
TOKRB_IsActive.TOKRB_IsActive = GetFunction(0, "_TOKRB_IsActive@4")
TOKRB_GravityEnable.TOKRB_GravityEnable = GetFunction(0, "_TOKRB_GravityEnable@8")
TOKRB_IsGravityEnabled.TOKRB_IsGravityEnabled = GetFunction(0, "_TOKRB_IsGravityEnabled@4")
TOKRB_ApplyImpulse.TOKRB_ApplyImpulse = GetFunction(0, "_TOKRB_ApplyImpulse@16")
TOKRB_ApplyImpulse2.TOKRB_ApplyImpulse2 = GetFunction(0, "_TOKRB_ApplyImpulse2@28")
TOKRB_ApplyTwist.TOKRB_ApplyTwist = GetFunction(0, "_TOKRB_ApplyTwist@16")
TOKRB_SetForce.TOKRB_SetForce = GetFunction(0, "_TOKRB_SetForce@16")
TOKRB_SetForce2.TOKRB_SetForce2 = GetFunction(0, "_TOKRB_SetForce2@28")
TOKRB_SetTorque.TOKRB_SetTorque = GetFunction(0, "_TOKRB_SetTorque@16")
TOKRB_SetVelocity.TOKRB_SetVelocity = GetFunction(0, "_TOKRB_SetVelocity@16")
TOKRB_SetAngularMomentum.TOKRB_SetAngularMomentum = GetFunction(0, "_TOKRB_SetAngularMomentum@16")
TOKRB_GetVelocityX.TOKRB_GetVelocityX = GetFunction(0, "_TOKRB_GetVelocityX@4")
TOKRB_GetVelocityY.TOKRB_GetVelocityY = GetFunction(0, "_TOKRB_GetVelocityY@4")
TOKRB_GetVelocityZ.TOKRB_GetVelocityZ = GetFunction(0, "_TOKRB_GetVelocityZ@4")
TOKRB_GetAngularMomentumX.TOKRB_GetAngularMomentumX = GetFunction(0, "_TOKRB_GetAngularMomentumX@4")
TOKRB_GetAngularMomentumY.TOKRB_GetAngularMomentumY = GetFunction(0, "_TOKRB_GetAngularMomentumY@4")
TOKRB_GetAngularMomentumZ.TOKRB_GetAngularMomentumZ = GetFunction(0, "_TOKRB_GetAngularMomentumZ@4")
TOKRB_GetAngularVelocityX.TOKRB_GetAngularVelocityX = GetFunction(0, "_TOKRB_GetAngularVelocityX@4")
TOKRB_GetAngularVelocityY.TOKRB_GetAngularVelocityY = GetFunction(0, "_TOKRB_GetAngularVelocityY@4")
TOKRB_GetAngularVelocityZ.TOKRB_GetAngularVelocityZ = GetFunction(0, "_TOKRB_GetAngularVelocityZ@4")
TOKRB_GetVelocityAtPointX.TOKRB_GetVelocityAtPointX = GetFunction(0, "_TOKRB_GetVelocityAtPointX@16")
TOKRB_GetVelocityAtPointY.TOKRB_GetVelocityAtPointY = GetFunction(0, "_TOKRB_GetVelocityAtPointY@16")
TOKRB_GetVelocityAtPointZ.TOKRB_GetVelocityAtPointZ = GetFunction(0, "_TOKRB_GetVelocityAtPointZ@16")
TOKRB_RemoveGeometry.TOKRB_RemoveGeometry = GetFunction(0, "_TOKRB_RemoveGeometry@8")
TOKRB_GetGeometryCount.TOKRB_GetGeometryCount = GetFunction(0, "_TOKRB_GetGeometryCount@4")
TOKRB_BeginIterateGeometry.TOKRB_BeginIterateGeometry = GetFunction(0, "_TOKRB_BeginIterateGeometry@4")
TOKRB_GetNextGeometry.TOKRB_GetNextGeometry = GetFunction(0, "_TOKRB_GetNextGeometry@4")
TOKRB_AddSensor.TOKRB_AddSensor = GetFunction(0, "_TOKRB_AddSensor@28")
TOKRB_BeginIterateSensor.TOKRB_BeginIterateSensor = GetFunction(0, "_TOKRB_BeginIterateSensor@4")
TOKRB_GetNextSensor.TOKRB_GetNextSensor = GetFunction(0, "_TOKRB_GetNextSensor@4")
TOKRB_RemoveSensor.TOKRB_RemoveSensor = GetFunction(0, "_TOKRB_RemoveSensor@8")
TOKRB_SetUserData.TOKRB_SetUserData = GetFunction(0, "_TOKRB_SetUserData@8")
TOKRB_GetUserData.TOKRB_GetUserData = GetFunction(0, "_TOKRB_GetUserData@4")
; *** Animated Body ***
TOKAB_Create.TOKAB_Create = GetFunction(0, "_TOKAB_Create@0")
TOKAB_Free.TOKAB_Free = GetFunction(0, "_TOKAB_Free@4")
TOKAB_SetCollisionID.TOKAB_SetCollisionID = GetFunction(0, "_TOKAB_SetCollisionID@8")
TOKAB_GetCollisionID.TOKAB_GetCollisionID = GetFunction(0, "_TOKAB_GetCollisionID@4")
TOKAB_SetPosition.TOKAB_SetPosition = GetFunction(0, "_TOKAB_SetPosition@16")
TOKAB_SetRotation.TOKAB_SetRotation = GetFunction(0, "_TOKAB_SetRotation@16")
TOKAB_GetX.TOKAB_GetX = GetFunction(0, "_TOKAB_GetX@4")
TOKAB_GetY.TOKAB_GetY = GetFunction(0, "_TOKAB_GetY@4")
TOKAB_GetZ.TOKAB_GetZ = GetFunction(0, "_TOKAB_GetZ@4")
TOKAB_GetPitch.TOKAB_GetPitch = GetFunction(0, "_TOKAB_GetPitch@4")
TOKAB_GetYaw.TOKAB_GetYaw = GetFunction(0, "_TOKAB_GetYaw@4")
TOKAB_GetRoll.TOKAB_GetRoll = GetFunction(0, "_TOKAB_GetRoll@4")
TOKAB_AddBox.TOKAB_AddBox = GetFunction(0, "_TOKAB_AddBox@16")
TOKAB_AddSphere.TOKAB_AddSphere = GetFunction(0, "_TOKAB_AddSphere@8")
TOKAB_AddCylinder.TOKAB_AddCylinder = GetFunction(0, "_TOKAB_AddCylinder@12")
TOKAB_AddConvex.TOKAB_AddConvex = GetFunction(0, "_TOKAB_AddConvex@12")
TOKAB_UpdateBoundingInfo.TOKAB_UpdateBoundingInfo = GetFunction(0, "_TOKAB_UpdateBoundingInfo@4")
TOKAB_RemoveGeometry.TOKAB_RemoveGeometry = GetFunction(0, "_TOKAB_RemoveGeometry@8")
TOKAB_GetGeometryCount.TOKAB_GetGeometryCount = GetFunction(0, "_TOKAB_GetGeometryCount@4")
TOKAB_BeginIterateGeometry.TOKAB_BeginIterateGeometry = GetFunction(0, "_TOKAB_BeginIterateGeometry@4")
TOKAB_GetNextGeometry.TOKAB_GetNextGeometry = GetFunction(0, "_TOKAB_GetNextGeometry@4")
TOKAB_CollideConnected.TOKAB_CollideConnected = GetFunction(0, "_TOKAB_CollideConnected@8")
;TOKAB_CollideDirectlyConnected.TOKAB_CollideDirectlyConnected = GetFunction(0, "_TOKAB_CollideDirectlyConnected@8")
TOKAB_SetUserData.TOKAB_SetUserData = GetFunction(0, "_TOKAB_SetUserData@8")
TOKAB_GetUserData.TOKAB_GetUserData = GetFunction(0, "_TOKAB_GetUserData@4")
; *** Geometry ***
TOKGEOM_SetPositionAndRotation.TOKGEOM_SetPositionAndRotation = GetFunction(0, "_TOKGEOM_SetPositionAndRotation@28")
TOKGEOM_SetMaterialIndex.TOKGEOM_SetMaterialIndex = GetFunction(0, "_TOKGEOM_SetMaterialIndex@8")
TOKGEOM_GetMaterialIndex.TOKGEOM_GetMaterialIndex = GetFunction(0, "_TOKGEOM_GetMaterialIndex@4")
TOKGEOM_SetUserData.TOKGEOM_SetUserData = GetFunction(0, "_TOKGEOM_SetUserData@8")
TOKGEOM_GetUserData.TOKGEOM_GetUserData = GetFunction(0, "_TOKGEOM_GetUserData@4")
; *** Joint ***
TOKJOINT_Create.TOKJOINT_Create = GetFunction(0, "_TOKJOINT_Create@12")
TOKJOINT_Free.TOKJOINT_Free = GetFunction(0, "_TOKJOINT_Free@4")
TOKJOINT_SetType.TOKJOINT_SetType = GetFunction(0, "_TOKJOINT_SetType@8")
TOKJOINT_SetPositionAndRotationWorld.TOKJOINT_SetPositionAndRotationWorld = GetFunction(0, "_TOKJOINT_SetPositionWorld@28")
TOKJOINT_SetPositionAndRotationFrameA.TOKJOINT_SetPositionAndRotationFrameA = GetFunction(0, "_TOKJOINT_SetPositionFrameA@28")
TOKJOINT_SetPositionAndRotationFrameB.TOKJOINT_SetPositionAndRotationFrameB = GetFunction(0, "_TOKJOINT_SetPositionFrameB@28")
TOKJOINT_SetJointLength.TOKJOINT_SetJointLength = GetFunction(0, "_TOKJOINT_SetJointLength@8")
TOKJOINT_GetJointLength.TOKJOINT_GetJointLength = GetFunction(0, "_TOKJOINT_GetJointLength@4")
TOKJOINT_Enable.TOKJOINT_Enable = GetFunction(0, "_TOKJOINT_Enable@8")
TOKJOINT_IsEnabled.TOKJOINT_IsEnabled = GetFunction(0, "_TOKJOINT_IsEnabled@4")
TOKJOINT_SetUpperLimit.TOKJOINT_SetUpperLimit = GetFunction(0, "_TOKJOINT_SetUpperLimit@8")
TOKJOINT_SetLowerLimit.TOKJOINT_SetLowerLimit = GetFunction(0, "_TOKJOINT_SetLowerLimit@8")
TOKJOINT_SetUpperLimit2.TOKJOINT_SetUpperLimit2 = GetFunction(0, "_TOKJOINT_SetUpperLimit2@8")
TOKJOINT_SetLowerLimit2.TOKJOINT_SetLowerLimit2 = GetFunction(0, "_TOKJOINT_SetLowerLimit2@8")
TOKJOINT_GetUpperLimit.TOKJOINT_GetUpperLimit = GetFunction(0, "_TOKJOINT_GetUpperLimit@4")
TOKJOINT_GetLowerLimit.TOKJOINT_GetLowerLimit = GetFunction(0, "_TOKJOINT_GetLowerLimit@4")
TOKJOINT_GetUpperLimit2.TOKJOINT_GetUpperLimit2 = GetFunction(0, "_TOKJOINT_GetUpperLimit2@4")
TOKJOINT_GetLowerLimit2.TOKJOINT_GetLowerLimit2 = GetFunction(0, "_TOKJOINT_GetLowerLimit2@4")
TOKJOINT_EnableLimit.TOKJOINT_EnableLimit = GetFunction(0, "_TOKJOINT_EnableLimit@8")
TOKJOINT_EnableLimit2.TOKJOINT_EnableLimit2 = GetFunction(0, "_TOKJOINT_EnableLimit2@8")
TOKJOINT_IsLimitEnabled.TOKJOINT_IsLimitEnabled = GetFunction(0, "_TOKJOINT_IsLimitEnabled@4")
TOKJOINT_IsLimit2Enabled.TOKJOINT_IsLimit2Enabled = GetFunction(0, "_TOKJOINT_IsLimit2Enabled@4")
TOKJOINT_SetEpsilon.TOKJOINT_SetEpsilon = GetFunction(0, "_TOKJOINT_SetEpsilon@8")
TOKJOINT_SetIterations.TOKJOINT_SetIterations = GetFunction(0, "_TOKJOINT_SetIterations@8")
TOKJOINT_GetEpsilon.TOKJOINT_GetEpsilon = GetFunction(0, "_TOKJOINT_GetEpsilon@4")
TOKJOINT_GetIterations.TOKJOINT_GetIterations = GetFunction(0, "_TOKJOINT_GetIterations@4")
TOKJOINT_GetFrameAX.TOKJOINT_GetFrameAX = GetFunction(0, "_TOKJOINT_GetFrameAX@4")
TOKJOINT_GetFrameAY.TOKJOINT_GetFrameAY = GetFunction(0, "_TOKJOINT_GetFrameAY@4")
TOKJOINT_GetFrameAZ.TOKJOINT_GetFrameAZ = GetFunction(0, "_TOKJOINT_GetFrameAZ@4")
TOKJOINT_GetFrameBX.TOKJOINT_GetFrameBX = GetFunction(0, "_TOKJOINT_GetFrameBX@4")
TOKJOINT_GetFrameBY.TOKJOINT_GetFrameBY = GetFunction(0, "_TOKJOINT_GetFrameBY@4")
TOKJOINT_GetFrameBZ.TOKJOINT_GetFrameBZ = GetFunction(0, "_TOKJOINT_GetFrameBZ@4")
TOKJOINT_GetFrameAPitch.TOKJOINT_GetFrameAPitch = GetFunction(0, "_TOKJOINT_GetFrameAPitch@4")
TOKJOINT_GetFrameAYaw.TOKJOINT_GetFrameAYaw = GetFunction(0, "_TOKJOINT_GetFrameAYaw@4")
TOKJOINT_GetFrameARoll.TOKJOINT_GetFrameARoll = GetFunction(0, "_TOKJOINT_GetFrameARoll@4")
TOKJOINT_GetFrameBPitch.TOKJOINT_GetFrameBPitch = GetFunction(0, "_TOKJOINT_GetFrameBPitch@4")
TOKJOINT_GetFrameBYaw.TOKJOINT_GetFrameBYaw = GetFunction(0, "_TOKJOINT_GetFrameBYaw@4")
TOKJOINT_GetFrameBRoll.TOKJOINT_GetFrameBRoll = GetFunction(0, "_TOKJOINT_GetFrameBRoll@4")
TOKJOINT_SetDampingFactor.TOKJOINT_SetDampingFactor = GetFunction(0, "_TOKJOINT_SetDampingFactor@8")
TOKJOINT_GetDampingFactor.TOKJOINT_GetDampingFactor = GetFunction(0, "_TOKJOINT_GetDampingFactor@4")
TOKJOINT_EnableMotor.TOKJOINT_EnableMotor = GetFunction(0, "_TOKJOINT_EnableMotor@8")
TOKJOINT_IsMotorEnabled.TOKJOINT_IsMotorEnabled = GetFunction(0, "_TOKJOINT_IsMotorEnabled@4")
TOKJOINT_SetMotorSpeed.TOKJOINT_SetMotorSpeed = GetFunction(0, "_TOKJOINT_SetMotorSpeed@12")
TOKJOINT_EnableMotor2.TOKJOINT_EnableMotor2 = GetFunction(0, "_TOKJOINT_EnableMotor2@8")
TOKJOINT_IsMotor2Enabled.TOKJOINT_IsMotor2Enabled = GetFunction(0, "_TOKJOINT_IsMotor2Enabled@4")
TOKJOINT_SetMotor2Speed.TOKJOINT_SetMotor2Speed = GetFunction(0, "_TOKJOINT_SetMotor2Speed@12")
; *** Sensor ***
TOKSENSOR_SetLineSensor.TOKSENSOR_SetLineSensor = GetFunction(0, "_TOKSENSOR_SetLineSensor@28")
TOKSENSOR_GetLineVectorX.TOKSENSOR_GetLineVectorX = GetFunction(0, "_TOKSENSOR_GetLineVectorX@4")
TOKSENSOR_GetLineVectorY.TOKSENSOR_GetLineVectorY = GetFunction(0, "_TOKSENSOR_GetLineVectorY@4")
TOKSENSOR_GetLineVectorZ.TOKSENSOR_GetLineVectorZ = GetFunction(0, "_TOKSENSOR_GetLineVectorZ@4")
TOKSENSOR_GetLineUnitVectorX.TOKSENSOR_GetLineUnitVectorX = GetFunction(0, "_TOKSENSOR_GetLineUnitVectorX@4")
TOKSENSOR_GetLineUnitVectorY.TOKSENSOR_GetLineUnitVectorY = GetFunction(0, "_TOKSENSOR_GetLineUnitVectorY@4")
TOKSENSOR_GetLineUnitVectorZ.TOKSENSOR_GetLineUnitVectorZ = GetFunction(0, "_TOKSENSOR_GetLineUnitVectorZ@4")
TOKSENSOR_GetLinePosX.TOKSENSOR_GetLinePosX = GetFunction(0, "_TOKSENSOR_GetLinePosX@4")
TOKSENSOR_GetLinePosY.TOKSENSOR_GetLinePosY = GetFunction(0, "_TOKSENSOR_GetLinePosY@4")
TOKSENSOR_GetLinePosZ.TOKSENSOR_GetLinePosZ = GetFunction(0, "_TOKSENSOR_GetLinePosZ@4")
TOKSENSOR_GetDetectDepth.TOKSENSOR_GetDetectDepth = GetFunction(0, "_TOKSENSOR_GetDetectDepth@4")
TOKSENSOR_GetDetectNormalX.TOKSENSOR_GetDetectNormalX = GetFunction(0, "_TOKSENSOR_GetDetectNormalX@4")
TOKSENSOR_GetDetectNormalY.TOKSENSOR_GetDetectNormalY = GetFunction(0, "_TOKSENSOR_GetDetectNormalY@4")
TOKSENSOR_GetDetectNormalZ.TOKSENSOR_GetDetectNormalZ = GetFunction(0, "_TOKSENSOR_GetDetectNormalZ@4")
TOKSENSOR_GetDetectContactPointX.TOKSENSOR_GetDetectContactPointX = GetFunction(0, "_TOKSENSOR_GetDetectContactPointX@4")
TOKSENSOR_GetDetectContactPointY.TOKSENSOR_GetDetectContactPointY = GetFunction(0, "_TOKSENSOR_GetDetectContactPointY@4")
TOKSENSOR_GetDetectContactPointZ.TOKSENSOR_GetDetectContactPointZ = GetFunction(0, "_TOKSENSOR_GetDetectContactPointZ@4")
TOKSENSOR_GetDetectRigidBody.TOKSENSOR_GetDetectRigidBody = GetFunction(0, "_TOKSENSOR_GetDetectRigidBody@4")
TOKSENSOR_GetDetectAnimatedBody.TOKSENSOR_GetDetectAnimatedBody = GetFunction(0, "_TOKSENSOR_GetDetectAnimatedBody@4")
TOKSENSOR_GetDetectMaterial.TOKSENSOR_GetDetectMaterial = GetFunction(0, "_TOKSENSOR_GetDetectMaterial@4")
TOKSENSOR_SetUserData.TOKSENSOR_SetUserData = GetFunction(0, "_TOKSENSOR_SetUserData@8")
TOKSENSOR_GetUserData.TOKSENSOR_GetUserData = GetFunction(0, "_TOKSENSOR_GetUserData@4")
EndIf