PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Maya to CE2 Costum Rig/ Animation



Broetchaen
27.01.2012, 00:13
Hi Leute,

wir haben bei unserem laufenden Projekt viele Probleme mit dem Exportieren von Maya zur CryEngine 2 gehabt. Diese sind nun jedoch gelöst und ich will euch zeigen, wie man einen eigenen Charakter, mit eigenem Rig und eigenen Animationen von Maya, mit hilfe von Seiths Plugin, exportieren könnt.

Hier ein Video Tutorial (http://www.youtube.com/watch?v=hFS7oywfe6w&feature=youtu.be)

Und hier nochmal die wichtigsten Schritte (die kleinen Zahlen unter der Überschrift verraten die Reihenfolge) (http://www.mediafire.com/?ej7efe0fx4bx971)

ANMERKUNG: Für ein eigenes Ragdoll Model müsst ihr noch simple Objekte erstellen, die die Namen der Joints zu denen sie gehören + '_Phys' .ohne die'', am Ende haben. Und sie in eine eigene Hierarchie ohne joints, einfach nur objekte packen, die sinn macht. Weiteres Bildmaterial dazu wird im Laufe der nächsten woche dazu gepackt.

Ich hoffe wir (=Project Nublar) konnten euch Helfen,
MfG,
Broetchaen.

PS: Wir suchen noch immer Member ;)

Wedori
27.01.2012, 08:18
Hey, super Arbeit. Verlinke ich mal in den Kompendium-Thread. Theoretisch hättest Du auch gleich da rein posten können. ;)

EDIT: So, gerade mal geschaut. Jetzt habe ich das verstanden mit den verschiedenen Animationsclips.

Zwei Fragen:
1. Jeden Joint zu animieren ist ja fast Irrsinn, klappt der Export auch mit Curve-Manipulatoren? Ohne IK & Co. wäre das ja extrem.
http://www.abload.de/thumb/t1jukv4.jpg (http://www.abload.de/image.php?img=t1jukv4.jpg) http://www.abload.de/thumb/t2jejjh.jpg (http://www.abload.de/image.php?img=t2jejjh.jpg)

2. Das Rig ist wirklich extrem simpel, bei großen Zehen wie beim T-Rex würde ich (siehe Bilder) grundsätzlich die Knochen per Gelenk bauen. Funktioniert das nicht (zumindest die 3 Zehenstränge)? Gibt es eine Höchstgrenze an handelbaren Bones?

Broetchaen
27.01.2012, 15:57
Hey :)

Die Animationen schaltet man sozusagen hintereinander.
Beispiel:
Animation Keyframe
Fressen 1-80
Laufen 81-100

Zu deinen Fragen:
1)Zur Zeit haben wir es erst so probiert. Hallt alles mit Fk mit Hand selbst animieren.
Es MÜSSTE auch mit einem Slave-Master Skelett gehen. Also dazu erstellst du erstmal 2 mal das selbe Skelett. Eins lässt du im Mesh, das andere verschiebst du, damit du es später besser 'Bedienen' kannst. Wenn du das gemacht hast benennst du deine Joints.
Die Joints die im Mesh drin ist nennst du am besten:
'bip01_BEISPIEL'. Also als Prefix 'bip01'.
Die Joints die du später Bedienen willst. nennst du dann:
'BEISPIEL'.

Als verdeutlichung:
Ein Joint im Mesh 'bip01_shoulder_JNT'
Derselbe Joint im Bedienungsskelett 'shoulder_JNT'

Jetzt wählst du das ganze Skelett im Mesh aus und drückst auf Prepare Joints.
Das wiederholst du fürs Bedienungssekelett.
Wenn du das gemacht hast, wählst du den ersten Joint aus von dem Skelett, dass im Mesh ist, aus und klickst im Exporter auf Constrain Slave Skeleton. (Bei mir muss ich erst einwenig länger klicken, damit es funktioniert)
Dann erstellt das Script für dich ein Parent Constraint und du kannst bei deinem Bedienungsskelett Control Objects, IK und alles mögliche hinzufügen.
Danach kannste dein Skelett im Mesh mit dem Mesh binden und skinnen.

