Open Dynamics Engine (ODE)
The Open Dynamics Engine (ODE) (http://www.ode.org) is an open source library for simulating rigid body dynamics. It is fully featured, fairly stable, and platform independent.
Currently, ODE supports full 3D rigid body physics, with various collision primitives (bounding box, sphere, capsule and capped cylinder) as well as less-sophisticated support for arbitrary trimesh collisions. It also implements material properties (e.g. friction and elasticity) as well as a basic set of rigid constraints ("joints") such as hinges, ball and socket joints, and prismatic sliders. Any of these joints can be motorized, and most support hard joint limits as well.
ODE's limitations include:
- Performance scales poorly in scenes with many objects Not only does the simulation become slower and demand exponentially more memory, but simulations themselves can become unstable
- Unfinished rigid constraint APIs The ball and socket joint, for example, does not support joint limits and motor support is weak.
- Unsatisfactory complex shape collisions The "actual shape" collision functions do not perform well in complex collisions with many objects. Currently, there is no support for convex hull collision types.
Despite these flaws, development of ODE continues independent of Softimage and we can expect ODE to gradually improve in both performance and capabilities.