Odejava and it's future

Dear Javagaming forum users,

As Odejava author I need to know if anyone wants to lead this project? Previously it was done by me and William Denniss but we both are no longer committing any work for this project because lack of time. I keep getting email messages considering project status and how it should be developed but I have to not time push this project forward.

This means taking over the websites, email communications and pushing Odejava community ahead. Websites are to my current knowledge:
https://odejava.dev.java.net
http://www.odejava.org

Jani Laakso / IT Mill Ltd.

It would really be cool if someone would volunteer for that. To my knowledge quite a lot of people are still using ODEJava.

As you probably know I have a modified version in jME Physics 2. It uses a newer version of ODE and has some little fixes (trimesh, 64 bit) I posted on this board, but did not get included in ODEJava (besides using other math classes :-). Some more features like picking, some joint parameters etc…

I have way too little spare time to lead ODEJava - even jME Physics 2 gets left behind quite a bit. So I would only want to do that, if the project would otherwise be abandoned.

I would also really like to see that odejava continues.

Hi Jani and William,

i am new to this forum - therefore it may be confusing that I am replying to this thread, but let me give a short explanation of myself:

  • I am using ODE for about three years now and developed some robot simulations with it (e.g. a Lego Mindstorms simulator called ‘RobertaSim’ - google should find something related but unfortunately in german language only for now)…
  • I have always used Java for controlling the virtual robots and for managing the user interface, I connected to ODE and it’s ‘drawstuff’ via TCP
  • I am concepting and carrying out workshops for highschool students concerning ODE and 3DVirtual environments - they all want to program in Java, they hate C(++)… me too :wink:

About two weeks ago I searched for some help and found Odejava… this did look so great for my purposes, especially because of the existing xith3d binding.

I did not get it to work with graphics - then I started checking the actual xith3d development forum…
Marvin and Amos helped me with xith3d and now this works…

Now I am into Odejava and realized that is quite old… :’(
I took the latest stable 2006-1-15 and now I am working on adapting the odejava-xith3d test/examples to the new xith3d api…
Everything seems to work fine for now… :slight_smile:
For my purposes, I will also have to add at least Cylinder support for odejavaToXith.createTransformGroups(…) and do some checking about strange display behaviour of the ground (plane) when changing view…

A few hours ago I talked to friends about the idea of asking you (the developers of Odejava) if it could be possible that I would lead this project in the future if nobody else does further development… - now that I’ve detected this thread in this forum (while searching for something completely different - i.e. the ground/plane problem…) I am totally psyched! :smiley:

What a coincidence! I think it’s no accident that I read this thread today…

So if you think that I can manage it or if you need more info about me - you are welcome…

I am new to this kind of business (open source projects), I could maybe need a little bit of advice…

…and for sure I’d like to know what amount of costs are to be expected if I would take over the websites as you wrote…

looking forward for some great Odejava development, maybe enhancement, etc…

please let me know your opinion

see ya

Pikku73

I have added cylinders to my copy. We could easily merge the natives and jni binding. Porting the class stuff is a little more work, due to a changed math package, but I’d be willing to switch all to e.g. openmali while porting.
So maybe you guys can make Pikku the maintainer and me a developer, to add my work and a little open source experience :slight_smile:

@pikku: We’re working on quite similar things, too, btw. Maybe we can even join more forces than just ODEJava.

sounds great - I am not into the cylinders for now but I saw that there is a class ‘CylinderGeometry’ in the latest odejava-xith3d package. Did you use this? (I assumed that only the OdejavaToXith3D class has to be adapted - am I wrong?)

I think you are talking about your enhancements concerning the newer ode native and the little fixes (trimesh, 64 bit) - this all sounds very interesting and it would be cool to merge…

I think that the conflict between vecmath and openmali (or did you talk about something different ???) will keep us all on work for a couple of time (i.e. at least changing the classpath :-)… for me the latest downloadable stable Odejava package compiles and runs very great with openmali (I just replaced classpath vecmath to openmali).

Have you done any ‘fixes’ that do not work with it? please let me know

would be great if we could continue working on Odejava together

sounds great, we will see… at first we should start with Odejava :wink:

I really hope that this goes somewhere and we all together can have a little bit of fun playing with some ‘new’ Odejava

@irrisor:

just now I realized that you are the one who adapted Odejava to jME Physics 2 - wow!
jME also is on my list of ‘to be viewed engines’ - and I think that we both really should join our forces, could become a great outcome…

No, no. But I replaced vecmath with jMEs math package in that copy. But as I said it’s not that important any more.

I will have a look at backporting the changes asap.

You could switch to OpenMaLi. It includes a vecmath implementation, that is API-compatible to Sun’s vecmath, but is GC-friendly, though not thread safe.

Marvin

yes, I already proposed that above :slight_smile: - basically because Xith uses it. I don’t care about the math library actually, as I won’t need it in jME Physics 2.

I had a look at it. As I thought, using the changed natives plus jni interface works smoothly. We should start with that.

I’d propose to have the org.odejava.ode (jni+natives) package as a separate module to allow using it directly (e.g. from jME Physics :)).