Für den Export: Packst du dein Skelett das im Mesh ist, in mit in die Group fürs Exportieren und dein Bedienskelett in eine voher erstellte Group und nennst diese Groupe: exclude_GRP

(nicht getestet)
2) Der Rig den ich im Tutorial gemacht hab war sehr simpel,damit ich es schnell zeigen konnte :D. Du kannst ,soweit ich weiß, unbegrenzt viele Joints verwenden. So kommt der Rig natürlich nicht ins Game, da bekommt jeder Zeh seine Joints.

Wedori
27.01.2012, 17:06
Hey :)

Die Animationen schaltet man sozusagen hintereinander.
Beispiel:
Animation Keyframe
Fressen 1-80
Laufen 81-100

Zu deinen Fragen:
1)Zur Zeit haben wir es erst so probiert. Hallt alles mit Fk mit Hand selbst animieren.
Es MÜSSTE auch mit einem Slave-Master Skelett gehen. Also dazu erstellst du erstmal 2 mal das selbe Skelett. Eins lässt du im Mesh, das andere verschiebst du, damit du es später besser 'Bedienen' kannst. Wenn du das gemacht hast benennst du deine Joints.
Die Joints die im Mesh drin ist nennst du am besten:
'bip01_BEISPIEL'. Also als Prefix 'bip01'.
Die Joints die du später Bedienen willst. nennst du dann:
'BEISPIEL'.

Als verdeutlichung:
Ein Joint im Mesh 'bip01_shoulder_JNT'
Derselbe Joint im Bedienungsskelett 'shoulder_JNT'

Jetzt wählst du das ganze Skelett im Mesh aus und drückst auf Prepare Joints.
Das wiederholst du fürs Bedienungssekelett.
Wenn du das gemacht hast, wählst du den ersten Joint aus von dem Skelett, dass im Mesh ist, aus und klickst im Exporter auf Constrain Slave Skeleton. (Bei mir muss ich erst einwenig länger klicken, damit es funktioniert)
Dann erstellt das Script für dich ein Parent Constraint und du kannst bei deinem Bedienungsskelett Control Objects, IK und alles mögliche hinzufügen.
Danach kannste dein Skelett im Mesh mit dem Mesh binden und skinnen.

Für den Export: Packst du dein Skelett das im Mesh ist, in mit in die Group fürs Exportieren und dein Bedienskelett in eine voher erstellte Group und nennst diese Groupe: exclude_GRP

(nicht getestet)
2) Der Rig den ich im Tutorial gemacht hab war sehr simpel,damit ich es schnell zeigen konnte :D. Du kannst ,soweit ich weiß, unbegrenzt viele Joints verwenden. So kommt der Rig natürlich nicht ins Game, da bekommt jeder Zeh seine Joints.


Ah, danke. Kannst Du mir mal bitte einen riesen Gefallen tun (Du hast den Test ja quasi bei der Hand)? Papp mal bitte eine IK zwischen Hüfte und Knöchel (also das Knie dann dazwischen der Winkel) und mache mal eine simple Curve (Kreis) als Manipulator dran (einfach Point (P)). Wenn Du jetzt mal Bein vor und zurück Keyst und das exportierst, ob das klappt oder ob man dann wirklich ein Control-Skelett braucht.
Ohne Manipulatoren wär das allein beim Zehen abrollen Wahnsinn ;)

Broetchaen
27.01.2012, 18:18
Bei mir gings net hab das auch mal getestet... Versuchs doch mal selbst mit nen einfachen Zylinder oder sowas also bei mir waren da Dann die normals umgedreht und das mesh stand aufm Kopf. Testes mal selbst oder wart bis Sonntag ich fahr jetzt grad zu meiner liebsten :)


Ps Seith empfiehlt auch die slave Methode
Broetchaen

Wedori
27.01.2012, 20:11
OK., alles klar. Ich versuchs mal.

Broetchaen
28.01.2012, 16:42
ich versuchs zuhause nochmal... wäre cool wenn mans ohne slave machen könnte. versuch mal die ik sachen und manipulators und control objects in die exclude grp zu packen....

