Odejava: request new features

Post your Odejava feature requests here. I hope you have used the package before and ode itself is familiar to you.

At this stage I would like to consider following new features:

  1. Add arbitrary object support for odejava
    -TriMesh support

  2. Add other contrib sections
    -Cylinder (non capped)
    -BreakableJoints
    -TerrainAndCone
    -Ray

  3. Callback function also for Java

  4. Proper makefile or instructions

This week I’ll do better package hierarchy and set up CVS.

Could odejava get it’s own forum under javanet core or 3rd party?

Someone could solve the “bendy wheel” problem :o)

Bendy wheel problem? I assume this is strictly ODE related, sure we can discuss it here but ODE mailing lists have best answers for actual physics configuration problems.

If you refer to my Xith3d demos then please do not take those to any account as I’ve done them extremely fast. Yes the ODE parameters that I’ve selected are quite funny for the car demo :slight_smile: I am sure anyone can get the car act better by tweaking simulation parameters…

Update to previous discussions, I’ve postponed couple days new Odejava release as I wanted to work with new API.

I wish to make one thing clear before you continue to read this post. When I talk about C API or C++ API, it means actually Java API that is generated from ODE’s C or C++ headers using swig toolkit. So forget C / C++ issues here, users of Javaode see only Java, not C.

Current Javaode API is based on:

  1. Java API based on ODE’s C++ headers
    -generated by swig tool

  2. Java API based on ODE’s C headers
    -generated by swig tool
    -only few added because C++ is missing few functions

New API consists of:

  1. Main API
    -not generated (cleaner), made by human
    -more ‘Java like’, easier to use

  2. Java API based on ODE’s C headers
    -generated by swig tool
    -one to one with ODE’s own C API

  3. Java API based on ODE’s C++ headers
    -generated by swig tool
    -one to one with ODE’s own C++ API
    -this could be deprecated?

I want to include all C headers from ODE as they are the main API on ODE also. ODE’s own documentation and examples are based on C API, not C++ API.

More importantly, the new Odejava API is cleaner and a lot easier to understand on first glance. This higher level API currently uses ODE’s C API directly. It won’t be complete initially, but it’s usage should be easy to extend by adding more functionality with existing C API if needed.

About Odejava’s current priorities:

  1. Conform completely into ODE’s C API
    -anything that is possible on C should be possible with Java also

  2. Offer proper Java API
    -most (if not all) functionality is gained through clean Java API

  3. Take into consideration other projects
    -scenegraph libraries (Xith, jME, OpenMind)
    -other similar physic engines made fully with Java
    (-3ds / ase readers)

In other words, it should be always possible to do everything with C API directly in case higher level API is not appropriate for some reason.

I’ve made initial Java PE API, but it conforms to ODE very much currently. This higher level API could certainly have it’s comments from other Java physic engine or scenegraph project gurus.

My plan is to release next version this week, so people get to see new API asap.

Opinions?

sounds tip top m8 - i just started playing with it. will play more with your newer version…

top stuff

A pure java implementation would be awesome.

Will.

Try to work together with Shawn Kendall for creating a pure Java implementation. :slight_smile: He mentioned in the thread in the Xith3D forum that he wants to create a pure Java implementation himself.