Nicht eingeloggt
Registrieren

Maya ActorX - Skelletal Animationen

In diesem Tutorial möchte ich den neuen UT-Exporter vorstellen, der meiner Meinung nach eine große Erleichterung im Bezug auf´s Exportieren animierter Modelle bietet.

 



Wer sonst mit 3ds2unr gearbeitet hat, hatte bei animierten Modellen mit einem großen Arbeitsaufwand zu kämpfen, außerdem musste man bei 3ds2unr die Scripte selber um die #exec-Befehle ergänzen. Wenn man also im Scripten nicht ganz firm war, hatte man hier gleich wieder Probleme (Herausforderungen).

In diesem Tutorial setze ich voraus, daß Ihr schon mal einfache Objekte mit Hilfe von 3ds2unr in UT importiert habt. Ich erwähne zwar die einzelnen Schritte, aber nicht in der Tiefe und Ausführlichkeit, wie man es sich als Neuling erwünscht. Dafür möchte ich Euch auf den reichhaltigen Tutorialfundus von www.unrealed.de verweisen. Von der Seite habe ich ca 70% meines Wissens.

Bei ActorX wird einem diese Scriptarbeit abgenommen. Auch der umständliche Vorgang mit der Snapshot-Funktion in Max ist nicht mehr von Nöten, da der Exporter auch hier ein cooles Tool bereit stellt. Ich stelle in diesem Tutorial zwar die Arbeitsweise mit Maya vor, das wohl nicht jeder hat/benutzt, aber da es hier hauptsächlich um den Exporter geht und der für beide Programme weitestgehend gleich ist, dürfte es Euch kaum Probleme bereiten, die Arbeitsweise auf Max zu übersetzen.

Für dieses Tutorial habe ich mir kurzerhand ein einfaches Design für einen Transportgleiter ausgedacht. Weil es hier hauptsächlich um den Exporter geht, schneide ich das modeln nur kurz an.

Meine letzten uDecors habe ich alle in Max gemacht, bin jetzt aber auf Maya umgestiegen, weil das Programm das Skelett-Handling, skinning und die inverse Kinematic besser handelt. (meine persönliche Meinung)

An dieser Stelle sollte ich noch schnell auf ein paar wichtige Punkte eingehen, die beim Arbeiten mit dem ActorX wichtig sind.

Der Knochenzwang scheint etwas umständlich zu sein, wenn man nur eine einfache Box als „Decoration“ exportieren möchte. In diesem Fall würde ich immer noch auf den guten alten 3ds2unr zurückgreifen. Möchte man die Box aber trotzdem mit dem ActorX exportieren, muß nur ein Knochen eingebaut werden, die Box auf den Knochen geskninnt und eine Animation mit einem Frame (still stehend) erstellt werden und die Sache ist gegessen!

So, nun ist es Zeit wirklich zu beginnen. Ich werde einen kleinen Carrier basteln, der verschiedene Bewegungen ausführen kann. Ich starte immer gerne mit einer einfachen Box.


Die beiden Seiten selektieren und auf „extrude faces“ gehen.


Mit dem Scalemanipulator die Flächen etwas verjüngen. Extrudet und scalet solange, bis Ihr etwa diese Form habt.


Wenn Ihr wollt, könnt Ihr vorne eine Kanzel und eine Heckeflosse bauen.



Soweit ist die Arbeit an dem Grundmodell abgeschlossen. Da die Stärke des Exporters in der Skelett Animation liegt, werden wir nun ein paar Greifer einbauen, die wir später animieren.


Ich habe das Design (wenn man das überhaupt so nennen kann) sehr schlicht gehalten. Der Greifer besteht aus zwei einzelnen Polygonobjekten, die dann den jeweiligen Joints zugewiesen werden. Mit dem Release des neun UnrealII und der neuen Grafikengine können demnächst auch solche Gegenstände wesentlich mehr Details vertragen. Bis es soweit ist wird es noch ca. ein Jahr dauern.

Die genaue Zuweisung der Greiferabschnitte könnt Ihr dem Bild unten entnehmen.


Wie ich eingangs erwähnt habe, muß das Skelett aus einem „Guß“ bestehen und die Geometrie an die Knochen gelinkt werden. Deshalb habe ich den gesamten Grundkörper dem mittleren Knochen zugeordnet und von dort geht der Arm ab, der die beiden Greiferobjekte zugewiesen bekommt.


Nun nur noch die Prozedur für die anderen 3 Greiferarme wiederholen und dann sieht das ganze ungefähr so aus.


Beim Texturieren mit Maya ist es wichtig (bei Objekten mit mehr als einer Textur), daß man den Materialshadern den Namen skinxx gibt. (Bei 00 beginnend) Ob Ihr „blinn“ oder „phong“ benutzt ist nach meiner Erfahrung egal, weil eh die ganzen Werte wie „eccentricity“, „ambient Color“ oder „Transparency“ beim Export außer acht gelassen werden.

Mit dem Modellieren sind wir soweit fertig und können uns nun der Animation widmen.
Für dieses Beispiel machen wir 3 Animations-Sequenzen