Wedori
28.01.2012, 20:28
Wäre super DENN ich bin noch immer dran. Da ich noch immer keinen Theropoden zum animieren bekommen habe *schräg rüber schiel* habe ich mir heute mal ganz schnell selber einen von Scratch gezimmert. Eher eine Basis für Mudbox oder ZBrush. Morgen abend setze ich mal Dein Videotutorial nach. Ich kann nicht nur Zylinder nehmen da ich mir die Einflüsse der 4 Influences erstmal ansehen möchte (gerade in den Zehen fürs abrollen).
Der Dino wird danach gelöscht es sei denn jemand braucht einen Rohling für ZBrush.

Achso, parallel arbeite ich an einer paläontologisch korrekten Beinbewegung eines T.rex beim Rennen. Wenn die fertig ist, gibts Video. Der Fuß hat final 6 Manipulatoren mit 3 Querverbindungen. Das ist nur das Stück Bones des linken Fußes. evtl. interessant für Leute die nicht wissen man man bestimmte Bewegungen erzeugt (Zehen aufrollen zum Beispiel). Kann von mir aus bei Anfrage auch raus gegeben werden.

Broetchaen
29.01.2012, 21:03
Ok ich habs jetzt bei mir getestet. Sofort die IK dem Rig hinzufügen geht net. Man muss es anscheinend mit der Master/Slave Methode machen. Jedoch funktioniert die bei mir auch noch nicht richtig, muss da noch weiter rumtesten :)

Wedori
29.01.2012, 22:11
Danke für den Test.

Leider gibt es da jetzt ein nicht nachzuvollziehendes Problem bei mir, wo ich noch einmal kurz Deine Hilfe bräuchte bitte. Der schnell zusammen geworfene TRex hat um die 12.000 Polys. Habe ihn mit Quads gebaut, simpel ohne großartige Vorlagen. Bis auf die speziell zu beachtenden Dinge bezüglich des CryShaders alles kein Problem, lief wie gehabt. Habe alles dann so gemacht wie Du im Video gezeigt hast ABER:

Ich öffne den Charactereditor in der SB. Die Vorschau des Dino erscheint korrekt, dann klicke ich auf OPEN und der SB2 schmiert jedes mal ab. Habe dann den Dino mal gemessen. Gut, der ist mit 28m Länge sicher jetzt nicht richtig skaliert aber die Vorschau kommt ja korrekt. Woran könnte das liegen?
Kann die Files auch gerne alle mal rüber senden wenn Du mir per PM eine EMailadresse nennst.

Edit: Seh gerade das meine Group umbenannt wird: "CryExportNode_Trex_CHRCAF_Trex_DoExport_NoMerge"

Broetchaen
29.01.2012, 23:08
Das mit dem umbenennen ist ganz normal. hm größe ist beim sb2 soweit ich weiß nicht relevant. 12k polys müssten jetzt auch net das problem sein, außer du hast nen schlechten pc. ich hab ehrlich gesagt keine ahnung woran das liegen könnte... musst nochmal versuchen es zu exportieren. hab sowas auch öfters gehabt :P

Wedori
30.01.2012, 08:27
Hm, das ist merkwürdig. Kann ich Dir die Files zum ansehen mal senden?
Evtl. siehst Du auf den ersten Blick ja etwas oder bei Dir klappt der Import in der SB. Dann könnte ich das zumindest eingrenzen.

Am PC liegt es übrigens nicht ;)

EDIT: Habe gestern einige Teilschritte bestimmt 20x gemacht und unzählige Male exportiert, konntest Du diese Probleme mit einem speziellen "Workaround" umgehen?

Wedori
30.01.2012, 15:52
Doppelpost, sorry. Kurze Frage: Im Video bei Minute 23:30, richtest gerade den Animationsclip ein. Danach fährt die Maus (die man leider nicht sieht) nach unten über die Buttons (man sieht immer mal ein kleines Aufblitzen). Klickst Du da noch irgend etwas? Das ist mir nicht ganz klar.

