This 14th tutorial explains how to speed-up without using Drawstuff, the 3D graphics library, for your simulation.
Drawstuff is not part of ODE, it is, however, used to show demo programs of ODE. It is implemented based on OpenGL, and it is very simple so it is a very good educational materials to learn OpenGL.
Without using Drawstuff is very easy, just do not call dsSimulationLoop in the main function and functions related drawing .
Please read the following sample code.
- If you want to draw
static void simLoop (int pause) { // Write necessary codes for your simulation dSpaceCollide(space,0,&nearCallback); dWorldStep(world,0.01); dJointGroupEmpty(contactgroup); drawSphere(torso.geom); } int main(int argc, char *argv[]) { // Omit dsSimulationLoop(argc, argv, 640, 480, &fn); // Omit }
- If you do not want to draw
static void simLoop (int pause) { // Write necessary codes for your simulation dSpaceCollide(space,0,&nearCallback); dWorldStep(world,0.01); dJointGroupEmpty(contactgroup); } int main(int argc, char *argv[]) { // Omit while (1) { simLoop(0); // The argument must set to be 0 } // Omit }
The sample program does not draw anything, if you want to use Drawstuff, comment out the line 13 below.
// # Define DRAW Back to the drawing off the comments.
That’s all. See you !
demu