Ihr könnt ganz normal mit der KeyFrame-Technik oder auch mit Pfaden die Bewegungen erstellen. (Pfade habe ich noch nicht ausprobiert soll aber funktionieren). In Max gibt es den TrackEditor (Maya: GraphEditor) mit dem Ihr auf die Animationskurven Einfluß nehmen könnt. Somit könnt Ihr die Geschwindigkeit der Bewegungen manipulieren. Sorgt immer dafür, daß die Bewegung nicht mit einer konstanten Geschwindigkeit abläuft, also ruckartig anfängt oder abrupt aufhört, sondern eine Beschleunigung und Abbremsung aufweist. Solche Bewegungen „überzeugen“ einfach mehr. Diese Einstellungen werden auch exportiert !!

Für die 3 Sequenzen setzen wir insgesamt 70 Frames an. Ich habe das mit der KeyFrame-Technik gemacht. Frame 1 ist die Grundstellung „Still“

Die Sequenz „Closing“ geht von Frame 1 bis 35.

Die Sequenz „Opening“ geht dann von 35 bis 70.



Damit sich nicht alle Greifer zu synchron bewegen, habe ich noch für einige Arme Zwischenkeys eingebaut. Somit schließt ein Arm etwas schneller, der andere fängt später an usw. Diese Kleinigkeiten machen Euer Modell einfach besser, weil es für den Betrachter mehr zu entdecken gibt.

Ok, jetzt kommt endlich der Exporter ins Spiel.

Bei Maya müsst ihr Scriptfenster einfach nur „axmain“ eingeben und Ihr bekommt ein Interface zu Gesicht. Das handling ist recht einfach. Im Grunde nur alles von oben nach unten abarbeiten.


Zuerst, wie von 3ds2unr gewohnt, zum Directory browsen, in dem der Exporter alles ausgeben soll. Als nächstes gebt bei „Mesh/Filename“ den Namen Eures Modells ein (carrier) und dann auf den zugehörigen Button klicken. Wenn alles klappt, bekommt Ihr eine Meldung, dass es geklappt hat. (yeah!)

An dieser Stelle wurde ein Referenz-File exportiert. Hier wird das Bone-Gerüst, Skinning und die Geometrie abgelegt. Wo die Obergrenze für Knochen liegt weiß ich nicht. Ich habe mal etwas von einem Model von über 85 Knochen gehört. Gleichzeitg zum PSK-File wurde auch eine Model-Info-Log-Datei abgespeichert, die noch einmal leserlich wiedergibt wieviel Knochen, Faces, Vertices usw. es gibt. Auch wenn wir nicht soviel damit anfangen können ...

NICHT LÖSCHEN!!

Nachdem Ihr das ReferenzFile erstellt habt, geht es jetzt daran die Animationen zu exportieren. Das geht ganz einfach. (Ich sach ja der Exporter is cool)

Bei „animation file name“ gebt Ihr einfach wieder den Namen des Grundmodells ein (carrier),

dann gebt Ihr bei „animation sequence name“ den Namen der Animation und bei „animation range“ die Anzahl der Bilder ein. Drückt jeweils den Button „Digest animation“ In unserem Fall:

Sequence 1 Sequence 2 Sequence 3
Name: still Name:closeing Name: opening
Range 1 Range: 1 – 35 Range: 35 – 70
Button „Digest animation“ Button „Digest animation“ Button „Digest animation“

Ihr seht auch schon nach dem Drücken des Buttons, daß die jeweilige Bewegung ausgeführt wird. Ok, danach geht es mit dem Button „Animation manager“ in ein weiteres Menue. Das einzige, das Ihr hier machen müsst ist, alle Animationen, die Ihr frisch erstellt habt, zu markieren und rüberkopieren und auf den Savebutton klicken.

Yo das war´s .................... fast.

Danach das Interface schließen und im Scriptfeld „axoptions“ eingeben. Hier müsst Ihr unten bei „Class“ die Klasse eingeben, die das Modell sein soll (carrier) Und bei „base“ gebt ihr an, in welcher Basisklasse es eingefügt werden soll. (decoration)

Und saven!!!

An dieser Stelle erstellt der Exporter schon das Grundscript, und damit er das auch fehlerfrei machen kann, braucht er die Log-Dateien!!!
Jetzt habt Ihr insgesamt 5 Files (*.PSA, *.PSK, 2 LOG, *.uc) Von nun an geht’s weiter wie man es schon von 3ds2unr gewohnt ist.
Die beiden Files (PSA, PSK) kommen ins Model Directory, das uc-File ins Classes und die Texturen ins Texture Directory.

Bitte kontrolliert im uc-File die Zeilen:


EXEC TEXTURE IMPORT NAME=carrierTex0 FILE=TEXTURES\metal2.pcx GROUP=Skins


Bei Maya muß ich immer die Texturnamen nachträglich per Hand eingeben. Vielleicht macht er es bei Max automatisch (weiß ich nicht schäm)
Diese Directorystruktur wie gehabt ins Hauptverzeichnis von UT kopieren, den Eintrag in der Unrealtournament.ini unter editpackages nicht vergessen (EDITPACKAGES carrier).

Den Befehl „ucc make“ starten und schon ist Dein animiertes Model in UT. Von nun an kommt es aufs scripten an.
Ok, ich hoffe es ist jetzt alles klar und es wird in Zukunft einige animierte Decos oder was auch immer geben.

ENDE