# Animation mit jmonkeyengine



## apparat (22. Mai 2007)

Ich hoffe jemand von euch kann mir bezüglich dieser Frage zur jmonkeyengine weiterhelfen.
Ich habe vor mit Blender ein 3D Model zu erstellen (einen ganz normalen Menschen).
Dieses Model möchte ich dann mit Hilfe der jmonkeyengine importieren.
Nun ist die Frage wie ich diesen Menschen animieren soll. Kann man das Model zb. fürs laufen oder spingen in Blender animieren und dann später im java Programm diese Animation einfach durch eine bestimmte Taste aufrufen?
Oder macht man das anders?
Bisher habe ich dazu noch nichts brauchbares im Web gefunden. Veilleicht hat jemand von euch schon Erfahrungen damit gemacht.


----------



## Evil-Devil (22. Mai 2007)

Vielleicht solltest du dir zunächst die Tutorials auf der JMonkeyEngine Wiki Seite anschauen.

http://www.jmonkeyengine.com/wiki/doku.php?id=the_tutorials

In wie weit die Engine Skeletal oder Vertex Animation unterstützt weiß ich ohne langes nachlesen auf der Website auch nicht


----------



## apparat (23. Mai 2007)

also wie ich jetzt nach vielem forschen rausgefunden habe, realisiert man solche Sachen wohl mit BONES. JME selbst unterstützt ja auch die Skeletal Animation aber leider habe ich dazu noch nicht so viel gefunden. Bisher weiß ich das ich die fertigen Animationen per COLLADA aus Blender importieren kann und diese dann abspielen kann. Nun ist die Frage wie man das ganze noch vermischen kann. also Animationen Ereignisgesteurt mixen.

wenn trotzdem irgendjemand hier schon praktische Erfahrungen hat wäre das ganz gut. denn Tips und Erfahrungsberichte sind immer sinnvoll.


----------



## Evil-Devil (23. Mai 2007)

Du müsstest für deine Animationen States schreiben. AUch bei der Skeletal Animation legt man im Modelprogramm vorher die einzelnen Animationen fest wie zb. Laufen, Springen etc. Diese kann man dann später auch direkt ansteuern. Hab Collada bisher nicht nutzen können...warte noch auf ne aktuelle Maya Version und die lässt auf sich warten


----------



## apparat (23. Mai 2007)

auf der JME Seite gibt es ne DEMO zu COLLADA. Das sieht recht gut aus muss ich sagen. Bleibt allerdings die Frage wie man Animationen mixen kann. Ich weiß nicht ob das überhaupt geht. 
Damit meine ich zB. folgendes: 
ein Menschen hat die Animation "laufen" und die Animation "mit dem Arm winken".
Nun soll im Programm je nach Ereignis beides mit einem mal möglich sein also das die Person läuft und dabei mit dem Arm winkt.
Sicherlich wird das irgendwie möglich sein, nur ist die Frage wie??


----------



## Evil-Devil (23. Mai 2007)

Das sollte über Skeletal Animation nicht das Problem darstellen. Du müsstest dann abfragen welche Bones sich gerade bewegen sollen und diese dann entsprechend bewegen.

Das wird die Engine wohl nicht von alleine machen


----------



## apparat (24. Mai 2007)

das ist mir schon klar ;-)
Aber die Frage die sich dabei stellt ist, ob ich die Engine soweit überhaupt nutzen kann um solche Abfragen durchzuführen und nach Wunsch verschiedene Bones zu bewegen.
Also ob die API der Engine dort einen Zugriff bietet.


----------



## Evil-Devil (24. Mai 2007)

Dazu wirst du die engine wohl ausprobieren müssen 
Vielleicht findet sich auch in der API Doku ein Hinweis auf das Ansteuern der Bones. Wenn sie Skeletal Animation ordentlich implementiert haben, wirst du die Bones ansteuern können


----------



## apparat (24. Mai 2007)

hehe ich versteh ja was du meinst. ;-) Hätt ja nur sein können das zuuuufällig jemand schon Ahnung davon hat und nen Tip hat. Aber vielleicht find ich ja irgendwann mal was gescheites per google. Bisher war die Suche allerdings nicht so erfolgreich.
Vielleicht findet sich ja was in der API. Also das normale "Abspielen" einer SkeletalAnimation hab ich ja schon gefunden. Nur ist das bisher nicht das was ich immer will. Naja es wird sich schon ne Lösung ergeben.


----------



## Evil-Devil (24. Mai 2007)

Hab mal so durch die Doku geschaut...zu Skeletal Animation hab ich leider gar nichts gefunden. Nur Vertex und Mesh Animation.


----------



## apparat (24. Mai 2007)

Genauso ging es mir bisher auch. Es wird zwar immer angepriesen das Skeletal Animation mit der JME verfügbar ist aber so richtig genutzt bzw. dokumentiert scheint es auch nicht zu sein. Evtl. müsste man mal im englisch sprachigen Forum der JME Community nachfragen. Die werden sich ja mit ihrem Zeugs da am besten auskennen 

ich habe grad nochmal nachgesehen. Es gibt die Klassen BoneAnimation und noch son Controller. Ich denke wenn man sich mal die Daten ansieht die nach dem COLLADA Import vorhanden sind kann man die Animation auch "per Hand" nachschreiben. Das dürfte zwar etwas aufwendiger werden aber theoretisch müsste es möglich sein.


----------

