sdk physics engines?

Archives Forums/Blitz3D SDK Programming/sdk physics engines?

Robert Cummings(Posted 2007) [#1]
Any available physics engines ported to the sdk yet?


VIP3R(Posted 2007) [#2]
JV-ODE works with the SDK. No dedicated examples yet except this one (BlitzMax)...

http://www.blitzmax.com/Community/posts.php?topic=70189


ZJP(Posted 2007) [#3]
How to convert the Blitz3D DECLS
http://www.blitzbasic.com/Community/posts.php?topic=70890


Robert Cummings(Posted 2007) [#4]
Great, I own JV-ODE but the blitz3D version. Is the Blitzmax version a seperate purchase?


Amon(Posted 2007) [#5]
Is the Blitzmax version a seperate purchase?


Yep. I did get a discount on the Max Version though because I already owned the B3D version.


VIP3R(Posted 2007) [#6]
There's a 50% discount for existing users of the Blitz3D version.

Email me and I'll send you a discount code.


JoeRetro(Posted 2007) [#7]
VIP3R: Any chance of getting the JV_ODE include file (c/c++) for use in win32 projects using Blitz3D SDK? I've purchased both of your products.


VIP3R(Posted 2007) [#8]
@Joe: I haven't created one yet, the Blitz3D 'JV-ODE.decls' file should contain the necessary info though. There's some code (you can't miss it, it's spammed everywhere) posted by ZJP that's supposed to create one automagically, but it didn't seem to work properly for me.


ZJP(Posted 2007) [#9]
spammed ??????
Questions about a PB >>>> Solution.
May be i'm supposed to buy again :

- JV-ode wrapper
- Physx wrapper
- Newton Wrapper
- AShadow Wrapper
- AMT water Wrapper
- AMT Particle Wrapper
- Particle Candy
- Sprite Candy

for B3DSDK..

Or pray... "Please Mrs X Y or Z...please, a Include (C/C++) file for my LICENCED wrapper." ;-)

JP


VIP3R(Posted 2007) [#10]
It's all over the place, seriously.

Nevermind, just get your converter fixed, it sounds very useful ;)


JoeRetro(Posted 2007) [#11]

Nevermind, just get your converter fixed, it sounds very useful ;)

It works if you remove the comments, blank lines and the .lib statement from your decls file.


VIP3R(Posted 2007) [#12]
So in other words, 'it works... once you've fixed it' :)


JoeRetro(Posted 2007) [#13]
Well, with my fix ZJP's program appears to work and does what he intended it to do. Now, weather it works or not is yet to be seen :)


JoeRetro(Posted 2007) [#14]
@Joe: I haven't created one yet, the Blitz3D 'JV-ODE.decls' file should contain the necessary info though. There's some code (you can't miss it, it's spammed everywhere) posted by ZJP that's supposed to create one automagically, but it didn't seem to work properly for me.

[code]typedef int(WINAPI *DLL_dWorldCreate) ();
DLL_dWorldCreate dWorldCreate = (DLL_dWorldCreate)GetProcAddress(hDLL,"_odeWorldCreate@0");
typedef void(WINAPI *DLL_dWorldDestroy) (int world);
DLL_dWorldDestroy dWorldDestroy = (DLL_dWorldDestroy)GetProcAddress(hDLL,"_odeWorldDestroy@4");
typedef void(WINAPI *DLL_dWorldSetGravity) (int world, float x, float y, float z);
DLL_dWorldSetGravity dWorldSetGravity = (DLL_dWorldSetGravity)GetProcAddress(hDLL,"_odeWorldSetGravity@16");
typedef void(WINAPI *DLL_dWorldGetGravity) (int world);
DLL_dWorldGetGravity dWorldGetGravity = (DLL_dWorldGetGravity)GetProcAddress(hDLL,"_odeWorldGetGravity@4");
typedef void(WINAPI *DLL_dWorldSetERP) (int world, float erp);
DLL_dWorldSetERP dWorldSetERP = (DLL_dWorldSetERP)GetProcAddress(hDLL,"_odeWorldSetERP@8");
typedef float(WINAPI *DLL_dWorldGetERP) (int world);
DLL_dWorldGetERP dWorldGetERP = (DLL_dWorldGetERP)GetProcAddress(hDLL,"_odeWorldGetERP@4");
typedef void(WINAPI *DLL_dWorldSetCFM) (int world, float cfm);
DLL_dWorldSetCFM dWorldSetCFM = (DLL_dWorldSetCFM)GetProcAddress(hDLL,"_odeWorldSetCFM@8");
typedef float(WINAPI *DLL_dWorldGetCFM) (int world);
DLL_dWorldGetCFM dWorldGetCFM = (DLL_dWorldGetCFM)GetProcAddress(hDLL,"_odeWorldGetCFM@4");
typedef void(WINAPI *DLL_dWorldSetAutoDisableFlag) (int world, int doautodisable);
DLL_dWorldSetAutoDisableFlag dWorldSetAutoDisableFlag = (DLL_dWorldSetAutoDisableFlag)GetProcAddress(hDLL,"_odeWorldSetAutoDisableFlag@8");
typedef int(WINAPI *DLL_dWorldGetAutoDisableFlag) (int world);
DLL_dWorldGetAutoDisableFlag dWorldGetAutoDisableFlag = (DLL_dWorldGetAutoDisableFlag)GetProcAddress(hDLL,"_odeWorldGetAutoDisableFlag@4");
typedef void(WINAPI *DLL_dWorldSetAutoDisableLinearThreshold) (int world, float lthreshold);
DLL_dWorldSetAutoDisableLinearThreshold dWorldSetAutoDisableLinearThreshold = (DLL_dWorldSetAutoDisableLinearThreshold)GetProcAddress(hDLL,"_odeWorldSetAutoDisableLinearThreshold@8");
typedef float(WINAPI *DLL_dWorldGetAutoDisableLinearThreshold) (int world);
DLL_dWorldGetAutoDisableLinearThreshold dWorldGetAutoDisableLinearThreshold = (DLL_dWorldGetAutoDisableLinearThreshold)GetProcAddress(hDLL,"_odeWorldGetAutoDisableLinearThreshold@4");
typedef void(WINAPI *DLL_dWorldSetAutoDisableAngularThreshold) (int world, float athreshold);
DLL_dWorldSetAutoDisableAngularThreshold dWorldSetAutoDisableAngularThreshold = (DLL_dWorldSetAutoDisableAngularThreshold)GetProcAddress(hDLL,"_odeWorldSetAutoDisableAngularThreshold@8");
typedef float(WINAPI *DLL_dWorldGetAutoDisableAngularThreshold) (int world);
DLL_dWorldGetAutoDisableAngularThreshold dWorldGetAutoDisableAngularThreshold = (DLL_dWorldGetAutoDisableAngularThreshold)GetProcAddress(hDLL,"_odeWorldGetAutoDisableAngularThreshold@4");
typedef void(WINAPI *DLL_dWorldSetAutoDisableSteps) (int world, int stepsr);
DLL_dWorldSetAutoDisableSteps dWorldSetAutoDisableSteps = (DLL_dWorldSetAutoDisableSteps)GetProcAddress(hDLL,"_odeWorldSetAutoDisableSteps@8");
typedef int(WINAPI *DLL_dWorldGetAutoDisableSteps) (int world);
DLL_dWorldGetAutoDisableSteps dWorldGetAutoDisableSteps = (DLL_dWorldGetAutoDisableSteps)GetProcAddress(hDLL,"_odeWorldGetAutoDisableSteps@4");
typedef void(WINAPI *DLL_dWorldSetAutoDisableTime) (int world, float time);
DLL_dWorldSetAutoDisableTime dWorldSetAutoDisableTime = (DLL_dWorldSetAutoDisableTime)GetProcAddress(hDLL,"_odeWorldSetAutoDisableTime@8");
typedef float(WINAPI *DLL_dWorldGetAutoDisableTime) (int world);
DLL_dWorldGetAutoDisableTime dWorldGetAutoDisableTime = (DLL_dWorldGetAutoDisableTime)GetProcAddress(hDLL,"_odeWorldGetAutoDisableTime@4");
typedef void(WINAPI *DLL_dWorldImpulseToForce) (int world, float stepsize, float ix, float iy, float iz);
DLL_dWorldImpulseToForce dWorldImpulseToForce = (DLL_dWorldImpulseToForce)GetProcAddress(hDLL,"_odeWorldImpulseToForce@20");
typedef void(WINAPI *DLL_dCloseODE) ();
DLL_dCloseODE dCloseODE = (DLL_dCloseODE)GetProcAddress(hDLL,"_odeCloseODE@0");
typedef void(WINAPI *DLL_dWorldStep) (int world, float stepsize);
DLL_dWorldStep dWorldStep = (DLL_dWorldStep)GetProcAddress(hDLL,"_odeWorldStep@8");
typedef void(WINAPI *DLL_dWorldQuickStep) (int world, float stepsize);
DLL_dWorldQuickStep dWorldQuickStep = (DLL_dWorldQuickStep)GetProcAddress(hDLL,"_odeWorldQuickStep@8");
typedef void(WINAPI *DLL_dWorldSetQuickStepNumIterations) (int world, int num);
DLL_dWorldSetQuickStepNumIterations dWorldSetQuickStepNumIterations = (DLL_dWorldSetQuickStepNumIterations)GetProcAddress(hDLL,"_odeWorldSetQuickStepNumIterations@8");
typedef int(WINAPI *DLL_dWorldGetQuickStepNumIterations) (int world);
DLL_dWorldGetQuickStepNumIterations dWorldGetQuickStepNumIterations = (DLL_dWorldGetQuickStepNumIterations)GetProcAddress(hDLL,"_odeWorldGetQuickStepNumIterations@4");
typedef void(WINAPI *DLL_dWorldSetContactMaxCorrectingVel) (int world, float vel);
DLL_dWorldSetContactMaxCorrectingVel dWorldSetContactMaxCorrectingVel = (DLL_dWorldSetContactMaxCorrectingVel)GetProcAddress(hDLL,"_odeWorldSetContactMaxCorrectingVel@8");
typedef float(WINAPI *DLL_dWorldGetContactMaxCorrectingVel) (int world);
DLL_dWorldGetContactMaxCorrectingVel dWorldGetContactMaxCorrectingVel = (DLL_dWorldGetContactMaxCorrectingVel)GetProcAddress(hDLL,"_odeWorldGetContactMaxCorrectingVel@4");
typedef void(WINAPI *DLL_dWorldSetContactSurfaceLayer) (int world, float depth);
DLL_dWorldSetContactSurfaceLayer dWorldSetContactSurfaceLayer = (DLL_dWorldSetContactSurfaceLayer)GetProcAddress(hDLL,"_odeWorldSetContactSurfaceLayer@8");
typedef float(WINAPI *DLL_dWorldGetContactSurfaceLayer) (int world);
DLL_dWorldGetContactSurfaceLayer dWorldGetContactSurfaceLayer = (DLL_dWorldGetContactSurfaceLayer)GetProcAddress(hDLL,"_odeWorldGetContactSurfaceLayer@4");
typedef void(WINAPI *DLL_dWorldStepFast1) (int world, float stepsize, int maxiterations);
DLL_dWorldStepFast1 dWorldStepFast1 = (DLL_dWorldStepFast1)GetProcAddress(hDLL,"_odeWorldStepFast1@12");
typedef void(WINAPI *DLL_dWorldSetAutoEnableDepthSF1) (int world, int autoenabledepth);
DLL_dWorldSetAutoEnableDepthSF1 dWorldSetAutoEnableDepthSF1 = (DLL_dWorldSetAutoEnableDepthSF1)GetProcAddress(hDLL,"_odeWorldSetAutoEnableDepthSF1@8");
typedef int(WINAPI *DLL_dWorldGetAutoEnableDepthSF1) (int world);
DLL_dWorldGetAutoEnableDepthSF1 dWorldGetAutoEnableDepthSF1 = (DLL_dWorldGetAutoEnableDepthSF1)GetProcAddress(hDLL,"_odeWorldGetAutoEnableDepthSF1@4");
typedef void(WINAPI *DLL_dWorldSetQuickStepW) (int world, float overrelaxation);
DLL_dWorldSetQuickStepW dWorldSetQuickStepW = (DLL_dWorldSetQuickStepW)GetProcAddress(hDLL,"_odeWorldSetQuickStepW@8");
typedef float(WINAPI *DLL_dWorldGetQuickStepW) (int world);
DLL_dWorldGetQuickStepW dWorldGetQuickStepW = (DLL_dWorldGetQuickStepW)GetProcAddress(hDLL,"_odeWorldGetQuickStepW@4");
typedef int(WINAPI *DLL_dSimpleSpaceCreate) (int space);
DLL_dSimpleSpaceCreate dSimpleSpaceCreate = (DLL_dSimpleSpaceCreate)GetProcAddress(hDLL,"_odeSimpleSpaceCreate@4");
typedef int(WINAPI *DLL_dHashSpaceCreate) (int space);
DLL_dHashSpaceCreate dHashSpaceCreate = (DLL_dHashSpaceCreate)GetProcAddress(hDLL,"_odeHashSpaceCreate@4");
typedef int(WINAPI *DLL_dQuadTreeSpaceCreate) (int space, float cx, float cy, float cz, float ex, float ey, float ez);
DLL_dQuadTreeSpaceCreate dQuadTreeSpaceCreate = (DLL_dQuadTreeSpaceCreate)GetProcAddress(hDLL,"_odeQuadTreeSpaceCreate@32");
typedef void(WINAPI *DLL_dSpaceDestroy) (int space);
DLL_dSpaceDestroy dSpaceDestroy = (DLL_dSpaceDestroy)GetProcAddress(hDLL,"_odeSpaceDestroy@4");
typedef void(WINAPI *DLL_dHashSpaceSetLevels) (int space);
DLL_dHashSpaceSetLevels dHashSpaceSetLevels = (DLL_dHashSpaceSetLevels)GetProcAddress(hDLL,"_odeHashSpaceSetLevels@12");
typedef void(WINAPI *DLL_dHashSpaceGetLevels) (int space);
DLL_dHashSpaceGetLevels dHashSpaceGetLevels = (DLL_dHashSpaceGetLevels)GetProcAddress(hDLL,"_odeHashSpaceGetLevels@4");
typedef void(WINAPI *DLL_dSpaceSetCleanup) (int space, int mode);
DLL_dSpaceSetCleanup dSpaceSetCleanup = (DLL_dSpaceSetCleanup)GetProcAddress(hDLL,"_odeSpaceSetCleanup@8");
typedef int(WINAPI *DLL_dSpaceGetCleanup) (int space);
DLL_dSpaceGetCleanup dSpaceGetCleanup = (DLL_dSpaceGetCleanup)GetProcAddress(hDLL,"_odeSpaceGetCleanup@4");
typedef void(WINAPI *DLL_dSpaceAdd) (int space, int geom);
DLL_dSpaceAdd dSpaceAdd = (DLL_dSpaceAdd)GetProcAddress(hDLL,"_odeSpaceAdd@8");
typedef void(WINAPI *DLL_dSpaceRemove) (int space, int geom);
DLL_dSpaceRemove dSpaceRemove = (DLL_dSpaceRemove)GetProcAddress(hDLL,"_odeSpaceRemove@8");
typedef int(WINAPI *DLL_dSpaceQuery) (int space, int geom);
DLL_dSpaceQuery dSpaceQuery = (DLL_dSpaceQuery)GetProcAddress(hDLL,"_odeSpaceQuery@8");
typedef int(WINAPI *DLL_dSpaceGetNumGeoms) (int space);
DLL_dSpaceGetNumGeoms dSpaceGetNumGeoms = (DLL_dSpaceGetNumGeoms)GetProcAddress(hDLL,"_odeSpaceGetNumGeoms@4");
typedef int(WINAPI *DLL_dSpaceGetGeom) (int space, int index);
DLL_dSpaceGetGeom dSpaceGetGeom = (DLL_dSpaceGetGeom)GetProcAddress(hDLL,"_odeSpaceGetGeom@8");
typedef int(WINAPI *DLL_dBodyCreate) (int world);
DLL_dBodyCreate dBodyCreate = (DLL_dBodyCreate)GetProcAddress(hDLL,"_odeBodyCreate@4");
typedef void(WINAPI *DLL_dBodyDestroy) (int body);
DLL_dBodyDestroy dBodyDestroy = (DLL_dBodyDestroy)GetProcAddress(hDLL,"_odeBodyDestroy@4");
typedef void(WINAPI *DLL_dBodySetPosition) (int body, float x, float y, float z);
DLL_dBodySetPosition dBodySetPosition = (DLL_dBodySetPosition)GetProcAddress(hDLL,"_odeBodySetPosition@16");
typedef void(WINAPI *DLL_dBodySetRotation) (int body, float pitch, float yaw, float roll);
DLL_dBodySetRotation dBodySetRotation = (DLL_dBodySetRotation)GetProcAddress(hDLL,"_odeBodySetRotation@16");
typedef void(WINAPI *DLL_dBodySetQuaternion) (int body, float qw, float qx, float qy, float qz);
DLL_dBodySetQuaternion dBodySetQuaternion = (DLL_dBodySetQuaternion)GetProcAddress(hDLL,"_odeBodySetQuaternion@20");
typedef void(WINAPI *DLL_dBodySetAxisAngle) (int body, float angle, float rx, float ry, float rz);
DLL_dBodySetAxisAngle dBodySetAxisAngle = (DLL_dBodySetAxisAngle)GetProcAddress(hDLL,"_odeBodySetAxisAngle@20");
typedef void(WINAPI *DLL_dBodySetLinearVel) (int body, float x, float y, float z);
DLL_dBodySetLinearVel dBodySetLinearVel = (DLL_dBodySetLinearVel)GetProcAddress(hDLL,"_odeBodySetLinearVel@16");
typedef void(WINAPI *DLL_dBodySetAngularVel) (int body, float x, float y, float z);
DLL_dBodySetAngularVel dBodySetAngularVel = (DLL_dBodySetAngularVel)GetProcAddress(hDLL,"_odeBodySetAngularVel@16");
typedef void(WINAPI *DLL_dBodyGetPosition) (int body);
DLL_dBodyGetPosition dBodyGetPosition = (DLL_dBodyGetPosition)GetProcAddress(hDLL,"_odeBodyGetPosition@4");
typedef float(WINAPI *DLL_dBodyGetPositionX) (int body);
DLL_dBodyGetPositionX dBodyGetPositionX = (DLL_dBodyGetPositionX)GetProcAddress(hDLL,"_odeBodyGetPositionX@4");
typedef float(WINAPI *DLL_dBodyGetPositionY) (int body);
DLL_dBodyGetPositionY dBodyGetPositionY = (DLL_dBodyGetPositionY)GetProcAddress(hDLL,"_odeBodyGetPositionY@4");
typedef float(WINAPI *DLL_dBodyGetPositionZ) (int body);
DLL_dBodyGetPositionZ dBodyGetPositionZ = (DLL_dBodyGetPositionZ)GetProcAddress(hDLL,"_odeBodyGetPositionZ@4");
typedef void(WINAPI *DLL_dBodyGetRotation) (int body);
DLL_dBodyGetRotation dBodyGetRotation = (DLL_dBodyGetRotation)GetProcAddress(hDLL,"_odeBodyGetRotation@4");
typedef void(WINAPI *DLL_dBodyGetQuaternion) (int body);
DLL_dBodyGetQuaternion dBodyGetQuaternion = (DLL_dBodyGetQuaternion)GetProcAddress(hDLL,"_odeBodyGetQuaternion@4");
typedef void(WINAPI *DLL_dBodyGetAxisAngle) (int body);
DLL_dBodyGetAxisAngle dBodyGetAxisAngle = (DLL_dBodyGetAxisAngle)GetProcAddress(hDLL,"_odeBodyGetAxisAngle@4");
typedef float(WINAPI *DLL_dBodyGetPitch) (int body);
DLL_dBodyGetPitch dBodyGetPitch = (DLL_dBodyGetPitch)GetProcAddress(hDLL,"_odeBodyGetPitch@4");
typedef float(WINAPI *DLL_dBodyGetYaw) (int body);
DLL_dBodyGetYaw dBodyGetYaw = (DLL_dBodyGetYaw)GetProcAddress(hDLL,"_odeBodyGetYaw@4");
typedef float(WINAPI *DLL_dBodyGetRoll) (int body);
DLL_dBodyGetRoll dBodyGetRoll = (DLL_dBodyGetRoll)GetProcAddress(hDLL,"_odeBodyGetRoll@4");
typedef void(WINAPI *DLL_dBodyGetLinearVel) (int body);
DLL_dBodyGetLinearVel dBodyGetLinearVel = (DLL_dBodyGetLinearVel)GetProcAddress(hDLL,"_odeBodyGetLinearVel@4");
typedef float(WINAPI *DLL_dBodyGetLinearVelX) (int body);
DLL_dBodyGetLinearVelX dBodyGetLinearVelX = (DLL_dBodyGetLinearVelX)GetProcAddress(hDLL,"_odeBodyGetLinearVelX@4");
typedef float(WINAPI *DLL_dBodyGetLinearVelY) (int body);
DLL_dBodyGetLinearVelY dBodyGetLinearVelY = (DLL_dBodyGetLinearVelY)GetProcAddress(hDLL,"_odeBodyGetLinearVelY@4");
typedef float(WINAPI *DLL_dBodyGetLinearVelZ) (int body);
DLL_dBodyGetLinearVelZ dBodyGetLinearVelZ = (DLL_dBodyGetLinearVelZ)GetProcAddress(hDLL,"_odeBodyGetLinearVelZ@4");
typedef void(WINAPI *DLL_dBodyGetAngularVel) (int body);
DLL_dBodyGetAngularVel dBodyGetAngularVel = (DLL_dBodyGetAngularVel)GetProcAddress(hDLL,"_odeBodyGetAngularVel@4");
typedef float(WINAPI *DLL_dBodyGetAngularVelX) (int body);
DLL_dBodyGetAngularVelX dBodyGetAngularVelX = (DLL_dBodyGetAngularVelX)GetProcAddress(hDLL,"_odeBodyGetAngularVelX@4");
typedef float(WINAPI *DLL_dBodyGetAngularVelY) (int body);
DLL_dBodyGetAngularVelY dBodyGetAngularVelY = (DLL_dBodyGetAngularVelY)GetProcAddress(hDLL,"_odeBodyGetAngularVelY@4");
typedef float(WINAPI *DLL_dBodyGetAngularVelZ) (int body);
DLL_dBodyGetAngularVelZ dBodyGetAngularVelZ = (DLL_dBodyGetAngularVelZ)GetProcAddress(hDLL,"_odeBodyGetAngularVelZ@4");
typedef void(WINAPI *DLL_dBodySetMass) (int body, int mass);
DLL_dBodySetMass dBodySetMass = (DLL_dBodySetMass)GetProcAddress(hDLL,"_odeBodySetMass@8");
typedef float(WINAPI *DLL_dBodyGetMass) (int body);
DLL_dBodyGetMass dBodyGetMass = (DLL_dBodyGetMass)GetProcAddress(hDLL,"_odeBodyGetMass@4");
typedef void(WINAPI *DLL_dBodyAddForce) (int body, float fx, float fy, float fz);
DLL_dBodyAddForce dBodyAddForce = (DLL_dBodyAddForce)GetProcAddress(hDLL,"_odeBodyAddForce@16");
typedef void(WINAPI *DLL_dBodyAddTorque) (int body, float fx, float fy, float fz);
DLL_dBodyAddTorque dBodyAddTorque = (DLL_dBodyAddTorque)GetProcAddress(hDLL,"_odeBodyAddTorque@16");
typedef void(WINAPI *DLL_dBodyAddRelForce) (int body, float fx, float fy, float fz);
DLL_dBodyAddRelForce dBodyAddRelForce = (DLL_dBodyAddRelForce)GetProcAddress(hDLL,"_odeBodyAddRelForce@16");
typedef void(WINAPI *DLL_dBodyAddRelTorque) (int body, float fx, float fy, float fz);
DLL_dBodyAddRelTorque dBodyAddRelTorque = (DLL_dBodyAddRelTorque)GetProcAddress(hDLL,"_odeBodyAddRelTorque@16");
typedef void(WINAPI *DLL_dBodyAddForceAtPos) (int body, float fx, float fy, float fz, float px, float py, float pz);
DLL_dBodyAddForceAtPos dBodyAddForceAtPos = (DLL_dBodyAddForceAtPos)GetProcAddress(hDLL,"_odeBodyAddForceAtPos@28");
typedef void(WINAPI *DLL_dBodyAddForceAtRelPos) (int body, float fx, float fy, float fz, float px, float py, float pz);
DLL_dBodyAddForceAtRelPos dBodyAddForceAtRelPos = (DLL_dBodyAddForceAtRelPos)GetProcAddress(hDLL,"_odeBodyAddForceAtRelPos@28");
typedef void(WINAPI *DLL_dBodyAddRelForceAtPos) (int body, float fx, float fy, float fz, float px, float py, float pz);
DLL_dBodyAddRelForceAtPos dBodyAddRelForceAtPos = (DLL_dBodyAddRelForceAtPos)GetProcAddress(hDLL,"_odeBodyAddRelForceAtPos@28");
typedef void(WINAPI *DLL_dBodyAddRelForceAtRelPos) (int body, float fx, float fy, float fz, float px, float py, float pz);
DLL_dBodyAddRelForceAtRelPos dBodyAddRelForceAtRelPos = (DLL_dBodyAddRelForceAtRelPos)GetProcAddress(hDLL,"_odeBodyAddRelForceAtRelPos@28");
typedef void(WINAPI *DLL_dBodyGetForce) (int body);
DLL_dBodyGetForce dBodyGetForce = (DLL_dBodyGetForce)GetProcAddress(hDLL,"_odeBodyGetForce@4");
typedef void(WINAPI *DLL_dBodyGetTorque) (int body);
DLL_dBodyGetTorque dBodyGetTorque = (DLL_dBodyGetTorque)GetProcAddress(hDLL,"_odeBodyGetTorque@4");
typedef void(WINAPI *DLL_dBodySetForce) (int body, float x, float y, float z);
DLL_dBodySetForce dBodySetForce = (DLL_dBodySetForce)GetProcAddress(hDLL,"_odeBodySetForce@16");
typedef void(WINAPI *DLL_dBodySetTorque) (int body, float x, float y, float z);
DLL_dBodySetTorque dBodySetTorque = (DLL_dBodySetTorque)GetProcAddress(hDLL,"_odeBodySetTorque@16");
typedef void(WINAPI *DLL_dBodyGetRelPointPos) (int body, float px, float py, float pz);
DLL_dBodyGetRelPointPos dBodyGetRelPointPos = (DLL_dBodyGetRelPointPos)GetProcAddress(hDLL,"_odeBodyGetRelPointPos@16");
typedef void(WINAPI *DLL_dBodyGetRelPointVel) (int body, float px, float py, float pz);
DLL_dBodyGetRelPointVel dBodyGetRelPointVel = (DLL_dBodyGetRelPointVel)GetProcAddress(hDLL,"_odeBodyGetRelPointVel@16");
typedef void(WINAPI *DLL_dBodyGetPointVel) (int body, float px, float py, float pz);
DLL_dBodyGetPointVel dBodyGetPointVel = (DLL_dBodyGetPointVel)GetProcAddress(hDLL,"_odeBodyGetPointVel@16");
typedef void(WINAPI *DLL_dBodyGetPosRelPoint) (int body, float px, float py, float pz);
DLL_dBodyGetPosRelPoint dBodyGetPosRelPoint = (DLL_dBodyGetPosRelPoint)GetProcAddress(hDLL,"_odeBodyGetPosRelPoint@16");
typedef void(WINAPI *DLL_dBodyVectorToWorld) (int body, float px, float py, float pz);
DLL_dBodyVectorToWorld dBodyVectorToWorld = (DLL_dBodyVectorToWorld)GetProcAddress(hDLL,"_odeBodyVectorToWorld@16");
typedef void(WINAPI *DLL_dBodyVectorFromWorld) (int body, float px, float py, float pz);
DLL_dBodyVectorFromWorld dBodyVectorFromWorld = (DLL_dBodyVectorFromWorld)GetProcAddress(hDLL,"_odeBodyVectorFromWorld@16");
typedef void(WINAPI *DLL_dBodyEnable) (int body);
DLL_dBodyEnable dBodyEnable = (DLL_dBodyEnable)GetProcAddress(hDLL,"_odeBodyEnable@4");
typedef void(WINAPI *DLL_dBodyDisable) (int body);
DLL_dBodyDisable dBodyDisable = (DLL_dBodyDisable)GetProcAddress(hDLL,"_odeBodyDisable@4");
typedef int(WINAPI *DLL_dBodyIsEnabled) (int body);
DLL_dBodyIsEnabled dBodyIsEnabled = (DLL_dBodyIsEnabled)GetProcAddress(hDLL,"_odeBodyIsEnabled@4");
typedef void(WINAPI *DLL_dBodySetAutoDisableFlag) (int body, int doautodisable);
DLL_dBodySetAutoDisableFlag dBodySetAutoDisableFlag = (DLL_dBodySetAutoDisableFlag)GetProcAddress(hDLL,"_odeBodySetAutoDisableFlag@8");
typedef int(WINAPI *DLL_dBodyGetAutoDisableFlag) (int body);
DLL_dBodyGetAutoDisableFlag dBodyGetAutoDisableFlag = (DLL_dBodyGetAutoDisableFlag)GetProcAddress(hDLL,"_odeBodyGetAutoDisableFlag@4");
typedef void(WINAPI *DLL_dBodySetAutoDisableLinearThreshold) (int body, float lthreshold);
DLL_dBodySetAutoDisableLinearThreshold dBodySetAutoDisableLinearThreshold = (DLL_dBodySetAutoDisableLinearThreshold)GetProcAddress(hDLL,"_odeBodySetAutoDisableLinearThreshold@8");
typedef float(WINAPI *DLL_dBodyGetAutoDisableLinearThreshold) (int body);
DLL_dBodyGetAutoDisableLinearThreshold dBodyGetAutoDisableLinearThreshold = (DLL_dBodyGetAutoDisableLinearThreshold)GetProcAddress(hDLL,"_odeBodyGetAutoDisableLinearThreshold@4");
typedef void(WINAPI *DLL_dBodySetAutoDisableAngularThreshold) (int body, float athreshold);
DLL_dBodySetAutoDisableAngularThreshold dBodySetAutoDisableAngularThreshold = (DLL_dBodySetAutoDisableAngularThreshold)GetProcAddress(hDLL,"_odeBodySetAutoDisableAngularThreshold@8");
typedef float(WINAPI *DLL_dBodyGetAutoDisableAngularThreshold) (int body);
DLL_dBodyGetAutoDisableAngularThreshold dBodyGetAutoDisableAngularThreshold = (DLL_dBodyGetAutoDisableAngularThreshold)GetProcAddress(hDLL,"_odeBodyGetAutoDisableAngularThreshold@4");
typedef void(WINAPI *DLL_dBodySetAutoDisableSteps) (int body, int stepsr);
DLL_dBodySetAutoDisableSteps dBodySetAutoDisableSteps = (DLL_dBodySetAutoDisableSteps)GetProcAddress(hDLL,"_odeBodySetAutoDisableSteps@8");
typedef int(WINAPI *DLL_dBodyGetAutoDisableSteps) (int body);
DLL_dBodyGetAutoDisableSteps dBodyGetAutoDisableSteps = (DLL_dBodyGetAutoDisableSteps)GetProcAddress(hDLL,"_odeBodyGetAutoDisableSteps@4");
typedef void(WINAPI *DLL_dBodySetAutoDisableTime) (int body, float time);
DLL_dBodySetAutoDisableTime dBodySetAutoDisableTime = (DLL_dBodySetAutoDisableTime)GetProcAddress(hDLL,"_odeBodySetAutoDisableTime@8");
typedef float(WINAPI *DLL_dBodyGetAutoDisableTime) (int body);
DLL_dBodyGetAutoDisableTime dBodyGetAutoDisableTime = (DLL_dBodyGetAutoDisableTime)GetProcAddress(hDLL,"_odeBodyGetAutoDisableTime@4");
typedef void(WINAPI *DLL_dBodySetAutoDisableDefaults) (int body);
DLL_dBodySetAutoDisableDefaults dBodySetAutoDisableDefaults = (DLL_dBodySetAutoDisableDefaults)GetProcAddress(hDLL,"_odeBodySetAutoDisableDefaults@4");
typedef void(WINAPI *DLL_dBodySetData) (int body);
DLL_dBodySetData dBodySetData = (DLL_dBodySetData)GetProcAddress(hDLL,"_odeBodySetData@8");
typedef int(WINAPI *DLL_dBodyGetData) (int body);
DLL_dBodyGetData dBodyGetData = (DLL_dBodyGetData)GetProcAddress(hDLL,"_odeBodyGetData@4");
typedef void(WINAPI *DLL_dBodySetFiniteRotationMode) (int body, int mode);
DLL_dBodySetFiniteRotationMode dBodySetFiniteRotationMode = (DLL_dBodySetFiniteRotationMode)GetProcAddress(hDLL,"_odeBodySetFiniteRotationMode@8");
typedef int(WINAPI *DLL_dBodyGetFiniteRotationMode) (int body);
DLL_dBodyGetFiniteRotationMode dBodyGetFiniteRotationMode = (DLL_dBodyGetFiniteRotationMode)GetProcAddress(hDLL,"_odeBodyGetFiniteRotationMode@4");
typedef void(WINAPI *DLL_dBodySetFiniteRotationAxis) (int body, float x, float y, float z);
DLL_dBodySetFiniteRotationAxis dBodySetFiniteRotationAxis = (DLL_dBodySetFiniteRotationAxis)GetProcAddress(hDLL,"_odeBodySetFiniteRotationAxis@16");
typedef void(WINAPI *DLL_dBodyGetFiniteRotationAxis) (int body);
DLL_dBodyGetFiniteRotationAxis dBodyGetFiniteRotationAxis = (DLL_dBodyGetFiniteRotationAxis)GetProcAddress(hDLL,"_odeBodyGetFiniteRotationAxis@4");
typedef int(WINAPI *DLL_dBodyGetNumJoints) (int body);
DLL_dBodyGetNumJoints dBodyGetNumJoints = (DLL_dBodyGetNumJoints)GetProcAddress(hDLL,"_odeBodyGetNumJoints@4");
typedef int(WINAPI *DLL_dBodyGetJoint) (int body, int index);
DLL_dBodyGetJoint dBodyGetJoint = (DLL_dBodyGetJoint)GetProcAddress(hDLL,"_odeBodyGetJoint@8");
typedef void(WINAPI *DLL_dBodySetGravityMode) (int body, int mode);
DLL_dBodySetGravityMode dBodySetGravityMode = (DLL_dBodySetGravityMode)GetProcAddress(hDLL,"_odeBodySetGravityMode@8");
typedef int(WINAPI *DLL_dBodyGetGravityMode) (int body);
DLL_dBodyGetGravityMode dBodyGetGravityMode = (DLL_dBodyGetGravityMode)GetProcAddress(hDLL,"_odeBodyGetGravityMode@4");
typedef void(WINAPI *DLL_dGeomDestroy) (int geom);
DLL_dGeomDestroy dGeomDestroy = (DLL_dGeomDestroy)GetProcAddress(hDLL,"_odeGeomDestroy@4");
typedef void(WINAPI *DLL_dGeomSetData) (int geom);
DLL_dGeomSetData dGeomSetData = (DLL_dGeomSetData)GetProcAddress(hDLL,"_odeGeomSetData@8");
typedef int(WINAPI *DLL_dGeomGetData) (int geom);
DLL_dGeomGetData dGeomGetData = (DLL_dGeomGetData)GetProcAddress(hDLL,"_odeGeomGetData@4");
typedef void(WINAPI *DLL_dGeomSetBody) (int geom, int body);
DLL_dGeomSetBody dGeomSetBody = (DLL_dGeomSetBody)GetProcAddress(hDLL,"_odeGeomSetBody@8");
typedef int(WINAPI *DLL_dGeomGetBody) (int geom);
DLL_dGeomGetBody dGeomGetBody = (DLL_dGeomGetBody)GetProcAddress(hDLL,"_odeGeomGetBody@4");
typedef void(WINAPI *DLL_dGeomSetPosition) (int geom, float x, float y, float z);
DLL_dGeomSetPosition dGeomSetPosition = (DLL_dGeomSetPosition)GetProcAddress(hDLL,"_odeGeomSetPosition@16");
typedef void(WINAPI *DLL_dGeomSetRotation) (int geom, float pitch, float yaw, float roll);
DLL_dGeomSetRotation dGeomSetRotation = (DLL_dGeomSetRotation)GetProcAddress(hDLL,"_odeGeomSetRotation@16");
typedef void(WINAPI *DLL_dGeomSetQuaternion) (int geom, float qw, float qx, float qy, float qz);
DLL_dGeomSetQuaternion dGeomSetQuaternion = (DLL_dGeomSetQuaternion)GetProcAddress(hDLL,"_odeGeomSetQuaternion@20");
typedef void(WINAPI *DLL_dGeomSetAxisAngle) (int geom, float angle, float rx, float ry, float rz);
DLL_dGeomSetAxisAngle dGeomSetAxisAngle = (DLL_dGeomSetAxisAngle)GetProcAddress(hDLL,"_odeGeomSetAxisAngle@20");
typedef void(WINAPI *DLL_dGeomGetPosition) (int geom);
DLL_dGeomGetPosition dGeomGetPosition = (DLL_dGeomGetPosition)GetProcAddress(hDLL,"_odeGeomGetPosition@4");
typedef float(WINAPI *DLL_dGeomGetPositionX) (int geom);
DLL_dGeomGetPositionX dGeomGetPositionX = (DLL_dGeomGetPositionX)GetProcAddress(hDLL,"_odeGeomGetPositionX@4");
typedef float(WINAPI *DLL_dGeomGetPositionY) (int geom);
DLL_dGeomGetPositionY dGeomGetPositionY = (DLL_dGeomGetPositionY)GetProcAddress(hDLL,"_odeGeomGetPositionY@4");
typedef float(WINAPI *DLL_dGeomGetPositionZ) (int geom);
DLL_dGeomGetPositionZ dGeomGetPositionZ = (DLL_dGeomGetPositionZ)GetProcAddress(hDLL,"_odeGeomGetPositionZ@4");
typedef void(WINAPI *DLL_dGeomGetRotation) (int geom);
DLL_dGeomGetRotation dGeomGetRotation = (DLL_dGeomGetRotation)GetProcAddress(hDLL,"_odeGeomGetRotation@4");
typedef void(WINAPI *DLL_dGeomGetQuaternion) (int geom);
DLL_dGeomGetQuaternion dGeomGetQuaternion = (DLL_dGeomGetQuaternion)GetProcAddress(hDLL,"_odeGeomGetQuaternion@4");
typedef void(WINAPI *DLL_dGeomGetAxisAngle) (int geom);
DLL_dGeomGetAxisAngle dGeomGetAxisAngle = (DLL_dGeomGetAxisAngle)GetProcAddress(hDLL,"_odeGeomGetAxisAngle@4");
typedef float(WINAPI *DLL_dGeomGetPitch) (int geom);
DLL_dGeomGetPitch dGeomGetPitch = (DLL_dGeomGetPitch)GetProcAddress(hDLL,"_odeGeomGetPitch@4");
typedef float(WINAPI *DLL_dGeomGetYaw) (int geom);
DLL_dGeomGetYaw dGeomGetYaw = (DLL_dGeomGetYaw)GetProcAddress(hDLL,"_odeGeomGetYaw@4");
typedef float(WINAPI *DLL_dGeomGetRoll) (int geom);
DLL_dGeomGetRoll dGeomGetRoll = (DLL_dGeomGetRoll)GetProcAddress(hDLL,"_odeGeomGetRoll@4");
typedef void(WINAPI *DLL_dGeomGetAABBMin) (int geom);
DLL_dGeomGetAABBMin dGeomGetAABBMin = (DLL_dGeomGetAABBMin)GetProcAddress(hDLL,"_odeGeomGetAABBMin@4");
typedef void(WINAPI *DLL_dGeomGetAABBMax) (int geom);
DLL_dGeomGetAABBMax dGeomGetAABBMax = (DLL_dGeomGetAABBMax)GetProcAddress(hDLL,"_odeGeomGetAABBMax@4");
typedef int(WINAPI *DLL_dGeomIsSpace) (int geom);
DLL_dGeomIsSpace dGeomIsSpace = (DLL_dGeomIsSpace)GetProcAddress(hDLL,"_odeGeomIsSpace@4");
typedef int(WINAPI *DLL_dGeomGetSpace) (int geom);
DLL_dGeomGetSpace dGeomGetSpace = (DLL_dGeomGetSpace)GetProcAddress(hDLL,"_odeGeomGetSpace@4");
typedef int(WINAPI *DLL_dGeomGetClass) (int geom);
DLL_dGeomGetClass dGeomGetClass = (DLL_dGeomGetClass)GetProcAddress(hDLL,"_odeGeomGetClass@4");
typedef void(WINAPI *DLL_dGeomSetCategoryBits) (int geom);
DLL_dGeomSetCategoryBits dGeomSetCategoryBits = (DLL_dGeomSetCategoryBits)GetProcAddress(hDLL,"_odeGeomSetCategoryBits@8");
typedef void(WINAPI *DLL_dGeomSetCollideBits) (int geom);
DLL_dGeomSetCollideBits dGeomSetCollideBits = (DLL_dGeomSetCollideBits)GetProcAddress(hDLL,"_odeGeomSetCollideBits@8");
typedef int(WINAPI *DLL_dGeomGetCategoryBits) (int geom);
DLL_dGeomGetCategoryBits dGeomGetCategoryBits = (DLL_dGeomGetCategoryBits)GetProcAddress(hDLL,"_odeGeomGetCategoryBits@4");
typedef int(WINAPI *DLL_dGeomGetCollideBits) (int geom);
DLL_dGeomGetCollideBits dGeomGetCollideBits = (DLL_dGeomGetCollideBits)GetProcAddress(hDLL,"_odeGeomGetCollideBits@4");
typedef void(WINAPI *DLL_dGeomEnable) (int geom);
DLL_dGeomEnable dGeomEnable = (DLL_dGeomEnable)GetProcAddress(hDLL,"_odeGeomEnable@4");
typedef void(WINAPI *DLL_dGeomDisable) (int geom);
DLL_dGeomDisable dGeomDisable = (DLL_dGeomDisable)GetProcAddress(hDLL,"_odeGeomDisable@4");
typedef int(WINAPI *DLL_dGeomIsEnabled) (int geom);
DLL_dGeomIsEnabled dGeomIsEnabled = (DLL_dGeomIsEnabled)GetProcAddress(hDLL,"_odeGeomIsEnabled@4");
typedef int(WINAPI *DLL_dCreateSphere) (int space, float radius);
DLL_dCreateSphere dCreateSphere = (DLL_dCreateSphere)GetProcAddress(hDLL,"_odeCreateSphere@8");
typedef void(WINAPI *DLL_dGeomSphereSetRadius) (float radius);
DLL_dGeomSphereSetRadius dGeomSphereSetRadius = (DLL_dGeomSphereSetRadius)GetProcAddress(hDLL,"_odeGeomSphereSetRadius@8");
typedef float(WINAPI *DLL_dGeomSphereGetRadius) ();
DLL_dGeomSphereGetRadius dGeomSphereGetRadius = (DLL_dGeomSphereGetRadius)GetProcAddress(hDLL,"_odeGeomSphereGetRadius@4");
typedef float(WINAPI *DLL_dGeomSpherePointDepth) (float x, float y, float z);
DLL_dGeomSpherePointDepth dGeomSpherePointDepth = (DLL_dGeomSpherePointDepth)GetProcAddress(hDLL,"_odeGeomSpherePointDepth@16");
typedef int(WINAPI *DLL_dCreateBox) (int space, float lx, float ly, float lz);
DLL_dCreateBox dCreateBox = (DLL_dCreateBox)GetProcAddress(hDLL,"_odeCreateBox@16");
typedef void(WINAPI *DLL_dGeomBoxSetLengths) (float lx, float ly, float lz);
DLL_dGeomBoxSetLengths dGeomBoxSetLengths = (DLL_dGeomBoxSetLengths)GetProcAddress(hDLL,"_odeGeomBoxSetLengths@16");
typedef void(WINAPI *DLL_dGeomBoxGetLengths) ();
DLL_dGeomBoxGetLengths dGeomBoxGetLengths = (DLL_dGeomBoxGetLengths)GetProcAddress(hDLL,"_odeGeomBoxGetLengths@4");
typedef float(WINAPI *DLL_dGeomBoxPointDepth) (float x, float y, float z);
DLL_dGeomBoxPointDepth dGeomBoxPointDepth = (DLL_dGeomBoxPointDepth)GetProcAddress(hDLL,"_odeGeomBoxPointDepth@16");
typedef int(WINAPI *DLL_dCreatePlane) (int space, float a, float b, float c, float d);
DLL_dCreatePlane dCreatePlane = (DLL_dCreatePlane)GetProcAddress(hDLL,"_odeCreatePlane@20");
typedef void(WINAPI *DLL_dGeomPlaneSetParams) (float a, float b, float c, float d);
DLL_dGeomPlaneSetParams dGeomPlaneSetParams = (DLL_dGeomPlaneSetParams)GetProcAddress(hDLL,"_odeGeomPlaneSetParams@20");
typedef void(WINAPI *DLL_dGeomPlaneGetParams) ();
DLL_dGeomPlaneGetParams dGeomPlaneGetParams = (DLL_dGeomPlaneGetParams)GetProcAddress(hDLL,"_odeGeomPlaneGetParams@4");
typedef float(WINAPI *DLL_dGeomPlanePointDepth) (float x, float y, float z);
DLL_dGeomPlanePointDepth dGeomPlanePointDepth = (DLL_dGeomPlanePointDepth)GetProcAddress(hDLL,"_odeGeomPlanePointDepth@16");
typedef int(WINAPI *DLL_dCreateCylinder) (int space, float radius, float length);
DLL_dCreateCylinder dCreateCylinder = (DLL_dCreateCylinder)GetProcAddress(hDLL,"_odeCreateCylinder@12");
typedef void(WINAPI *DLL_dGeomCylinderSetParams) (float radius, float length);
DLL_dGeomCylinderSetParams dGeomCylinderSetParams = (DLL_dGeomCylinderSetParams)GetProcAddress(hDLL,"_odeGeomCylinderSetParams@12");
typedef void(WINAPI *DLL_dGeomCylinderGetParams) ();
DLL_dGeomCylinderGetParams dGeomCylinderGetParams = (DLL_dGeomCylinderGetParams)GetProcAddress(hDLL,"_odeGeomCylinderGetParams@4");
typedef int(WINAPI *DLL_dCreateCCylinder) (int space, float radius, float length);
DLL_dCreateCCylinder dCreateCCylinder = (DLL_dCreateCCylinder)GetProcAddress(hDLL,"_odeCreateCCylinder@12");
typedef void(WINAPI *DLL_dGeomCCylinderSetParams) (float radius, float length);
DLL_dGeomCCylinderSetParams dGeomCCylinderSetParams = (DLL_dGeomCCylinderSetParams)GetProcAddress(hDLL,"_odeGeomCCylinderSetParams@12");
typedef void(WINAPI *DLL_dGeomCCylinderGetParams) ();
DLL_dGeomCCylinderGetParams dGeomCCylinderGetParams = (DLL_dGeomCCylinderGetParams)GetProcAddress(hDLL,"_odeGeomCCylinderGetParams@4");
typedef float(WINAPI *DLL_dGeomCCylinderPointDepth) (float x, float y, float z);
DLL_dGeomCCylinderPointDepth dGeomCCylinderPointDepth = (DLL_dGeomCCylinderPointDepth)GetProcAddress(hDLL,"_odeGeomCCylinderPointDepth@16");
typedef int(WINAPI *DLL_dCreateRay) (int space, float length);
DLL_dCreateRay dCreateRay = (DLL_dCreateRay)GetProcAddress(hDLL,"_odeCreateRay@8");
typedef void(WINAPI *DLL_dGeomRaySetLength) (float length);
DLL_dGeomRaySetLength dGeomRaySetLength = (DLL_dGeomRaySetLength)GetProcAddress(hDLL,"_odeGeomRaySetLength@8");
typedef float(WINAPI *DLL_dGeomRayGetLength) ();
DLL_dGeomRayGetLength dGeomRayGetLength = (DLL_dGeomRayGetLength)GetProcAddress(hDLL,"_odeGeomRayGetLength@4");
typedef void(WINAPI *DLL_dGeomRaySet) (float px, float py, float pz, float dx, float dy, float dz);
DLL_dGeomRaySet dGeomRaySet = (DLL_dGeomRaySet)GetProcAddress(hDLL,"_odeGeomRaySet@28");
typedef void(WINAPI *DLL_dGeomRayGetStart) ();
DLL_dGeomRayGetStart dGeomRayGetStart = (DLL_dGeomRayGetStart)GetProcAddress(hDLL,"_odeGeomRayGetStart@4");
typedef void(WINAPI *DLL_dGeomRayGetDir) ();
DLL_dGeomRayGetDir dGeomRayGetDir = (DLL_dGeomRayGetDir)GetProcAddress(hDLL,"_odeGeomRayGetDir@4");
typedef int(WINAPI *DLL_dGeomTriMeshDataCreate) ();
DLL_dGeomTriMeshDataCreate dGeomTriMeshDataCreate = (DLL_dGeomTriMeshDataCreate)GetProcAddress(hDLL,"_odeGeomTriMeshDataCreate@0");
typedef void(WINAPI *DLL_dGeomTriMeshDataDestroy) ();
DLL_dGeomTriMeshDataDestroy dGeomTriMeshDataDestroy = (DLL_dGeomTriMeshDataDestroy)GetProcAddress(hDLL,"_odeGeomTriMeshDataDestroy@4");
typedef void(WINAPI *DLL_dGeomTriMeshDataBuildSingle) ();
DLL_dGeomTriMeshDataBuildSingle dGeomTriMeshDataBuildSingle = (DLL_dGeomTriMeshDataBuildSingle)GetProcAddress(hDLL,"_odeGeomTriMeshDataBuildSingle@28");
typedef void(WINAPI *DLL_dGeomTriMeshDataBuildSingle1) ();
DLL_dGeomTriMeshDataBuildSingle1 dGeomTriMeshDataBuildSingle1 = (DLL_dGeomTriMeshDataBuildSingle1)GetProcAddress(hDLL,"_odeGeomTriMeshDataBuildSingle1@32");
typedef void(WINAPI *DLL_dGeomTriMeshDataBuildSimple) ();
DLL_dGeomTriMeshDataBuildSimple dGeomTriMeshDataBuildSimple = (DLL_dGeomTriMeshDataBuildSimple)GetProcAddress(hDLL,"_odeGeomTriMeshDataBuildSimple@20");
typedef int(WINAPI *DLL_dCreateTriMesh) (int space);
DLL_dCreateTriMesh dCreateTriMesh = (DLL_dCreateTriMesh)GetProcAddress(hDLL,"_odeCreateTriMesh@8");
typedef int(WINAPI *DLL_dCreateGeomTransform) (int space);
DLL_dCreateGeomTransform dCreateGeomTransform = (DLL_dCreateGeomTransform)GetProcAddress(hDLL,"_odeCreateGeomTransform@4");
typedef void(WINAPI *DLL_dGeomTransformSetGeom) ();
DLL_dGeomTransformSetGeom dGeomTransformSetGeom = (DLL_dGeomTransformSetGeom)GetProcAddress(hDLL,"_odeGeomTransformSetGeom@8");
typedef int(WINAPI *DLL_dGeomTransformGetGeom) (int geom);
DLL_dGeomTransformGetGeom dGeomTransformGetGeom = (DLL_dGeomTransformGetGeom)GetProcAddress(hDLL,"_odeGeomTransformGetGeom@4");
typedef void(WINAPI *DLL_dGeomTransformSetCleanup) (int geom, int mode);
DLL_dGeomTransformSetCleanup dGeomTransformSetCleanup = (DLL_dGeomTransformSetCleanup)GetProcAddress(hDLL,"_odeGeomTransformSetCleanup@8");
typedef int(WINAPI *DLL_dGeomTransformGetCleanup) (int geom);
DLL_dGeomTransformGetCleanup dGeomTransformGetCleanup = (DLL_dGeomTransformGetCleanup)GetProcAddress(hDLL,"_odeGeomTransformGetCleanup@4");
typedef void(WINAPI *DLL_dGeomTransformSetInfo) (int geom, int mode);
DLL_dGeomTransformSetInfo dGeomTransformSetInfo = (DLL_dGeomTransformSetInfo)GetProcAddress(hDLL,"_odeGeomTransformSetInfo@8");
typedef int(WINAPI *DLL_dGeomTransformGetInfo) (int geom);
DLL_dGeomTransformGetInfo dGeomTransformGetInfo = (DLL_dGeomTransformGetInfo)GetProcAddress(hDLL,"_odeGeomTransformGetInfo@4");
typedef void(WINAPI *DLL_dGeomSetOffsetPosition) (int geom, float x, float y, float z);
DLL_dGeomSetOffsetPosition dGeomSetOffsetPosition = (DLL_dGeomSetOffsetPosition)GetProcAddress(hDLL,"_odeGeomSetOffsetPosition@16");
typedef void(WINAPI *DLL_dGeomSetOffsetRotation) (int geom, float pitch, float yaw, float roll);
DLL_dGeomSetOffsetRotation dGeomSetOffsetRotation = (DLL_dGeomSetOffsetRotation)GetProcAddress(hDLL,"_odeGeomSetOffsetRotation@16");
typedef void(WINAPI *DLL_dGeomSetOffsetQuaternion) (int geom, float qw, float qx, float qy, float qz);
DLL_dGeomSetOffsetQuaternion dGeomSetOffsetQuaternion = (DLL_dGeomSetOffsetQuaternion)GetProcAddress(hDLL,"_odeGeomSetOffsetQuaternion@20");
typedef void(WINAPI *DLL_dGeomSetOffsetAxisAngle) (int geom, float angle, float rx, float ry, float rz);
DLL_dGeomSetOffsetAxisAngle dGeomSetOffsetAxisAngle = (DLL_dGeomSetOffsetAxisAngle)GetProcAddress(hDLL,"_odeGeomSetOffsetAxisAngle@20");
typedef void(WINAPI *DLL_dGeomSetOffsetWorldPosition) (int geom, float x, float y, float z);
DLL_dGeomSetOffsetWorldPosition dGeomSetOffsetWorldPosition = (DLL_dGeomSetOffsetWorldPosition)GetProcAddress(hDLL,"_odeGeomSetOffsetWorldPosition@16");
typedef void(WINAPI *DLL_dGeomSetOffsetWorldRotation) (int geom, float pitch, float yaw, float roll);
DLL_dGeomSetOffsetWorldRotation dGeomSetOffsetWorldRotation = (DLL_dGeomSetOffsetWorldRotation)GetProcAddress(hDLL,"_odeGeomSetOffsetWorldRotation@16");
typedef void(WINAPI *DLL_dGeomSetOffsetWorldQuaternion) (int geom, float qw, float qx, float qy, float qz);
DLL_dGeomSetOffsetWorldQuaternion dGeomSetOffsetWorldQuaternion = (DLL_dGeomSetOffsetWorldQuaternion)GetProcAddress(hDLL,"_odeGeomSetOffsetWorldQuaternion@20");
typedef void(WINAPI *DLL_dGeomSetOffsetWorldAxisAngle) (int geom, float angle, float rx, float ry, float rz);
DLL_dGeomSetOffsetWorldAxisAngle dGeomSetOffsetWorldAxisAngle = (DLL_dGeomSetOffsetWorldAxisAngle)GetProcAddress(hDLL,"_odeGeomSetOffsetWorldAxisAngle@20");
typedef void(WINAPI *DLL_dGeomClearOffset) (int geom);
DLL_dGeomClearOffset dGeomClearOffset = (DLL_dGeomClearOffset)GetProcAddress(hDLL,"_odeGeomClearOffset@4");
typedef int(WINAPI *DLL_dGeomIsOffset) (int geom);
DLL_dGeomIsOffset dGeomIsOffset = (DLL_dGeomIsOffset)GetProcAddress(hDLL,"_odeGeomIsOffset@4");
typedef void(WINAPI *DLL_dGeomGetOffsetPosition) (int geom);
DLL_dGeomGetOffsetPosition dGeomGetOffsetPosition = (DLL_dGeomGetOffsetPosition)GetProcAddress(hDLL,"_odeGeomGetOffsetPosition@4");
typedef void(WINAPI *DLL_dGeomGetOffsetRotation) (int geom);
DLL_dGeomGetOffsetRotation dGeomGetOffsetRotation = (DLL_dGeomGetOffsetRotation)GetProcAddress(hDLL,"_odeGeomGetOffsetRotation@4");
typedef void(WINAPI *DLL_dGeomGetOffsetQuaternion) (int geom);
DLL_dGeomGetOffsetQuaternion dGeomGetOffsetQuaternion = (DLL_dGeomGetOffsetQuaternion)GetProcAddress(hDLL,"_odeGeomGetOffsetQuaternion@4");
typedef void(WINAPI *DLL_dGeomGetOffsetAxisAngle) (int geom);
DLL_dGeomGetOffsetAxisAngle dGeomGetOffsetAxisAngle = (DLL_dGeomGetOffsetAxisAngle)GetProcAddress(hDLL,"_odeGeomGetOffsetAxisAngle@4");
typedef int(WINAPI *DLL_dCreateCapsule) (int space, float radius, float length);
DLL_dCreateCapsule dCreateCapsule = (DLL_dCreateCapsule)GetProcAddress(hDLL,"_odeCreateCapsule@12");
typedef void(WINAPI *DLL_dGeomCapsuleSetParams) (float radius, float length);
DLL_dGeomCapsuleSetParams dGeomCapsuleSetParams = (DLL_dGeomCapsuleSetParams)GetProcAddress(hDLL,"_odeGeomCapsuleSetParams@12");
typedef void(WINAPI *DLL_dGeomCapsuleGetParams) ();
DLL_dGeomCapsuleGetParams dGeomCapsuleGetParams = (DLL_dGeomCapsuleGetParams)GetProcAddress(hDLL,"_odeGeomCapsuleGetParams@4");
typedef float(WINAPI *DLL_dGeomCapsulePointDepth) (float x, float y, float z);
DLL_dGeomCapsulePointDepth dGeomCapsulePointDepth = (DLL_dGeomCapsulePointDepth)GetProcAddress(hDLL,"_odeGeomCapsulePointDepth@16");
typedef int(WINAPI *DLL_dCreateHeightfield) (int space);
DLL_dCreateHeightfield dCreateHeightfield = (DLL_dCreateHeightfield)GetProcAddress(hDLL,"_odeCreateHeightfield@12");
typedef int(WINAPI *DLL_dGeomHeightfieldDataCreate) ();
DLL_dGeomHeightfieldDataCreate dGeomHeightfieldDataCreate = (DLL_dGeomHeightfieldDataCreate)GetProcAddress(hDLL,"_odeGeomHeightfieldDataCreate@0");
typedef void(WINAPI *DLL_dGeomHeightfieldDataDestroy) ();
DLL_dGeomHeightfieldDataDestroy dGeomHeightfieldDataDestroy = (DLL_dGeomHeightfieldDataDestroy)GetProcAddress(hDLL,"_odeGeomHeightfieldDataDestroy@4");
typedef void(WINAPI *DLL_dGeomHeightfieldDataBuildSingle) (float width, float depth, float scale, float offset, float thickness);
DLL_dGeomHeightfieldDataBuildSingle dGeomHeightfieldDataBuildSingle = (DLL_dGeomHeightfieldDataBuildSingle)GetProcAddress(hDLL,"_odeGeomHeightfieldDataBuildSingle@44");
typedef void(WINAPI *DLL_dGeomHeightfieldDataSetBounds) (float minheight, float maxheight);
DLL_dGeomHeightfieldDataSetBounds dGeomHeightfieldDataSetBounds = (DLL_dGeomHeightfieldDataSetBounds)GetProcAddress(hDLL,"_odeGeomHeightfieldDataSetBounds@12");
typedef void(WINAPI *DLL_dGeomHeightfieldSetHeightfieldData) (int geom);
DLL_dGeomHeightfieldSetHeightfieldData dGeomHeightfieldSetHeightfieldData = (DLL_dGeomHeightfieldSetHeightfieldData)GetProcAddress(hDLL,"_odeGeomHeightfieldSetHeightfieldData@8");
typedef int(WINAPI *DLL_dGeomHeightfieldGetHeightfieldData) (int geom);
DLL_dGeomHeightfieldGetHeightfieldData dGeomHeightfieldGetHeightfieldData = (DLL_dGeomHeightfieldGetHeightfieldData)GetProcAddress(hDLL,"_odeGeomHeightfieldGetHeightfieldData@4");
typedef int(WINAPI *DLL_dJointCreateBall) (int world, int group);
DLL_dJointCreateBall dJointCreateBall = (DLL_dJointCreateBall)GetProcAddress(hDLL,"_odeJointCreateBall@8");
typedef void(WINAPI *DLL_dJointSetBallAnchor) (int joint, float x, float y, float z);
DLL_dJointSetBallAnchor dJointSetBallAnchor = (DLL_dJointSetBallAnchor)GetProcAddress(hDLL,"_odeJointSetBallAnchor@16");
typedef void(WINAPI *DLL_dJointSetBallAnchor2) (int joint, float x, float y, float z);
DLL_dJointSetBallAnchor2 dJointSetBallAnchor2 = (DLL_dJointSetBallAnchor2)GetProcAddress(hDLL,"_odeJointSetBallAnchor2@16");
typedef void(WINAPI *DLL_dJointGetBallAnchor) (int joint);
DLL_dJointGetBallAnchor dJointGetBallAnchor = (DLL_dJointGetBallAnchor)GetProcAddress(hDLL,"_odeJointGetBallAnchor@4");
typedef void(WINAPI *DLL_dJointGetBallAnchor2) (int joint);
DLL_dJointGetBallAnchor2 dJointGetBallAnchor2 = (DLL_dJointGetBallAnchor2)GetProcAddress(hDLL,"_odeJointGetBallAnchor2@4");
typedef int(WINAPI *DLL_dJointCreateHinge) (int world, int group);
DLL_dJointCreateHinge dJointCreateHinge = (DLL_dJointCreateHinge)GetProcAddress(hDLL,"_odeJointCreateHinge@8");
typedef void(WINAPI *DLL_dJointSetHingeAnchor) (int joint, float x, float y, float z);
DLL_dJointSetHingeAnchor dJointSetHingeAnchor = (DLL_dJointSetHingeAnchor)GetProcAddress(hDLL,"_odeJointSetHingeAnchor@16");
typedef void(WINAPI *DLL_dJointSetHingeAnchorDelta) (int joint, float x, float y, float z, float ax, float ay, float az);
DLL_dJointSetHingeAnchorDelta dJointSetHingeAnchorDelta = (DLL_dJointSetHingeAnchorDelta)GetProcAddress(hDLL,"_odeJointSetHingeAnchorDelta@28");
typedef void(WINAPI *DLL_dJointSetHingeAxis) (int joint, float x, float y, float z);
DLL_dJointSetHingeAxis dJointSetHingeAxis = (DLL_dJointSetHingeAxis)GetProcAddress(hDLL,"_odeJointSetHingeAxis@16");
typedef void(WINAPI *DLL_dJointSetHingeParam) (int joint, int paramr, float value);
DLL_dJointSetHingeParam dJointSetHingeParam = (DLL_dJointSetHingeParam)GetProcAddress(hDLL,"_odeJointSetHingeParam@12");
typedef void(WINAPI *DLL_dJointAddHingeTorque) (int joint, float torque);
DLL_dJointAddHingeTorque dJointAddHingeTorque = (DLL_dJointAddHingeTorque)GetProcAddress(hDLL,"_odeJointAddHingeTorque@8");
typedef void(WINAPI *DLL_dJointGetHingeAnchor) (int joint);
DLL_dJointGetHingeAnchor dJointGetHingeAnchor = (DLL_dJointGetHingeAnchor)GetProcAddress(hDLL,"_odeJointGetHingeAnchor@4");
typedef void(WINAPI *DLL_dJointGetHingeAnchor2) (int joint);
DLL_dJointGetHingeAnchor2 dJointGetHingeAnchor2 = (DLL_dJointGetHingeAnchor2)GetProcAddress(hDLL,"_odeJointGetHingeAnchor2@4");
typedef void(WINAPI *DLL_dJointGetHingeAxis) (int joint);
DLL_dJointGetHingeAxis dJointGetHingeAxis = (DLL_dJointGetHingeAxis)GetProcAddress(hDLL,"_odeJointGetHingeAxis@4");
typedef float(WINAPI *DLL_dJointGetHingeAngle) (int joint);
DLL_dJointGetHingeAngle dJointGetHingeAngle = (DLL_dJointGetHingeAngle)GetProcAddress(hDLL,"_odeJointGetHingeAngle@4");
typedef float(WINAPI *DLL_dJointGetHingeAngleRate) (int joint);
DLL_dJointGetHingeAngleRate dJointGetHingeAngleRate = (DLL_dJointGetHingeAngleRate)GetProcAddress(hDLL,"_odeJointGetHingeAngleRate@4");
typedef float(WINAPI *DLL_dJointGetHingeParam) (int joint, int paramr);
DLL_dJointGetHingeParam dJointGetHingeParam = (DLL_dJointGetHingeParam)GetProcAddress(hDLL,"_odeJointGetHingeParam@8");
typedef int(WINAPI *DLL_dJointCreateSlider) (int world, int group);
DLL_dJointCreateSlider dJointCreateSlider = (DLL_dJointCreateSlider)GetProcAddress(hDLL,"_odeJointCreateSlider@8");
typedef void(WINAPI *DLL_dJointSetSliderAxis) (int joint, float x, float y, float z);
DLL_dJointSetSliderAxis dJointSetSliderAxis = (DLL_dJointSetSliderAxis)GetProcAddress(hDLL,"_odeJointSetSliderAxis@16");
typedef void(WINAPI *DLL_dJointSetSliderAxisDelta) (int joint, float x, float y, float z, float ax, float ay, float az);
DLL_dJointSetSliderAxisDelta dJointSetSliderAxisDelta = (DLL_dJointSetSliderAxisDelta)GetProcAddress(hDLL,"_odeJointSetSliderAxisDelta@28");
typedef void(WINAPI *DLL_dJointSetSliderParam) (int joint, int paramr, float value);
DLL_dJointSetSliderParam dJointSetSliderParam = (DLL_dJointSetSliderParam)GetProcAddress(hDLL,"_odeJointSetSliderParam@12");
typedef void(WINAPI *DLL_dJointAddSliderForce) (int joint, float force);
DLL_dJointAddSliderForce dJointAddSliderForce = (DLL_dJointAddSliderForce)GetProcAddress(hDLL,"_odeJointAddSliderForce@8");
typedef void(WINAPI *DLL_dJointGetSliderAxis) (int joint);
DLL_dJointGetSliderAxis dJointGetSliderAxis = (DLL_dJointGetSliderAxis)GetProcAddress(hDLL,"_odeJointGetSliderAxis@4");
typedef float(WINAPI *DLL_dJointGetSliderPosition) (int joint);
DLL_dJointGetSliderPosition dJointGetSliderPosition = (DLL_dJointGetSliderPosition)GetProcAddress(hDLL,"_odeJointGetSliderPosition@4");
typedef float(WINAPI *DLL_dJointGetSliderPositionRate) (int joint);
DLL_dJointGetSliderPositionRate dJointGetSliderPositionRate = (DLL_dJointGetSliderPositionRate)GetProcAddress(hDLL,"_odeJointGetSliderPositionRate@4");
typedef float(WINAPI *DLL_dJointGetSliderParam) (int joint, int paramr);
DLL_dJointGetSliderParam dJointGetSliderParam = (DLL_dJointGetSliderParam)GetProcAddress(hDLL,"_odeJointGetSliderParam@8");
typedef int(WINAPI *DLL_dJointCreateUniversal) (int world, int group);
DLL_dJointCreateUniversal dJointCreateUniversal = (DLL_dJointCreateUniversal)GetProcAddress(hDLL,"_odeJointCreateUniversal@8");
typedef void(WINAPI *DLL_dJointSetUniversalAnchor) (int joint, float x, float y, float z);
DLL_dJointSetUniversalAnchor dJointSetUniversalAnchor = (DLL_dJointSetUniversalAnchor)GetProcAddress(hDLL,"_odeJointSetUniversalAnchor@16");
typedef void(WINAPI *DLL_dJointSetUniversalAxis1) (int joint, float x, float y, float z);
DLL_dJointSetUniversalAxis1 dJointSetUniversalAxis1 = (DLL_dJointSetUniversalAxis1)GetProcAddress(hDLL,"_odeJointSetUniversalAxis1@16");
typedef void(WINAPI *DLL_dJointSetUniversalAxis2) (int joint, float x, float y, float z);
DLL_dJointSetUniversalAxis2 dJointSetUniversalAxis2 = (DLL_dJointSetUniversalAxis2)GetProcAddress(hDLL,"_odeJointSetUniversalAxis2@16");
typedef void(WINAPI *DLL_dJointSetUniversalParam) (int joint, int paramr, float value);
DLL_dJointSetUniversalParam dJointSetUniversalParam = (DLL_dJointSetUniversalParam)GetProcAddress(hDLL,"_odeJointSetUniversalParam@12");
typedef void(WINAPI *DLL_dJointAddUniversalTorques) (int joint, float torque1, float torque2);
DLL_dJointAddUniversalTorques dJointAddUniversalTorques = (DLL_dJointAddUniversalTorques)GetProcAddress(hDLL,"_odeJointAddUniversalTorques@12");
typedef void(WINAPI *DLL_dJointGetUniversalAnchor) (int joint);
DLL_dJointGetUniversalAnchor dJointGetUniversalAnchor = (DLL_dJointGetUniversalAnchor)GetProcAddress(hDLL,"_odeJointGetUniversalAnchor@4");
typedef void(WINAPI *DLL_dJointGetUniversalAnchor2) (int joint);
DLL_dJointGetUniversalAnchor2 dJointGetUniversalAnchor2 = (DLL_dJointGetUniversalAnchor2)GetProcAddress(hDLL,"_odeJointGetUniversalAnchor2@4");
typedef void(WINAPI *DLL_dJointGetUniversalAxis1) (int joint);
DLL_dJointGetUniversalAxis1 dJointGetUniversalAxis1 = (DLL_dJointGetUniversalAxis1)GetProcAddress(hDLL,"_odeJointGetUniversalAxis1@4");
typedef void(WINAPI *DLL_dJointGetUniversalAxis2) (int joint);
DLL_dJointGetUniversalAxis2 dJointGetUniversalAxis2 = (DLL_dJointGetUniversalAxis2)GetProcAddress(hDLL,"_odeJointGetUniversalAxis2@4");
typedef float(WINAPI *DLL_dJointGetUniversalAngle1) (int joint);
DLL_dJointGetUniversalAngle1 dJointGetUniversalAngle1 = (DLL_dJointGetUniversalAngle1)GetProcAddress(hDLL,"_odeJointGetUniversalAngle1@4");
typedef float(WINAPI *DLL_dJointGetUniversalAngle2) (int joint);
DLL_dJointGetUniversalAngle2 dJointGetUniversalAngle2 = (DLL_dJointGetUniversalAngle2)GetProcAddress(hDLL,"_odeJointGetUniversalAngle2@4");
typedef float(WINAPI *DLL_dJointGetUniversalAngle1Rate) (int joint);
DLL_dJointGetUniversalAngle1Rate dJointGetUniversalAngle1Rate = (DLL_dJointGetUniversalAngle1Rate)GetProcAddress(hDLL,"_odeJointGetUniversalAngle1Rate@4");
typedef float(WINAPI *DLL_dJointGetUniversalAngle2Rate) (int joint);
DLL_dJointGetUniversalAngle2Rate dJointGetUniversalAngle2Rate = (DLL_dJointGetUniversalAngle2Rate)GetProcAddress(hDLL,"_odeJointGetUniversalAngle2Rate@4");
typedef float(WINAPI *DLL_dJointGetUniversalParam) (int joint, int paramr);
DLL_dJointGetUniversalParam dJointGetUniversalParam = (DLL_dJointGetUniversalParam)GetProcAddress(hDLL,"_odeJointGetUniversalParam@8");
typedef int(WINAPI *DLL_dJointCreateHinge2) (int world, int group);
DLL_dJointCreateHinge2 dJointCreateHinge2 = (DLL_dJointCreateHinge2)GetProcAddress(hDLL,"_odeJointCreateHinge2@8");
typedef void(WINAPI *DLL_dJointSetHinge2Anchor) (int joint, float x, float y, float z);
DLL_dJointSetHinge2Anchor dJointSetHinge2Anchor = (DLL_dJointSetHinge2Anchor)GetProcAddress(hDLL,"_odeJointSetHinge2Anchor@16");
typedef void(WINAPI *DLL_dJointSetHinge2Axis1) (int joint, float x, float y, float z);
DLL_dJointSetHinge2Axis1 dJointSetHinge2Axis1 = (DLL_dJointSetHinge2Axis1)GetProcAddress(hDLL,"_odeJointSetHinge2Axis1@16");
typedef void(WINAPI *DLL_dJointSetHinge2Axis2) (int joint, float x, float y, float z);
DLL_dJointSetHinge2Axis2 dJointSetHinge2Axis2 = (DLL_dJointSetHinge2Axis2)GetProcAddress(hDLL,"_odeJointSetHinge2Axis2@16");
typedef void(WINAPI *DLL_dJointSetHinge2Param) (int joint, int paramr, float value);
DLL_dJointSetHinge2Param dJointSetHinge2Param = (DLL_dJointSetHinge2Param)GetProcAddress(hDLL,"_odeJointSetHinge2Param@12");
typedef void(WINAPI *DLL_dJointAddHinge2Torques) (int joint, float torque1, float torque2);
DLL_dJointAddHinge2Torques dJointAddHinge2Torques = (DLL_dJointAddHinge2Torques)GetProcAddress(hDLL,"_odeJointAddHinge2Torques@12");
typedef void(WINAPI *DLL_dJointGetHinge2Anchor) (int joint);
DLL_dJointGetHinge2Anchor dJointGetHinge2Anchor = (DLL_dJointGetHinge2Anchor)GetProcAddress(hDLL,"_odeJointGetHinge2Anchor@4");
typedef void(WINAPI *DLL_dJointGetHinge2Anchor2) (int joint);
DLL_dJointGetHinge2Anchor2 dJointGetHinge2Anchor2 = (DLL_dJointGetHinge2Anchor2)GetProcAddress(hDLL,"_odeJointGetHinge2Anchor2@4");
typedef void(WINAPI *DLL_dJointGetHinge2Axis1) (int joint);
DLL_dJointGetHinge2Axis1 dJointGetHinge2Axis1 = (DLL_dJointGetHinge2Axis1)GetProcAddress(hDLL,"_odeJointGetHinge2Axis1@4");
typedef void(WINAPI *DLL_dJointGetHinge2Axis2) (int joint);
DLL_dJointGetHinge2Axis2 dJointGetHinge2Axis2 = (DLL_dJointGetHinge2Axis2)GetProcAddress(hDLL,"_odeJointGetHinge2Axis2@4");
typedef float(WINAPI *DLL_dJointGetHinge2Angle1) (int joint);
DLL_dJointGetHinge2Angle1 dJointGetHinge2Angle1 = (DLL_dJointGetHinge2Angle1)GetProcAddress(hDLL,"_odeJointGetHinge2Angle1@4");
typedef float(WINAPI *DLL_dJointGetHinge2Angle1Rate) (int joint);
DLL_dJointGetHinge2Angle1Rate dJointGetHinge2Angle1Rate = (DLL_dJointGetHinge2Angle1Rate)GetProcAddress(hDLL,"_odeJointGetHinge2Angle1Rate@4");
typedef float(WINAPI *DLL_dJointGetHinge2Angle2Rate) (int joint);
DLL_dJointGetHinge2Angle2Rate dJointGetHinge2Angle2Rate = (DLL_dJointGetHinge2Angle2Rate)GetProcAddress(hDLL,"_odeJointGetHinge2Angle2Rate@4");
typedef float(WINAPI *DLL_dJointGetHinge2Param) (int joint, int paramr);
DLL_dJointGetHinge2Param dJointGetHinge2Param = (DLL_dJointGetHinge2Param)GetProcAddress(hDLL,"_odeJointGetHinge2Param@8");
typedef int(WINAPI *DLL_dJointCreateFixed) (int world, int group);
DLL_dJointCreateFixed dJointCreateFixed = (DLL_dJointCreateFixed)GetProcAddress(hDLL,"_odeJointCreateFixed@8");
typedef void(WINAPI *DLL_dJointSetFixed) (int joint);
DLL_dJointSetFixed dJointSetFixed = (DLL_dJointSetFixed)GetProcAddress(hDLL,"_odeJointSetFixed@4");
typedef int(WINAPI *DLL_dJointCreateAMotor) (int world, int group);
DLL_dJointCreateAMotor dJointCreateAMotor = (DLL_dJointCreateAMotor)GetProcAddress(hDLL,"_odeJointCreateAMotor@8");
typedef void(WINAPI *DLL_dJointSetAMotorMode) (int joint, int mode);
DLL_dJointSetAMotorMode dJointSetAMotorMode = (DLL_dJointSetAMotorMode)GetProcAddress(hDLL,"_odeJointSetAMotorMode@8");
typedef void(WINAPI *DLL_dJointSetAMotorNumAxes) (int joint, int num);
DLL_dJointSetAMotorNumAxes dJointSetAMotorNumAxes = (DLL_dJointSetAMotorNumAxes)GetProcAddress(hDLL,"_odeJointSetAMotorNumAxes@8");
typedef void(WINAPI *DLL_dJointSetAMotorAxis) (int joint, int num, int rel, float x, float y, float z);
DLL_dJointSetAMotorAxis dJointSetAMotorAxis = (DLL_dJointSetAMotorAxis)GetProcAddress(hDLL,"_odeJointSetAMotorAxis@24");
typedef void(WINAPI *DLL_dJointSetAMotorAngle) (int joint, int num, float angle);
DLL_dJointSetAMotorAngle dJointSetAMotorAngle = (DLL_dJointSetAMotorAngle)GetProcAddress(hDLL,"_odeJointSetAMotorAngle@12");
typedef void(WINAPI *DLL_dJointSetAMotorParam) (int joint, int paramr, float value);
DLL_dJointSetAMotorParam dJointSetAMotorParam = (DLL_dJointSetAMotorParam)GetProcAddress(hDLL,"_odeJointSetAMotorParam@12");
typedef void(WINAPI *DLL_dJointAddAMotorTorques) (int joint, float torque0, float torque1, float torque2);
DLL_dJointAddAMotorTorques dJointAddAMotorTorques = (DLL_dJointAddAMotorTorques)GetProcAddress(hDLL,"_odeJointAddAMotorTorques@16");
typedef int(WINAPI *DLL_dJointGetAMotorMode) (int joint);
DLL_dJointGetAMotorMode dJointGetAMotorMode = (DLL_dJointGetAMotorMode)GetProcAddress(hDLL,"_odeJointGetAMotorMode@4");
typedef int(WINAPI *DLL_dJointGetAMotorNumAxes) (int joint);
DLL_dJointGetAMotorNumAxes dJointGetAMotorNumAxes = (DLL_dJointGetAMotorNumAxes)GetProcAddress(hDLL,"_odeJointGetAMotorNumAxes@4");
typedef void(WINAPI *DLL_dJointGetAMotorAxis) (int joint, int num);
DLL_dJointGetAMotorAxis dJointGetAMotorAxis = (DLL_dJointGetAMotorAxis)GetProcAddress(hDLL,"_odeJointGetAMotorAxis@8");
typedef int(WINAPI *DLL_dJointGetAMotorAxisRel) (int joint, int num);
DLL_dJointGetAMotorAxisRel dJointGetAMotorAxisRel = (DLL_dJointGetAMotorAxisRel)GetProcAddress(hDLL,"_odeJointGetAMotorAxisRel@8");
typedef float(WINAPI *DLL_dJointGetAMotorAngle) (int joint, int num);
DLL_dJointGetAMotorAngle dJointGetAMotorAngle = (DLL_dJointGetAMotorAngle)GetProcAddress(hDLL,"_odeJointGetAMotorAngle@8");
typedef float(WINAPI *DLL_dJointGetAMotorAngleRate) (int joint, int num);
DLL_dJointGetAMotorAngleRate dJointGetAMotorAngleRate = (DLL_dJointGetAMotorAngleRate)GetProcAddress(hDLL,"_odeJointGetAMotorAngleRate@8");
typedef float(WINAPI *DLL_dJointGetAMotorParam) (int joint, int paramr);
DLL_dJointGetAMotorParam dJointGetAMotorParam = (DLL_dJointGetAMotorParam)GetProcAddress(hDLL,"_odeJointGetAMotorParam@8");
typedef void(WINAPI *DLL_dJointDestroy) (int joint);
DLL_dJointDestroy dJointDestroy = (DLL_dJointDestroy)GetProcAddress(hDLL,"_odeJointDestroy@4");
typedef int(WINAPI *DLL_dJointGroupCreate) (int maxsize);
DLL_dJointGroupCreate dJointGroupCreate = (DLL_dJointGroupCreate)GetProcAddress(hDLL,"_odeJointGroupCreate@4");
typedef void(WINAPI *DLL_dJointGroupDestroy) (int group);
DLL_dJointGroupDestroy dJointGroupDestroy = (DLL_dJointGroupDestroy)GetProcAddress(hDLL,"_odeJointGroupDestroy@4");
typedef void(WINAPI *DLL_dJointGroupEmpty) (int group);
DLL_dJointGroupEmpty dJointGroupEmpty = (DLL_dJointGroupEmpty)GetProcAddress(hDLL,"_odeJointGroupEmpty@4");
typedef void(WINAPI *DLL_dJointAttach) (int joint, int body1, int body2);
DLL_dJointAttach dJointAttach = (DLL_dJointAttach)GetProcAddress(hDLL,"_odeJointAttach@12");
typedef void(WINAPI *DLL_dJointSetData) (int joint);
DLL_dJointSetData dJointSetData = (DLL_dJointSetData)GetProcAddress(hDLL,"_odeJointSetData@8");
typedef int(WINAPI *DLL_dJointGetData) (int joint);
DLL_dJointGetData dJointGetData = (DLL_dJointGetData)GetProcAddress(hDLL,"_odeJointGetData@4");
typedef int(WINAPI *DLL_dJointGetType) (int joint);
DLL_dJointGetType dJointGetType = (DLL_dJointGetType)GetProcAddress(hDLL,"_odeJointGetType@4");
typedef int(WINAPI *DLL_dJointGetBody) (int joint, int index);
DLL_dJointGetBody dJointGetBody = (DLL_dJointGetBody)GetProcAddress(hDLL,"_odeJointGetBody@8");
typedef void(WINAPI *DLL_dJointFeedbackEnable) (int joint);
DLL_dJointFeedbackEnable dJointFeedbackEnable = (DLL_dJointFeedbackEnable)GetProcAddress(hDLL,"_odeJointFeedbackEnable@4");
typedef void(WINAPI *DLL_dJointFeedbackDisable) (int joint);
DLL_dJointFeedbackDisable dJointFeedbackDisable = (DLL_dJointFeedbackDisable)GetProcAddress(hDLL,"_odeJointFeedbackDisable@4");
typedef int(WINAPI *DLL_dJointFeedbackIsEnabled) (int joint);
DLL_dJointFeedbackIsEnabled dJointFeedbackIsEnabled = (DLL_dJointFeedbackIsEnabled)GetProcAddress(hDLL,"_odeJointFeedbackIsEnabled@4");
typedef void(WINAPI *DLL_dJointSetFeedback) (int joint, int feedback);
DLL_dJointSetFeedback dJointSetFeedback = (DLL_dJointSetFeedback)GetProcAddress(hDLL,"_odeJointSetFeedback@8");
typedef void(WINAPI *DLL_dJointGetFeedbackForce1) (int joint);
DLL_dJointGetFeedbackForce1 dJointGetFeedbackForce1 = (DLL_dJointGetFeedbackForce1)GetProcAddress(hDLL,"_odeJointGetFeedbackForce1@4");
typedef void(WINAPI *DLL_dJointGetFeedbackTorque1) (int joint);
DLL_dJointGetFeedbackTorque1 dJointGetFeedbackTorque1 = (DLL_dJointGetFeedbackTorque1)GetProcAddress(hDLL,"_odeJointGetFeedbackTorque1@4");
typedef void(WINAPI *DLL_dJointGetFeedbackForce2) (int joint);
DLL_dJointGetFeedbackForce2 dJointGetFeedbackForce2 = (DLL_dJointGetFeedbackForce2)GetProcAddress(hDLL,"_odeJointGetFeedbackForce2@4");
typedef void(WINAPI *DLL_dJointGetFeedbackTorque2) (int joint);
DLL_dJointGetFeedbackTorque2 dJointGetFeedbackTorque2 = (DLL_dJointGetFeedbackTorque2)GetProcAddress(hDLL,"_odeJointGetFeedbackTorque2@4");
typedef int(WINAPI *DLL_dAreConnected) (int body1, int body2);
DLL_dAreConnected dAreConnected = (DLL_dAreConnected)GetProcAddress(hDLL,"_odeAreConnected@8");
typedef int(WINAPI *DLL_dAreConnectedExcluding) (int body1, int body2);
DLL_dAreConnectedExcluding dAreConnectedExcluding = (DLL_dAreConnectedExcluding)GetProcAddress(hDLL,"_odeAreConnectedExcluding@12");
typedef int(WINAPI *DLL_dConnectingJoint) (int body1, int body2);
DLL_dConnectingJoint dConnectingJoint = (DLL_dConnectingJoint)GetProcAddress(hDLL,"_odeConnectingJoint@8");
typedef int(WINAPI *DLL_dJointCreateLMotor) (int world, int group);
DLL_dJointCreateLMotor dJointCreateLMotor = (DLL_dJointCreateLMotor)GetProcAddress(hDLL,"_odeJointCreateLMotor@8");
typedef void(WINAPI *DLL_dJointSetLMotorNumAxes) (int joint, int num);
DLL_dJointSetLMotorNumAxes dJointSetLMotorNumAxes = (DLL_dJointSetLMotorNumAxes)GetProcAddress(hDLL,"_odeJointSetLMotorNumAxes@8");
typedef void(WINAPI *DLL_dJointSetLMotorAxis) (int joint, int rel, float x, float y, float z);
DLL_dJointSetLMotorAxis dJointSetLMotorAxis = (DLL_dJointSetLMotorAxis)GetProcAddress(hDLL,"_odeJointSetLMotorAxis@24");
typedef void(WINAPI *DLL_dJointSetLMotorParam) (int joint, int parameter, float value);
DLL_dJointSetLMotorParam dJointSetLMotorParam = (DLL_dJointSetLMotorParam)GetProcAddress(hDLL,"_odeJointSetLMotorParam@12");
typedef int(WINAPI *DLL_dJointGetLMotorNumAxes) (int joint);
DLL_dJointGetLMotorNumAxes dJointGetLMotorNumAxes = (DLL_dJointGetLMotorNumAxes)GetProcAddress(hDLL,"_odeJointGetLMotorNumAxes@4");
typedef void(WINAPI *DLL_dJointGetLMotorAxis) (int joint);
DLL_dJointGetLMotorAxis dJointGetLMotorAxis = (DLL_dJointGetLMotorAxis)GetProcAddress(hDLL,"_odeJointGetLMotorAxis@8");
typedef float(WINAPI *DLL_dJointGetLMotorParam) (int joint, int parameter);
DLL_dJointGetLMotorParam dJointGetLMotorParam = (DLL_dJointGetLMotorParam)GetProcAddress(hDLL,"_odeJointGetLMotorParam@8");
typedef int(WINAPI *DLL_dJointCreatePlane2D) (int world, int group);
DLL_dJointCreatePlane2D dJointCreatePlane2D = (DLL_dJointCreatePlane2D)GetProcAddress(hDLL,"_odeJointCreatePlane2D@8");
typedef void(WINAPI *DLL_dJointSetPlane2DXParam) (int joint, int parameter, float value);
DLL_dJointSetPlane2DXParam dJointSetPlane2DXParam = (DLL_dJointSetPlane2DXParam)GetProcAddress(hDLL,"_odeJointSetPlane2DXParam@12");
typedef void(WINAPI *DLL_dJointSetPlane2DYParam) (int joint, int parameter, float value);
DLL_dJointSetPlane2DYParam dJointSetPlane2DYParam = (DLL_dJointSetPlane2DYParam)GetProcAddress(hDLL,"_odeJointSetPlane2DYParam@12");
typedef void(WINAPI *DLL_dJointSetPlane2DAngleParam) (int joint, int parameter, float value);
DLL_dJointSetPlane2DAngleParam dJointSetPlane2DAngleParam = (DLL_dJointSetPlane2DAngleParam)GetProcAddress(hDLL,"_odeJointSetPlane2DAngleParam@12");
typedef int(WINAPI *DLL_dMassCreate) ();
DLL_dMassCreate dMassCreate = (DLL_dMassCreate)GetProcAddress(hDLL,"_odeMassCreate@0");
typedef void(WINAPI *DLL_dMassDestroy) (int mass);
DLL_dMassDestroy dMassDestroy = (DLL_dMassDestroy)GetProcAddress(hDLL,"_odeMassDestroy@4");
typedef void(WINAPI *DLL_dMassSetZero) (int mass);
DLL_dMassSetZero dMassSetZero = (DLL_dMassSetZero)GetProcAddress(hDLL,"_odeMassSetZero@4");
typedef void(WINAPI *DLL_dMassSetParameters) (int mass, float themass, float cgx, float cgy, float cgz, float I11, float I22, float I33, float I12, float I13, float I23);
DLL_dMassSetParameters dMassSetParameters = (DLL_dMassSetParameters)GetProcAddress(hDLL,"_odeMassSetParameters@44");
typedef void(WINAPI *DLL_dMassSetSphere) (int mass, float density, float radius);
DLL_dMassSetSphere dMassSetSphere = (DLL_dMassSetSphere)GetProcAddress(hDLL,"_odeMassSetSphere@12");
typedef void(WINAPI *DLL_dMassSetSphereTotal) (int mass, float totalmass, float radius);
DLL_dMassSetSphereTotal dMassSetSphereTotal = (DLL_dMassSetSphereTotal)GetProcAddress(hDLL,"_odeMassSetSphereTotal@12");
typedef void(WINAPI *DLL_dMassSetCappedCylinder) (int mass, float density, int direction, float radius, float length);
DLL_dMassSetCappedCylinder dMassSetCappedCylinder = (DLL_dMassSetCappedCylinder)GetProcAddress(hDLL,"_odeMassSetCappedCylinder@20");
typedef void(WINAPI *DLL_dMassSetCappedCylinderTotal) (int mass, float totalmass, int direction, float radius, float length);
DLL_dMassSetCappedCylinderTotal dMassSetCappedCylinderTotal = (DLL_dMassSetCappedCylinderTotal)GetProcAddress(hDLL,"_odeMassSetCappedCylinderTotal@20");
typedef void(WINAPI *DLL_dMassSetCylinder) (int mass, float density, int direction, float radius, float length);
DLL_dMassSetCylinder dMassSetCylinder = (DLL_dMassSetCylinder)GetProcAddress(hDLL,"_odeMassSetCylinder@20");
typedef void(WINAPI *DLL_dMassSetCylinderTotal) (int mass, float totalmass, int direction, float radius, float length);
DLL_dMassSetCylinderTotal dMassSetCylinderTotal = (DLL_dMassSetCylinderTotal)GetProcAddress(hDLL,"_odeMassSetCylinderTotal@20");
typedef void(WINAPI *DLL_dMassSetBox) (int mass, float density, float lx, float ly, float lz);
DLL_dMassSetBox dMassSetBox = (DLL_dMassSetBox)GetProcAddress(hDLL,"_odeMassSetBox@20");
typedef void(WINAPI *DLL_dMassSetBoxTotal) (int mass, float totalmass, float lx, float ly, float lz);
DLL_dMassSetBoxTotal dMassSetBoxTotal = (DLL_dMassSetBoxTotal)GetProcAddress(hDLL,"_odeMassSetBoxTotal@20");
typedef void(WINAPI *DLL_dMassAdjust) (int mass, float newmass);
DLL_dMassAdjust dMassAdjust = (DLL_dMassAdjust)GetProcAddress(hDLL,"_odeMassAdjust@8");
typedef void(WINAPI *DLL_dMassTranslate) (int mass, float x, float y, float z);
DLL_dMassTranslate dMassTranslate = (DLL_dMassTranslate)GetProcAddress(hDLL,"_odeMassTranslate@16");
typedef void(WINAPI *DLL_dMassRotate) (int mass, float pitch, float yaw, float roll);
DLL_dMassRotate dMassRotate = (DLL_dMassRotate)GetProcAddress(hDLL,"_odeMassRotate@16");
typedef void(WINAPI *DLL_dMassRotateQuaternion) (int mass, float qw, float qx, float qy, float qz);
DLL_dMassRotateQuaternion dMassRotateQuaternion = (DLL_dMassRotateQuaternion)GetProcAddress(hDLL,"_odeMassRotateQuaternion@20");
typedef void(WINAPI *DLL_dMassRotateAxisAngle) (int mass, float angle, float rx, float ry, float rz);
DLL_dMassRotateAxisAngle dMassRotateAxisAngle = (DLL_dMassRotateAxisAngle)GetProcAddress(hDLL,"_odeMassRotateAxisAngle@20");
typedef void(WINAPI *DLL_dMassAdd) ();
DLL_dMassAdd dMassAdd = (DLL_dMassAdd)GetProcAddress(hDLL,"_odeMassAdd@8");
typedef void(WINAPI *DLL_dMassCenter) (int mass);
DLL_dMassCenter dMassCenter = (DLL_dMassCenter)GetProcAddress(hDLL,"_odeMassCenter@4");
typedef void(WINAPI *DLL_dMassSetCapsule) (int mass, float density, int direction, float radius, float length);
DLL_dMassSetCapsule dMassSetCapsule = (DLL_dMassSetCapsule)GetProcAddress(hDLL,"_odeMassSetCapsule@20");
typedef void(WINAPI *DLL_dMassSetCapsuleTotal) (int mass, float totalmass, int direction, float radius, float length);
DLL_dMassSetCapsuleTotal dMassSetCapsuleTotal = (DLL_dMassSetCapsuleTotal)GetProcAddress(hDLL,"_odeMassSetCapsuleTotal@20");
typedef void(WINAPI *DLL_dSpaceCollide) (int space, int world, int group);
DLL_dSpaceCollide dSpaceCollide = (DLL_dSpaceCollide)GetProcAddress(hDLL,"_odeSpaceCollide@12");
typedef void(WINAPI *DLL_dSpaceCollide2) (int geom1, int geom2, int world, int group);
DLL_dSpaceCollide2 dSpaceCollide2 = (DLL_dSpaceCollide2)GetProcAddress(hDLL,"_odeSpaceCollide


Robert Cummings(Posted 2007) [#15]
I didn't want this to turn into an JV ODE thread so I will look at custom solutions instead.


Eric(Posted 2007) [#16]
http://rubux.swargo.com/?module=index

I have been using this one.. It seems pretty good. I'm using it with BMax+3dSDK.

Regards,
Eric


ZJP(Posted 2007) [#17]
@JoeRetro "It works if you remove the comments, blank lines and the .lib statement from your decls file. " !!! ???

DECLS_FIRST_CHAR = "px" >>> This var to select the lines to convert

"Well, with my fix ZJP's program appears to work and does what he intended it to do. Now, weather it works or not is yet to be seen :) "

>>> Code updated. Pointer and string are ok now.

"***** CONTENT UNAVAILABLE *****" Where is your code ???

@Vip3R ;-) ;-)
"It's all over the place".
My "point of view". More people on fire >> More chance to found a solution.
Sorry,may be a bad translation of :"Plus il y aura de personne travaillant sur ce problême et plus vite nous aurons une solution."
Google is my friend
"The more there will be of anybody working on this probleme and more quickly we will have a solution."

So, this is not THE solution to use DLL/userlib in C/C++ environment, but THE first step. This is not a "wrapper killer" but only a solution to use the DLLs without .LIB and .DEF. The second step ?: Convert the "blitz3d include code" in C/C++. Difficult for somes wrappers ;-)

@Eric "I have been using this one.. It seems pretty good. I'm using it with BMax+3dSDK."

And C/C++? Not yet!!
http://rubux.swargo.com/?module=forum&action=topic&id=30


ZJP(Posted 2007) [#18]
"So in other words, 'it works... once you've fixed it' :) "

Works VERY well. Take a look on my signature ;-)