Auch als Du den Animationsclip erstellt hast, da klickst Du nochmal in den Namen (Test), danach in das Kästchen mit Frame 1 und danach Frame 24. Du scheinst danach jedes mal den rechtenButton daneben zu klicken. Hat das eine Bewandnis?

Habe heute den ganzen Tag damit verbracht wieder und wieder mit einem blanken Mesh und allen Teilschritten (diesmal auch richtige Skalierung) einen erfolgreichen Export hinzubekommen. Habe extra alle Initialschritte ausgedruckt. Immer wieder kommt in der SB2 zwar die Vorschau im kleinen Fenster aber danach Crash to Desktop "SB funktioniert icht mehr richtig". GNNAAAA

Hast Du auch 64bit (nur eine Frage am Rande)?

Wenn ich es bei mir reproduzierbar erfolgreich hin bekomme, kann ich mit animieren.

ODemuth
30.01.2012, 19:02
Ich hab mal ne Frage zu den Animationen, mann kann ja in Maya Muskeln einziehen, wenn ich das richtig im Kopf habe oder?
Also so kann man auch z.B. beim Zubeissen auch die Kiefermuskeln dicker/angespannt machen, was sich dann in der Animation auswirkt oder? Also Flächen werden gestreckt usw.
Ist das auch in die CE2 exportier bar?

Broetchaen
31.01.2012, 19:48
das wird wohl kaum möglich sein, wenn du so einen effekt trd haben willst musste das mit bones machen, die dann halt zu den richtigen sachen geskinned werden.... da müssteste viel mit der set driven key methode arbeiten und es würd einfach nur sehr viel arbeit machen.
bleiben wir realistisch, das is nur ein game, muskeln werden höhstens in filmen eingesetzt.

Wedori
31.01.2012, 20:07
Muskeln und die "Driven Key Methode" sind alles Mesh Deformer. Wird doch eigentlich von der Cryengine nicht unterstützt!? Die Idee an sich ist gar nicht so verkehrt, Eine Curve an einen Joint pointen und raus ziehen. Man würde am Ende aber nur den selben Effekt erhalten (nur eben nicht so weich wie Muskeln).

@ODemuth: Hast Du mal in Erwägung gezogen Dich mit Maya zu beschäftigen? Probiers mal aus, ist am Ende gar nicht so schwer.

EDIT:

Export erfolgreich! Fehler gefunden :)
Ich hatte den Centerjoint (-90,0,90) nicht korrekt unbind geflooted :/

ABER: Warum klaffen denn so viele Löcher im Mesh? Muss tatsächlich alles aus Quads bestehen? Gut, mal unabhängig davon das der Trex schnell zusammen geworfen ist, setze ich grundsätzlich zur Optimierung Dreiecke ein.
Man sieht es am Ende auch an der 90.000 Poly Kanone das es theoretisch nicht daran liegen kann. Eine Idee dazu?
Am Knie sind def. Quads. Schau mal bitte und gib mir Feedback worauf ich achten soll.
Edit: Wenn ich das Modell statisch lade, erscheint der Fehler in der Map etwas anders! Diese "richtigen" Löcher sieht man nur im Charactereditor.

Bilder:
http://www.abload.de/thumb/unbenannt-16djs4.jpg (http://www.abload.de/image.php?img=unbenannt-16djs4.jpg) http://www.abload.de/thumb/unbenannt-29akkt.jpg (http://www.abload.de/image.php?img=unbenannt-29akkt.jpg) http://www.abload.de/thumb/unbenannt-3slc1b.jpg (http://www.abload.de/image.php?img=unbenannt-3slc1b.jpg)


EDIT 2:

Ich bekomme zwar die Animationen jetzt im Charaktereditor korrekt angezeigt ABER wie platziere ich meinen Dino auf einer Map? Das müsste irgendwie noch in ein Tutorial gemacht werden.

ODemuth
31.01.2012, 23:13
Du nimmst unter enity-> physics das Animobject und platzierst es auf der Map, dannach suchst du dein Model, dort wo du es abgespeichert hast, und gibst ihm die Animation die du erstellt hast. Entweder den richtigen Namen eingeben, oder den Animationsname im Charactereditor kopieren und bei Animation einfügen. Dann noch ein Häkchen bei Play und wenn du willst bei Loop. Ingame gehen und anschauen :)

