Open Dynamics Engine

Last updated
Open Dynamics Engine
Developer(s) Russell Smith
Initial releaseMay 8, 2001;22 years ago (2001-05-08)
Stable release
0.16.2 / July 30, 2020;3 years ago (2020-07-30) [1]
Repository bitbucket.org/odedevs/ode
Written in C/C++
Operating system Platform independent
Type Physics engine
License BSD [2]
Website www.ode.org
A simple vehicle driving over a ramp. This demo is distributed with the ODE source code (demo_buggy). ODE buggy.png
A simple vehicle driving over a ramp. This demo is distributed with the ODE source code (demo_buggy).
A collision with many objects. This demo is distributed with the ODE source code (demo_crash). ODE crash.png
A collision with many objects. This demo is distributed with the ODE source code (demo_crash).

The Open Dynamics Engine (ODE) is a physics engine written in C/C++. Its two main components are a rigid body dynamics simulation engine and a collision detection engine. [3] It is free software licensed both under the BSD license and the LGPL.

Contents

ODE was started in 2001 and has already been used in many applications and games, such as Assetto Corsa , BloodRayne 2 , Call of Juarez , S.T.A.L.K.E.R. , Titan Quest , World of Goo , X-Moto and OpenSimulator .

Overview

The Open Dynamics Engine is used for simulating the dynamic interactions between bodies in space. It is not tied to any particular graphics package although it includes a basic one called drawstuff. [4] It supports several geometries: box, sphere, capsule (cylinder capped with hemispheres), triangle mesh, cylinder and heightmap.

Simulation

Higher level environments that allow non-programmers access to ODE include Player Project, Webots, Opensimulator, anyKode Marilou and CoppeliaSim.

ODE is a popular choice for robotics simulation applications, with scenarios such as mobile robot locomotion [5] [6] and simple grasping. ODE has some drawbacks in this field, for example the method of approximating friction and poor support for joint-damping. [7]

See also

Related Research Articles

<span class="mw-page-title-main">Physics engine</span> Software for approximate simulation of physical systems

A physics engine is computer software that provides an approximate simulation of certain physical systems, such as rigid body dynamics, soft body dynamics, and fluid dynamics, of use in the domains of computer graphics, video games and film (CGI). Their main uses are in video games, in which case the simulations are in real-time. The term is sometimes used more generally to describe any software system for simulating physical phenomena, such as high-performance scientific simulation.

COLLADA is an interchange file format for interactive 3D applications. It is managed by the nonprofit technology consortium, the Khronos Group, and has been adopted by ISO as a publicly available specification, ISO/PAS 17506.

A physics processing unit (PPU) is a dedicated microprocessor designed to handle the calculations of physics, especially in the physics engine of video games. It is an example of hardware acceleration.

<span class="mw-page-title-main">PhysX</span> Realtime physics engine software

PhysX is an open-source realtime physics engine middleware SDK developed by Nvidia as a part of Nvidia GameWorks software suite.

<span class="mw-page-title-main">Blender Game Engine</span>

The Blender Game Engine was a free and open-source 3D production suite used for making real-time interactive content. It was previously embedded within Blender, but support for it was dropped in 2019, with the release of Blender 2.8. The game engine was written from scratch in C++ as a mostly independent component, and includes support for features such as Python scripting and OpenAL 3D sound.

<span class="mw-page-title-main">Delta3D</span>

Delta3d is an open source software gaming/simulation engine API. Delta3d is managed and supported by Caper Holdings LLC. Previously the Modeling, Virtual Environments, and Simulation (MOVES) Institute at the Naval Postgraduate School in Monterey, California managed and supported delta3d. Alion Science has also been a major contributor to enhancements and features.

The Open Physics Abstraction Layer (OPAL) is an open source realtime physics engine API similar to PAL. It is currently supported only by ODE, but can be extended to run off of other engines. OPAL is free software, released under both the LGPL and the BSD license. It was originally designed and written by Tyler Streeter, Andres Reinot, and Alan Fischer while working at Iowa State University's Virtual Reality Applications Center (VRAC).

<span class="mw-page-title-main">Bullet (software)</span>

Bullet is a physics engine which simulates collision detection as well as soft and rigid body dynamics. It has been used in video games and for visual effects in movies. Erwin Coumans, its main author, won a Scientific and Technical Academy Award for his work on Bullet. He worked for Sony Computer Entertainment US R&D from 2003 until 2010, for AMD until 2014, for Google until 2022 and he now works for Nvidia.

