Joode does not seem to support TriMesh geoms :/

Hi all,



and sorry for my bad english. I'm a new jME / jME Physics 2 user.

I have checked out the jme and jmephysics CVS source and

successfully compiled / run "jmetest.terrain.TestTerrainTrees"



So, after this I had try to run "com.jmetest.physics.TestGenerateTerrain"

The result is an exception:



java.lang.UnsupportedOperationException: Joode does not seem to support TriMesh geoms :confused:

at com.jmex.physics.impl.joode.geometry.JoodeMesh.<init>(JoodeMesh.java:60)

at com.jmex.physics.impl.joode.JoodePhysicsSpace.createMesh(JoodePhysicsSpace.java:963)

at com.jmex.physics.PhysicsNode.createMesh(PhysicsNode.java:502)

at com.jmex.physics.PhysicsNode.createPhysicsGeometry(PhysicsNode.java:327)

at com.jmex.physics.PhysicsNode.generatePhysicsGeometry(PhysicsNode.java:293)

at com.jmex.physics.PhysicsNode.addPhysicsGeometries(PhysicsNode.java:197)

at com.jmex.physics.PhysicsNode.addPhysicsGeometries(PhysicsNode.java:218)

at com.jmex.physics.PhysicsNode.addPhysicsGeometries(PhysicsNode.java:218)

at com.jmex.physics.PhysicsNode.addPhysicsGeometries(PhysicsNode.java:218)

at com.jmex.physics.PhysicsNode.generatePhysicsGeometry(PhysicsNode.java:167)

at com.jmex.physics.PhysicsNode.generatePhysicsGeometry(PhysicsNode.java:142)

at com.jmex.physics.PhysicsNode.generatePhysicsGeometry(PhysicsNode.java:127)

at com.jmex.physics.PhysicsNode.generatePhysicsGeometry(PhysicsNode.java:114)

at com.jmetest.physics.TestGenerateTerrain.simpleInitGame(TestGenerateTerrain.java:85)

at com.jme.app.BaseSimpleGame.initGame(BaseSimpleGame.java:503)

at com.jme.app.BaseGame.start(BaseGame.java:69)

at com.jmetest.physics.TestGenerateTerrain.main(TestGenerateTerrain.java:252)





I can't find this exception by the forum-search, google or http://wiki.jmephysics.irrisor.net/

First I have try to change the lib to ODE but the engine use all the time JOODE.

So what must I do to run TestGenerateTerrain correctly?





Thank you for your efforts!

Are you able to run jME at all?, what about other jME-Physics examples?

JOODE does not support trimesh geoms, that's correct. And you're right, you need to switch to ODE to get it working. Simply put the impl/ode classes into the classpath (and the natives in the library path) and remove the JOODE classes from the classpath.

duenez said:

Are you able to run jME at all?, what about other jME-Physics examples?

he is, he is just using JOODE unintentionally ;)

Hi all,



First, I am new to jME. 



I am trying to move a game I have been developing in JOGL to use jME (Graphics and Physics), I am using NetBeans and am having a hard time getting the test cases to run.



jME library is built and all examples seem to work

jME Physics cleans and builds without errors (Except for the depraction warnings)



When I the have joode in the libraries included a few of the test cases will run, but the majority fail with the same errors that mrz was experiencing. (Joode does not seem to support TriMesh geoms)



However, when use I ODE as per irrisor’s advice I get this error:

Nov 17, 2007 12:09:21 PM class com.jmetest.physics.ragdoll.TestSimpleRagDoll start()

SEVERE: Exception in game loop

java.lang.NoClassDefFoundError: net/java/dev/joode/space/NearCallback

        at java.lang.ClassLoader.defineClass1(Native Method)

        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)

        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)

        at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)

        at java.net.URLClassLoader.access$100(URLClassLoader.java:56)

        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)

        at java.security.AccessController.doPrivileged(Native Method)

        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)

        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)

        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)

        at java.lang.Class.forName0(Native Method)

        at java.lang.Class.forName(Class.java:164)

        at com.jmex.physics.PhysicsSpace.create(PhysicsSpace.java:298)

        at com.jmex.physics.util.SimplePhysicsGame.initSystem(SimplePhysicsGame.java:90)

        at com.jme.app.BaseGame.start(Unknown Source)

        at com.jmetest.physics.ragdoll.TestSimpleRagDoll$2.run(TestSimpleRagDoll.java:118)

BUILD SUCCESSFUL (total time: 6 seconds)






I used the NetBeans instructions http://www.jmonkeyengine.com/wiki/doku.php?id=setting_up_netbeans_5.0_to_build_jme_and_jme-physics_2 and was also trying the example http://wiki.jmephysics.irrisor.net/tiki-index.php?page=Simple+Third+Person+Game which also fails with the same error.





Nov 17, 2007 12:30:25 PM com.jmex.physics.PhysicsSpace create

INFO: Using physics implementation ‘com.jmex.physics.impl.ode.OdePhysicsSpace$OdeFactory’.

Exception in thread “main” java.lang.NoClassDefFoundError: net/java/dev/joode/space/NearCallback

        at java.lang.ClassLoader.defineClass1(Native Method)

        at java.lang.ClassLoader.defineClass(ClassLoader.java:662)

        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)

        at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)

        at java.net.URLClassLoader.access$000(URLClassLoader.java:56)

        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)

        at java.security.AccessController.doPrivileged(Native Method)

        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:316)

        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:287)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)

        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:361)

        at java.lang.Class.forName0(Native Method)

        at java.lang.Class.forName(Class.java:169)

        at com.jmex.physics.PhysicsSpace.create(PhysicsSpace.java:298)

        at com.jmex.physics.util.states.PhysicsGameState.<init>(PhysicsGameState.java:48)

        at physicsTest.SimpleThirdPersonGame$SimpleThirdPersonState.<init>(SimpleThirdPersonGame.java:97)

        at physicsTest.SimpleThirdPersonGame.<init>(SimpleThirdPersonGame.java:58)

        at physicsTest.SimpleThirdPersonGame.main(SimpleThirdPersonGame.java:69)

Java Result: 1

BUILD SUCCESSFUL (total time: 18 seconds)








Any help with this problem would be very appreciated.  Also I am developing this on Mac OSX.

You need to remove the joode stuff from the classpath.

Thank You for the very fast reply  :slight_smile: I guess you were right and I did have my classpath screwed up.  However now I am running in to the UnsatisfiedLinkError: dJointSetBodiesCollide error, how would I go about building the Mac Native I have xCode installed.

Yeah, sorry the natives are not up to date in CVS :expressionless:



You could use the latest release. If you like to stay with cvs: to build it have a look at this thread.