Broetchaen
31.01.2012, 23:48
xD der edgeflow von dem mesh ist ech schrecklich. ich bin mir net sicher das es nur aus quads bestehen muss aber es ist am ende einfach ne schönere topology. ist auch ungefähr das erste was ich gelernt hab was edgeflow und die ganzen sachen angeht und du hast mit quads halt immer schönere deformations. an deiner stelle hätte ich dem trex mehr edges um die knie gelenke gegeben...

Dein Fehler mit den Löchern könnte nen Normal-Fehler sein. Selektier die Flächen mal und Reverse die Normals, falls das das Problem net behebt. kann aber auch sein das es wirklich durch die schlechte topology ausgelöst wird.


Das mit der driven key methode müsste man dann auf dem Master-Skelett machen. Und das würde dann auf das Slave Skelett übertragen werden.

ODemuth
01.02.2012, 00:59
@Wedori
Hmm ja vlt. schau ich mir Maya mal an. Mit 3D-Modellieren habe ich schon so meine Erfahrungen. Ich denke ich gehöre hier neben Jaco, Dj Copniker und noch einigen wenigen anderen zu den Besten in SketchUp. Damit kann ich so ziemlich alles machen, auch wenns nicht umbedingt Sinn macht, z.B. Waffen.

Die Oberfläche gefällt mir auch deutlich besser als die von Max oder XSI, womit ich garnichts anfangen kann...

Gibts für Maya auch ne Student Version? Und was kostet das ganze in etwa?

ich1989
01.02.2012, 03:32
Hey für Maya gibt es auch ne Studenten Version ist ja auch von Autodesk ;-)

Wedori
01.02.2012, 08:33
xD der edgeflow von dem mesh ist ech schrecklich. ich bin mir net sicher das es nur aus quads bestehen muss aber es ist am ende einfach ne schönere topology. ist auch ungefähr das erste was ich gelernt hab was edgeflow und die ganzen sachen angeht und du hast mit quads halt immer schönere deformations. an deiner stelle hätte ich dem trex mehr edges um die knie gelenke gegeben...

Dein Fehler mit den Löchern könnte nen Normal-Fehler sein. Selektier die Flächen mal und Reverse die Normals, falls das das Problem net behebt. kann aber auch sein das es wirklich durch die schlechte topology ausgelöst wird.



XD Mensch Du weißt doch selbst das man das Lowpoly nur nach Imageplane zusammen schmeißt und dann smootht und schaut wie es da aussieht. Kleine "Müllecken" sieht dann keiner mehr, weil sie glatt sind ;)

Normalfehler sind es auf keinen Fall gewesen, habe ich auch als erstes vermutet. Die Ecken waren leider ein Extrudefehler (wie gesagt, sollte ja schnell gehen). Normalerweise habe ich in Maya einen Workaround dafür, nur das die Cryengine das so extrem gezeigt hat, war nach anderen Highpolyversuchen nur unlogisch.

So, da jetzt so gut wie alles geklärt ist :
Also jetzt noch einmal ganz offiziell die Frage: Ihr sucht Leute, wenn ich Euch jetzt helfen soll zu animieren, dann sendet mir bitte einen Theropoden zu und nennt mir meine nächste Kontaktperson. Die einzelnen Bauversionen (fertige Teilanimationen) schicke ich zum testen dann nach Fertigstellung jeweils da hin.


EDIT:
Sehr interessante Seite:
http://skeletaldrawing.com/index.htm

Broetchaen
01.02.2012, 18:56
kenn die seite scho länger, echt praktisch. david krentz is einfach genial... ich schick dir nachher maln dino ;)

Wedori
01.02.2012, 21:31
Die Master / Slave Variante funktioniert super. Habs an meinem Test - Trex mal getestet. Man muß nur das bip01 aus dem Master löschen und dann Master joint an bip01_Slave Joint per Parent Contraint binden. Dann habe ich meine Manipulatoren an verschiedene IK gehangen und mal herum probiert. Funktioniert gut.