@jani: I have applied for developer role at the odejava project on java.net
@pikku: you should do so as ‘project owner’. Additionally, if you don’t feel like hosting that domain, I can do that.

I have just ported the xith3d demos to the current xith3d developer version. They still have the old ode glitches (some things seem to be wrong configured, zero length vectors etc.) but otherwise they’re fine.

If there are no objections I’m going to move the jni and native part to a new jni folder and check in the modifications for using latest xith3d. Afterwards I would change jME Physics 2 to use that odejava jni.

Ok, I have added a module named odejava-jni. It contains all the fixes and the cylinder stuff, using a development version of ODE 0.7, plus some joint additions (e.g. ERP/CFM for fixed and ball joint). But 0.8 should be working, too.

I have not checked in the java part and the new xith stuff, because natives for linux (32+64) and mac (ppc+intel) are not compiled, yet. If someone can help out…

ok, while risking to keep talking to myself :stuck_out_tongue: :

I have created a branch named “with-odejava-jni” which contains the new stuff already mentioned above (separated jni, new xith binding, openmali).

Additionally jME Physics 2 now uses the odejava natives again, yay :slight_smile:

Hey irrisor,

oh wow this all sounds incredibly great - we really should join our forces!

For some strange reasons I’ve been ‘off the line’ for a few days and now I see that
again we are working on similar things… :-\

for first:

@pikku: you should do so as ‘project owner’. Additionally, if you don’t feel like hosting that domain, I can do that.

that sounds really great, I will check for applying next week… (sorry, so much other stuff to do… :P) - and we should
stay in contact about hosting the domain - would be really cool if you can do that!

I have added some cylinder support to OdejavaToXith3d but unfortunately did it with
the old jni (that means using CappedCylinder for collision an adapted GeomCylinder for displaying it…)
not a good way but it worked for first :-[

In my copy, I did some changes to the default binding for that the ground and cylinders are being set up
by default… and changed the ground creation because I had awful flickering effects in the car example
when switching the camera - which turned out to be a problem with the ground height.

Besides I have added support for user defined colors…

I changed default appearance generation, because the box flickered when adding a colored material
and not using the strange rainbow-like ‘colorbox’.

I ported the Odejava SimpleExample (xith3d demo) to the new Xith developer API and added a cylinder.
With the changes mentioned above, now it works quite smoothly: Simply three objects (sphere, box, cylinder),
with three different user defined colors falling first onto another (and then to the ground) - in this example
you can play with positions, rotations, colors, bounciness (of contact with ground and with other objects)
in a very very easy way, I think… (I copied the code from HighlevelExample to some SimpleWorld.java for that purpose)

  • so it would be really great if we can merge our changes… I hope this goes somewhere

I do have to get it to work with Mac OS so maybe I can do a little bit of help with compiling
the jni stuff for Mac in the future - I think we have to do that for Linux, too… and I think we need help in this case ???

ok - I will check out your new stuff and we will keep working to get this Odejava to some really awesome thing :smiley:

yes, now I think Odejava will be a great component for to be used in the future - we can do that :wink:

that’s great

I already added linux/x86 and linux/amd64 natives. And I can do them easily - just have to wait for the next available time slot at work :slight_smile:

fine - remember all new things are in the branch (except for the jni stuff )

keep me updated

any news on this?