<span class="mw-page-title-main">Newton Game Dynamics</span> Physics engine

Newton Game Dynamics is an open-source physics engine for realistically simulating rigid bodies in games and other real-time applications. Its solver is deterministic and not based on traditional LCP or iterative methods.

<span class="mw-page-title-main">Tokamak (software)</span> Open-source physics engine

The Tokamak Game Physics SDK is an open-source physics engine.

<span class="mw-page-title-main">Physics Abstraction Layer</span>

The Physics Abstraction Layer (PAL) is an open-source cross-platform physical simulation API abstraction system. It is similar to a physics engine wrapper, however it is far more flexible providing extended abilities. PAL is free software, released under the BSD license.

<span class="mw-page-title-main">Player Project</span> Robot interface specification and software system

The Player Project creates free and open-source software for research into robotics and sensor systems. Its components include the Player network server and the Stage platform robotics simulators. Although accurate statistics are hard to obtain, Player is one of the most popular open-source robot interfaces in research and post-secondary education. Most of the major intelligent robotics journals and conferences regularly publish papers featuring real and simulated robot experiments using Player and Stage.

Scythe is a free software physics modeling program. It allows the merging of physics and graphics content in one package. It provides native support for modeling the rigid body physics for the Newton Game Dynamics, the Open Dynamics Engine and PhysX engine. The Physics Abstraction Layer also provides support for the Scythe format.

<span class="mw-page-title-main">Webots</span> Open-source robot simulator

Webots is a free and open-source 3D robot simulator used in industry, education and research.

<span class="mw-page-title-main">AnyKode Marilou</span> Software

anyKode Marilou is a modeling and simulation environment for mobile robots, humanoids, articulated arms and parallel robots operating in real-world conditions that respect the laws of physics. This robotics suite is used in research centers and industry for various projects like humanoid architectures, wheeled and multi legged vehicles, and multi-robot systems (Multi-agents).

<span class="mw-page-title-main">SimSpark</span>

SimSpark is a generic simulation system for various multiagent simulations. It supports developing physical simulations for AI and robotics research with an open-source application framework. It is commonly used in academic research and education.

Vortex Studio is a simulation software platform that is developed by CM Labs Simulations. It features a real-time physics engine that simulates rigid body dynamics, collision detection, contact determination, and dynamic reactions. It also contains model import and preparation tools, an image generator, and networking tools for distributed simulation, accessed through a desktop editor via a GUI. Vortex adds accurate physical motion and interactions to objects in visual-simulation applications for operator training, mission planning, product concept validation, heavy machinery and robotics design and testing, haptics devices, immersive and virtual reality (VR) environments.

Gazebo is an open-source 3D robotics simulator. It integrated the ODE physics engine, OpenGL rendering, and support code for sensor simulation and actuator control.

References

  1. "Downloads". Archived from the original on 2018-12-24. Retrieved 2018-12-24.
  2. ODE's license
  3. "Open Dynamics Engine - Intel Threading Building Blocks [Book]". www.oreilly.com. Retrieved 2023-04-08.
  4. "odedevs / ode / drawstuff". bitbucket.org. Retrieved 2023-04-08.
  5. Brezina, Tomas; Jablonski, Ryszard (2009-11-29). Recent Advances in Mechatronics: 2008 - 2009. Springer Science & Business Media. ISBN   978-3-642-05022-0.
  6. Yıldırım, Şahin; Arslan, Erdem (2018-08-01). "ODE (Open Dynamics Engine) based stability control algorithm for six legged robot". Measurement. 124: 367–377. doi:10.1016/j.measurement.2018.03.057. ISSN   0263-2241. S2CID   70264565.
  7. Drumwright, Evan; Hsu, John; Koenig, Nathan; Shell, Dylan (2010). "Extending Open Dynamics Engine for Robotics Simulation". In Ando, Noriaki; Balakirsky, Stephen; Hemker, Thomas; Reggiani, Monica; von Stryk, Oskar (eds.). Simulation, Modeling, and Programming for Autonomous Robots. Lecture Notes in Computer Science. Vol. 6472. Berlin, Heidelberg: Springer. pp. 38–50. doi:10.1007/978-3-642-17319-6_7. ISBN   978-3-642-17319-6.