Ask for a suggestion about engines

Hello,
Im going to start work on my study project and i need a pair of engines to work with :
determenistic physic engine and render engine.
The work is about modeling adaptive behaviour of a robot , so the main requiment to physic engine is determinism, second - supporting of sceletal models .
Of course those engines must be compatible and not very low-level.
So what shell i use?
thx.

You working with 3d or 2d?

3d

I haven’t worked in this area, but since no one else is posting, I’ll say start with Phys2D and JMonkeyEngine.

We have a discussion over at xith.org regarding the implementation of ragdoll physics and there is some work on skeletal animation, but I think both needs some more work. It might nevertheless be worth a look. Feel free to join us in the forum.

Xith3D is a high-level games oriented scenegraph inspired by the Java3D api, so it might fit your needs. Furthermore there is an abstraction to plug in different physics engines. Currently there is a JOODE implementation available, but an ODE version is started and a JBullet version planned. We would really appreciate someone with a real usecase to help us pinpoint the gaps and in the best case helping to fill them.

Another choice would be JMonkey Engine (http://www.jmonkeyengine.com/), which also has a physics abstraction with an ODE implementation being the most complete afaik.

unfortunately both ODE and JOODE (as it’s a port of ODE) are not entirely deterministic

Also, what are the specific determinism requirements? Do your results merely need to be replicable on the same computer from run to run, or across different computers? These issues can be very tricky across the different processors and operating systems; from what I’ve seen, it’s extremely difficult to get that right unless you’re using fixed point math (perhaps the strictfp keyword will do the trick, I’m not entirely sure).

Wouldn’t jME be able to handle it? And what about the jBullet library?

[quote]Also, what are the specific determinism requirements?
[/quote]
I need to minimise randomize factor and noises.

[quote]These issues can be very tricky across the different processors and operating systems;
[/quote]
Ill run it on a single computer , so the main requiment is the same proccess running each time on start.

also it would be cool if i can start and stop physical engine and get passed tacts count.

Detailed :
The model is very simple - its a block that have weight and legs. leg have joints and friction coefficent on the end. All the system can is to change joints parametres (angle , power of effort).

[quote]what about the jBullet library?
[/quote]
Thats interesting too , and what about jphysx ? www.jphysx.com