ode4j

A Java 3D Physics Engine & Library

About
Features
Documentation
Download
Contact

Source Code

Please keep in mind that the code is ported from C/C++ and does therefore often not obey common Java coding practices.
Also I avoided cleaning up the code too much, in order to simplify migration to newer ODE releases.

Project Structure of downloadable files

Project Structure - SVN


Sub-Projects
  • https://svn.code.sf.net/p/cpp4j/code/trunk
  • https://svn.code.sf.net/p/ode4j/code/ode4j-core/trunk
  • https://svn.code.sf.net/p/ode4j/code/ode4j-cpp/trunk
  • https://svn.code.sf.net/p/ode4j/code/ode4j-sdk/trunk

Explanation
  • cpp4j: This is from a different project of mine. It contains helper functions that I used for porting the code from C/C++ to Java.
  • ode4j: This is the core repository containing all functionality to run physics simulations.
  • ode4j-cpp: This provides an optional additional static C-like API (which is the preferred API in ODE for C/C++). It can be used for reference (most of the ODE docs refer to the C-like API) or when migrating projects from C/C++ to Java.
  • ode4j-sdk: This repository provides additional code for developers like demos, sources, javadoc and test harnesses. There are two sets of demos; the demos in 'org.ode4j.democpp' are ports of the original demos and require the C-like API (from ode4j-cpp). The demos in 'org.ode4j.demo' are updated versions of the 'democpp' demos, such that they now use the OO-API provided by ode4j.jar.
The source code is available from the SVN repository at sourcefourge.net:
To import the code into Eclipse 3.4, 3.5, 3.6:
  1. Download and install a SVN plugin for Eclipse (The following steps are for Subversive, an alternative plug-in is Subclipse)
  2. Create a new SVN project from existing source
  3. URL = https://ode4j.svn.sourceforge.net/svnroot/ode4j/ode4j-core
  4. Press "Next >"
  5. Browse to select "trunk"
  6. Press "Finish" (For SVN Project Set-Up)
  7. Press "Finish" (For check-out)
Perform the steps above for the sub-projects above.

Dependencies

The ode4j-core library requires currently no other libraries except a Java 6 SE JVM or later.
The ode4j-sdk requires lwjgl-2.0.1 or later (confirmed with 2.7.1) for the 'drawstuff' package used in the demos. You will probably require lwjgl.jar and lwjgl_util.jar. Please don't forget to include the .jar file and the binaries into your eclipse project. Binaries can be included in eclipse by right-clicking on your propect, then navigate to "Build Path"->"Libraries", then unfold the lwjgl.jar and add the folder that contains the binaries for your platform.
The ode4j-sdk requires JUnit 4.5 for the test harnesses.

Licensing & Copyright

This library is under copyright by Tilmann Zäschke (Java port), Russell L. Smith (copyright holder of the original ODE code), Francisco Leon (copyright holder of the original GIMPACT code) and Daniel Fiser (copyright holder of the original libccd).

This library is free software; you can redistribute it and/or modify it under the terms of EITHER:
(1) The GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The text of the GNU Lesser General Public License is included with this library in the file LICENSE.TXT.
(2) The BSD-style license that is included with this library in the files ODE-LICENSE-BSD.TXT and ODE4j-LICENSE-BSD.TXT.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files LICENSE.TXT, ODE-LICENSE-BSD.TXT, GIMPACT-LICENSE-BSD.TXT, GIMPACT-LICENSE-LGPL.TXT, ODE4J-LICENSE-BSD.TXT and LIBCCD_BSD-LICENSE for more details.

The LICENSE.TXT, ODE-LICENSE-BSD.TXT, GIMPACT-LICENSE-BSD.TXT, GIMPACT-LICENSE-LGPL.TXT, LIBCCD_BSD-LICENSE and ODE4J-LICENSE-BSD.TXT files are available in the source code.


© Copyright 2012 Tilmann Zäschke [ode4j AT gmx DOT de]