Control 3D model movement inside JME

Is it easy / possible to control 3D model's movement using JME?



So far, I only seen people make the 3D model animation in 3Ds max or Blender, then in JME, loop the pre-animated 3D model.



Is it easy to depend on user input (arrow keys), the 3D model (say human body) will shake the upper body toward - front, backward, left side or right side.


You should ask that in a new thread.



Hint: The answer probably depends on what you mean by "easy" and how familiar you are with physical simulation.

you mean I should not ask this in jME - help > General?



I am new to JME, and I know how to create animation model in 3Ds max and load into JME.  That's all i know so far.



For control model's animation using JME class - that one I am not sure and need help.

No, sorry, my bad – I thought I navigated to it as a “next page” in a multi-page thread, and your post was thread-jacking, but it was a “next thread.” I’m getting too old for the web :wink:



Anyway, insofar as you would think that “moving limbs of a human” would be easy in a general rigid body dynamics package, and you are comfortable doing Java programming, I don’t think it would be much harder to do it in jME with jPhysics than in any other similar set of languages and packages.



However, what you’re asking for is actually a pretty hard problem in general. There are, in fact, entire commercial products dedicated to trying to solve exactly that problem. If what you want to do is to be able to move feet and arms up/down like a marionette puppet, and you’re content with keeping the body upright using some pinning force (a nail to the world, basically), then it’s probably something that’s reasonable to do for an interested hobbyist, assuming you’re already OK at programming and 3D math in general. If you want to simulate, say, balancing, dancing, or fighting, the UI and feedback needed for a human to be able to do that through a computer keyboard and mouse hasn’t been invented yet. Thus, that would be a very hard research problem, notwithstanding what engine and language you’re using.



The fact that you’re asking at all, though, leads me to believe that the right answer for you is “no” – and that you’d get the same answer no matter what language and engine you tried to use for the same task.



Make sense?

You can create some animations of your human model and exports it to a differents named animation files. So you can load one by one in JME, when an event occur, you can play the related animation. It's possible using Collada format. See the ColladaTesting class of JME cvs.

czuber,



your suggestion is good enough to do my job.



you meaning 1 collada model file ( .dae ) and 5 animation file ( .dae )



any good 3D program can create / export collada files easily?



I tried Poser 7 / 3D Sudio Max, they only export a single .dae file.  but there is no animation file ( another .dae ) exported.


3ds Max exports the animation as part of the file. Thus, you can export the same model 5 times, once with each animation (and once without animation). Then load the animation from the animation exported files, and the mesh from the mesh exported file.



Warning, though: Currently, the COLLADA importer for jME doesn't deal with Max COLLADA files for animation, because the importer only understands matrix keyframes, and Max exports TRS control values (which allow better interpolation).

When I choose "export selected" to export 3d model (.dae) and animation (.dae) into seperate files.



I load the 2 (.dae) files into JME 3D engine. The model is static is not moving at all.  Any thing wrong with the export options?



choose "export selected"



http://www.oniva.com/upload/1356/ex.jpg



export animation information to (.dae)



http://www.oniva.com/upload/1356/an.jpg



export 3D model (static one ) to (.dae)



http://www.oniva.com/upload/1356/obj.jpg



when loading the 2 (.dae) files into JME 3D engine, model is not moving at all



http://www.oniva.com/upload/1356/jme.jpg