Quote: "Moreover does this mean I can invoke any commands that comes inbuilt with Dark Basic Pro - whether they are supported officially or not ?"
Not directly, only if there is a corresponding command in DGDK2.0 wrapped by the developer. If you fancy you can wrap missing commands yourself (straight forward process). But as far as I know all commands available in DBPro have been wrapped already + all official + majority of third party plugins.
You can check the template files to find if a necessary command has been wrapped already. Just go to
Quote: "DarkGDK\templates\libraries"
and explore.
Quote: "For example the statement - ODE CREATE DYNAMIC BOX , how do I use this?"
Like this:
Quote: "void ODE_CreateDynamicBox(int32_t objectID);"
or this:
Quote: "void ODE_CreateDynamicBox(int32_t objectID, float width, float height, float depth);"
dgdk-ode.h:
#ifndef _GDKLIB_ODE_H
#define _GDKLIB_ODE_H
#include "../core/dgdk-darkgdk.h"
void ODE_AddBodyForce(int32_t objectID, float x, float y, float z, float x1, float y1, float z1);
void ODE_CollisionGetMessage();
int32_t ODE_CollisionMessageExists();
void ODE_CreateDynamicBox(int32_t objectID, float width, float height, float depth);
void ODE_CreateDynamicBox(int32_t objectID);
void ODE_CreateDynamicCylinder(int32_t objectID);
void ODE_CreateDynamicSphere(int32_t objectID);
void ODE_CreateDynamicTriangleMesh(int32_t objectID);
void ODE_CreateStaticBox(int32_t objectID);
void ODE_CreateStaticTriangleMesh(int32_t objectID);
void ODE_CreateStaticUniverse();
void ODE_DestroyObject(int32_t objectID);
void ODE_DestroyRagdoll(int32_t objectID);
void ODE_End();
float ODE_GetBodyAdjustmentX(int32_t objectID);
float ODE_GetBodyAdjustmentY(int32_t objectID);
float ODE_GetBodyAdjustmentZ(int32_t objectID);
float ODE_GetBodyHeight(int32_t objectID);
float ODE_GetBodyLinearVelocityX(int32_t objectID);
float ODE_GetBodyLinearVelocityY(int32_t objectID);
float ODE_GetBodyLinearVelocityZ(int32_t objectID);
float ODE_GetBodyTravelDistanceX(int32_t objectID);
float ODE_GetBodyTravelDistanceY(int32_t objectID);
float ODE_GetBodyTravelDistanceZ(int32_t objectID);
float ODE_GetObjectAAngularVelocityX();
float ODE_GetObjectAAngularVelocityY();
float ODE_GetObjectAAngularVelocityZ();
float ODE_GetObjectAContact();
float ODE_GetObjectAVelocityX();
float ODE_GetObjectAVelocityY();
float ODE_GetObjectAVelocityZ();
int32_t ODE_GetObjectA();
float ODE_GetObjectBAngularVelocityX();
float ODE_GetObjectBAngularVelocityY();
float ODE_GetObjectBAngularVelocityZ();
float ODE_GetObjectBContact();
float ODE_GetObjectBVelocityX();
float ODE_GetObjectBVelocityY();
float ODE_GetObjectBVelocityZ();
int32_t ODE_GetObjectB();
float ODE_GetRayCollisionX();
float ODE_GetRayCollisionY();
float ODE_GetRayCollisionZ();
float ODE_GetRayNormalX();
float ODE_GetRayNormalY();
float ODE_GetRayNormalZ();
void ODE_SetAngularVelocity(int32_t objectID, float x, float y, float z);
void ODE_SetBodyMass(int32_t objectID, float mass);
void ODE_SetBodyRotation(int32_t objectID, float x, float y, float z);
void ODE_SetContactBounceVelocity(int32_t objectID, float value);
void ODE_SetContactBounce(int32_t objectID, float value);
void ODE_SetContactFDir1(int32_t objectID, float value);
void ODE_SetContactMotion1(int32_t objectID, float value);
void ODE_SetContactMotion2(int32_t objectID, float value);
void ODE_SetContactMu2(int32_t objectID, float value);
void ODE_SetContactSlip1(int32_t objectID, float value);
void ODE_SetContactSlip2(int32_t objectID, float value);
void ODE_SetContactSoftCFM(int32_t objectID, float value);
void ODE_SetContactSoftERP(int32_t objectID, float value);
void ODE_SetContactVelocity(int32_t objectID, float value);
void ODE_SetContact(int32_t objectID, int32_t mode, int32_t value);
void ODE_SetGravity(int32_t objectID, int32_t mode);
void ODE_SetLinearVelocity(int32_t objectID, float x, float y, float z);
void ODE_SetRagdollMode(int32_t objectID);
void ODE_SetStepMode(int32_t mode);
void ODE_SetWorldCFM(float value);
void ODE_SetWorldERP(float value);
void ODE_SetWorldGravity(float x, float y, float z);
void ODE_SetWorldQuickStepNumIterations(int32_t value);
void ODE_SetWorldStep(float value);
void ODE_SetSurfaceModeContactApprox0(int32_t objectID, int32_t state);
void ODE_SetSurfaceModeContactApprox1(int32_t objectID, int32_t state);
void ODE_SetSurfaceModeContactApprox11(int32_t objectID, int32_t state);
void ODE_SetSurfaceModeContactApprox12(int32_t objectID, int32_t state);
void ODE_SetSurfaceModeContactBounce(int32_t objectID, int32_t state);
void ODE_SetSurfaceModeContactMotion1(int32_t objectID, int32_t state);
void ODE_SetSurfaceModeContactMotion2(int32_t objectID, int32_t state);
void ODE_SetSurfaceModeContactMu2(int32_t objectID, int32_t state);
void ODE_SetSurfaceModeContactSlip1(int32_t objectID, int32_t state);
void ODE_SetSurfaceModeContactSlip2(int32_t objectID, int32_t state);
void ODE_SetSurfaceModeContactSoftCFM(int32_t objectID, int32_t state);
void ODE_SetSurfaceModeContactSoftERP(int32_t objectID, int32_t state);
void ODE_SetSurfaceMode(int32_t objectID, int32_t mode, int32_t state);
void ODE_Start();
void ODE_Update(float value);
void ODE_Update();
void ODE_SetBodyResponse(int32_t objectID, int32_t mode);
void ODE_CreateBallJoint(int32_t a, int32_t b, int32_t c, float d, float e, float f);
void ODE_CreateHingeJoint(int32_t a, int32_t b, int32_t c, float d, float e, float f, float g, float h, float i);
void ODE_CreateRagdollFromBoneModel(int32_t objectID, float flexibility, int32_t c);
void ODE_CreateRagdollFromBoneModel(int32_t a, float b);
int32_t ODE_RayCast(int32_t a, float b, float c, float d, float e, float f, float g);
void ODE_SetActive(int32_t a, int32_t b);
void ODE_SetEnabled(int32_t a, int32_t b);
void ODE_SetHingeJointLimit(int32_t a, float b, float c);
void ODE_SetRayCast(int32_t a, int32_t b);
#endif /* _GDKLIB_ODE_H */
Intel Core2Duo 2.2GHZ, 2GB, GeForce 8600M GT 1280MB, Windows Vista Ultimate SP2, PureBasic 4.60 + DarkGDK 2.0