Author Topic: C BASIC ODE  (Read 3509 times)

Offline John

  • Forum Support / SB Dev
  • Posts: 3018
    • ScriptBasic Open Source Project
« on: December 04, 2013, 01:26:51 am »
ODE (Open Dynamics Engine) is an open source, high performance library for simulating rigid body dynamics. It is fully featured, stable, mature and platform independent with an easy to use C/C++ API. It has advanced joint types and integrated collision detection with friction. ODE is useful for simulating vehicles, objects in virtual reality environments and virtual creatures. It is currently used in many computer games, 3D authoring tools and simulation tools.

Project Site



The Math

C versus C++

The ODE library is written in C++, but its public interface is made of simple C functions, not classes. Why is this?

    Using a C interface only is simpler - the features of C++ do not help much for ODE.
    It prevents C++ mangling and runtime-support problems across multiple compilers.
    The user doesn't have to be familiar with C++ quirks to use ODE.

There's a semi-official C++ wrapper distributed with the library, in the odecpp*.h headers, but it has some design limitations.

Here are a few examples that were built in the demo folder. After spending a little time with the package, I will post a C BASIC example of one of the demos.

This is a demo of two tops spinning and as they slow down and finally tumble to their final resting place. (while the clouds continually move across the sky) The simulation is as real as some the best I've seen.

This is a cool demo as objects drop from the sky (keyboard commands) and bounce around until settled. (very realistic)

This is a rotating bar on shaft. The perspective changes as the bar rotates.

This demo rapidly creates/removes shapes in a defined area.

A piston example with keyboard interaction to change attributes.
« Last Edit: December 04, 2013, 08:35:35 pm by John »