Nicht eingeloggt
Registrieren

Wie erstelle ich ein Matinee mit animierten Pawns?

Tutorial: Wie erstelle ich ein Matinee mit animierten Pawns?
Erstellt von: Maximilian Janik "Termy"





Einleitung

Sieht man sich das UT-2003 oder das UT-2004 Intro an, überlegt man sich, wie die das von Epic wohl hinbekommen haben. Eigendlich ist es ganz einfach! Sie benutzen vorgefertigte Animationen und weisen sie dann zum richtigen Zeitpunkt, dann nämlich wenn die Kamera zuschaut, einem Pawn zu. Um nun also selbst ein solches Video machen zu können, benötigt man Animationen, die man entweder selbst erstellt, oder einfach aus den vorhandenen bezieht. Man benötigt das Wissen, wie man Pawns einsetzt und wie man sie dann letztendlich "Zum Leben erweckt", wie man Filmsequenzen mithilfe des Matineetools erstellt und natürlich das Standartwissen, um eine gute Umgebung zu schaffen in der die Pawns ihre Rolle spielen! Das alles werde ich in diesem Tutorial erklähren!

Danke an alle anderen Tutorialschreiber, die es mir ermöglicht haben so weit zu kommen!

Wir werden jetzt versuchen die erste Szene des UT-2004 Intros nachzubauen!!!



Und am Anfang erschuf Gott die - Map??

Wie oben schon erwähnt, benötigt man eine anständige Umgebung für den Pawn. Diese mühe habe ich mir in diesem Tutorial nicht gemacht, denn alles was dekoriert, lenkt vom eigentlichen Thema ab! Das ist also unsere Map:



Nicht besonders aufwändig, aber effektiv! 256x2256x2256! 4 Wände und vier Lampen! Eine ganz normale ZoneInfo mit 25 AmbientBrightness. Ein stinknormaler Playerstart!

Im Grunde könnte man diese Map jetzt spielen, da dass aber nicht das Ziel ist werden wir den Spaß für später aufheben!



Als nächstes erschuf Gott den - Pawn??

Als nächstes wollen wir uns dem widmen, was später die Animationen ausführen soll und im Rampenlicht stehen wird: Der Pawn!! Um ihn in die Map einzufügen gehen wir in den ActorClassBrowser (ab jetzt schlicht ACB genannt):



Diesen Pawn adden wir jetzt zwei Mal in unsere Map. Danach sollte es so aussehen:



In unserem Beispiel müssen sich die Pawns ansehen, denn der Skaarj wird ja nacher auf den armen Romulus einstechen!



Als weiteres erschuf Gott das - UnrealScriptedSequence??

So! Nun brauchen wir einen Verantwortlichen, auf den wir später die Schuld schieben können! Und dieser Verantwortliche heißt "UnrealSriptedSequence". Dieser wird dem Pawn zur richtigen Zeit die richtige Animation zuweisen! Wir finden das UnrealScriptedSequence im ACB:



Dieses UnrealSriptedSequence (USS) fügen wir nun zweimal in unsere Map ein. Denn jeder Pawn will eins haben! Spaß beiseite! Würden wir nur eins einfügen, könnten wir nur ein Pawn kontrollieren! Also benötigen wir zwei. Jeder USS kontrolliert einen Pawn! Es sollte dann so aussehen:



Damit aber der Pawn weiß welchem der beiden USS er denn nun gehorchen soll, wird das jetzt festgelegt:



In den USS Einstellungen wird unter Events -> Tag ein Name festgelegt! Dieser kann beliebig gewählt sein, sollte aber keine unnötigen Sonderzeichen enthalten. Ich habe hier den ersten USS "AI_UED_1" und den zweiten "AI_UED_2" genannt. Jetzt zu den Bildern: Das linke Bild zeigt die Einstellungen des ersten USS, das rechte zeigt die Einstellungen des ersten Pawns. Ich denke die Bilder erklähren es von selbst! Der Pawn bekommt sozusagen den Namen seines USS gesagt. Der Name des USS (unter Events -> Tag festgelegt) wird beim Pawn (unter AI -> AIScriptTag) eingetragen. Somit ergeben sie Mann und Frau!

Dasselbe machen wir mit dem 2. USS und dem 2. Pawn!

Tipp: Das USS und der Pawn, die ein Pärchen bilden, bitte auch immer wie ein Pärchen behandeln, dass heißt, dass sie immer beieinander stehen sollten.

Es sollte es nun so aussehen:



Die blaue Linie zeigt, dass Pawn und USS verlinkt sind.

Achtung: Die blaue Linie wird nicht Angezeigt, wenn du das USS markierst. Nur wenn du den Pawn markierst wird sie angezeigt!

So! Damit haben wir die Grundvorraussetzungen erfüllt! Nun müssen wir aber noch ein paar Einstellungen bei den Pawns ändern:



bNoDefaultInventory muss auf True gesetzt und "XWeapons.AssaultRifle" und "XWeapons.ShieldGun" gelöscht werden! Wenn wir dass nicht machen würden, würde unser Pawn mit einer Assault und einer ShieldGun rumlaufen. Im bald erscheinenden Teil 2 werden wir diese Einstellungen intensiver benötigen!



Und da erschuf Gott den - Skaarj??

Da wir die erste Szene des UT-2004 Intros nachbauen wollen, benötigen wir natürlich auch die richtigen Charaktere! Aber wie mache ich aus dem Jakob einen Skaarj? Zuerst öffnen wir den AnimationBrowser und öffnen das Paket mit dem Namen "Skaarj_intro.ukx"! Wenn man die Datei "SkaarjAnims.ukx" öffnen würde, hätte man zwar den Skaarj, aber nicht die richtige Animation! Im "SkaarjAnims.ukx" sind die ganz normalen Animationen wie Crouchen, Feuern, Spott-Animationen usw. enthalten. Andere Player findet man in "DemoFemaleA.ukx", "DemoMaleA.ukx", "HumanFemaleA.ukx", "HumanMaleA.ukx", "Jugg.ukx" und "XanRobots.ukx". Will man die Animationen vom UT-2003 Intro haben, sind das alle Pakete mit "intro_..." vorne!!! Aber das nur nebenbei! Nun wieder zurück zu "Skaarj_intro.ukx" Hier ein Bild dazu:



Danach sollte es so aussehen:



Man kann sich die Animation sogar schon mit klicken auf den Play-Button zeigen lassen. Will man, dass die Animation in einer Schleife gezeigt wird, klickt man auf den Wiederholungsbutton.

Wenn wir es bis dahin geschafft haben können wir den Animationsbrowser schon wieder schließen! Es ging hier nur darum das richtige Package zu öffnen um den Mesh zu merken! Denn wir können diesen nun in den Einstellungen des ersten Pawns diesen Mesh übernehmen! Das macht man so:



Wir klicken bei Mesh auf benutzen um den Mesh zu übernehmen! Leider hat unser Skaarj immernoch die Texturen von Jakob! Ehrlich zugegeben: Das sieht Schei*e aus! Das können wir ganz einfach ändern:



Wir klicken bei Skins einfach auf Leer und schon sind alle unerwünschten Texturen weg! Juhu!!

Wenn alles richtig gemacht wurde, macht der Skaarj schon ne recht nette Figur:



Jetzt sind wir aber noch voll im Tatendrang und wollen auch noch den Romulus. Dieser heißt im Animationsbrowser aber gar nicht Romulus sondern wie viele andere männlichen Charaktere dort auch "Merc"! Das macht aber nichts, denn es gibt wieder jemanden der euch sagt was ihr zu öffnen habt! MICH!

Und hier die Auflösung:



Jetzt machen wir genau das selbe wie mit dem Skaarj, nur mit Romulus. Wir schließen den AnimationsBrowser, öffnen die Einstellungen des 2. Pawns, übernehmen den Mesh und leeren die Skins! Es sollte dann wie auf diesem Bild aussehen:



Huch: Jetzt sind die Pawns ja viel größer! Die Lösung liegt auf der Hand! Die Unrealmacher haben die Meshes größer gemacht, weil sie dann genauere Texturen machen konnten und weil die Kamerafürhung dann nicht mehr so schwer war.

Puh! Das war viel Arbeit!



Und als nächste erschuf Gott das - Matinee??

Würden wir jetzt das Level starten würden wir durch ein Level laufen, mit einem riesigen Skaarj und einem riesigen Romulus durch die man hindurchgehen kann. Irgendwie nicht ganz das was wir wollten! Das wird sich jetzt ändern! Zuerst wollte ich ja jetzt mit den USS's weitermachen, aber zur Abwechslung und weil man zuerst die Ursache und dann das Ergebnis sehen sollte habe ich mich entschieden zuerst das Matinee zu erklären

Das Matineetool:



Wie auf dem Bild zu sehen, durch einen Klick auf die MOV-Klappe zu öffnen! Um einen neuen Film zu starten klicken wir auf "New" (der Button auf den der Pfeil zeigt!) Es sollte dann so aussehen:



Da wir den Namen "SceneManager" nicht schön finden, ändern wir ihn einfach in "UED_TestScene" um! Da das aber sonst später wieder geändert werden müsste ändern wir ihn jetzt zu "StartGame" um, weil sonst die Filmsequenz beim starten der Map nicht abgespielt wird:



(Dieses Bild hab ich etwas später gemacht, desshalb stehen da jetzt schon 22.0 Seconds! Keine Angst!!)

In der Map erscheint nun ein Bild mit einer Klappe und der Aufschrift "SCENE":



Wenn wir nun im Matineefenster den Reiter "Tools" anwählen, dann haben wir drei Buttons zur Auswahl! Zwei benötigen wir:



Der InterpolationPoint (IP) ist im Grunde nichts anderes als ein Ansprungspunkt (Danke für das Wort an denjenigen, der das Tutorial über Matinees geschrieben hat) der Kamera. Durch mehrere dieser Ansprungspunkte können wir einen Weg erzeugen. Der "LookTarget" (LT) ist ein Punkt wo die Kamera während sie sich bewegt hinschauen soll!

Die Kamera soll sich also bewegen! Aber wie soll ich sie denn bewegen lassen? Ich bin ja kein Kameramann!

Eigentlich ist es egal wie sie sich bewegt. Sie sollte sich aber den Hauptakteuren widmen und nicht irgendwo in der Landschaft umherschwirren. Hier in unserem Beispiel bewegt sie sich ganz simpel aber effenktiv: Von einem Punkt zum anderen, in einer geraden Linie.

Um das umzusetzen fügen wir zwei InterpolatonPoints ein indem wir über den Reiter "Tools" auf den "Add Interpolation Point"-Button drücken. Die Kamera wird dann in die aktuelle Sicht eingefügt! Das heißt, dass die Kamera genau dahin schaut wie du gerade deine Sicht hast (im 3D fenster) Aber letztendlich ist es egal wohin sie inmoment schaut, denn sie bekommt ja gleich mit einem LookTarget zugewiesen wo sie hinschauen soll!



Nun bauen wir den eben besprochenen LookTarget ein:



So! Jetzt legen wir den Pfad fest, wie die Kamera laufen wird. Datu markieren wir im Matineefenster die Szene "StartGame" und klicken auf den Reiter "Actions":



Zusätzlich markieren wir den ersten IP. Jetzt klicken wir auf den "New"-Button (durch den kleinen roten Kasten oben markiert) und im Untermenü auf "ActionMoveCamera". "Bei MatAction -> IntPoint" klicken wir auf "Benutzen". Dadurch wurde der erste IP als Startpunkt gesetzt. Danach markieren wir den zweiten IP und klicken erneut auf "ActionMoveCamera":



Wir gehen wieder unter "MatAction -> IntPoint" und drücken auf "Benutzen" Diesmal schauen wir aber auch noch bei "Time" vorbei und geben dort bei "Duration" 22 ein. Damit dauert die Bewegung vom ersten IP zum zweiten IP genau 22 Sekunden. Warum 22 Sekunden?

Weil der Tutorialschreiber weiß, dass die Tötung Romulus genau 22 Sekunden dauert!

Leider schaut die Kamera noch nicht zu den beiden, die sich so gern haben. Das wird sich jetzt ändern! Wir markieren den ActionMove der 22 Sekunden dauert und wechseln in den Reiter "Sub Actions"



Was soll ich dazu noch sagen, das Bild sagt alles: Auf den "New" Button und im Untermenü auf "SubActionOrientation"



Wenn wir die SubAction erstellt haben, markieren wir den LookTarget, wechseln unter "Orientation -> CamOrientation -> CamOrientation" auf "CAMORIENT_LookAtActor" und bei "LookAt" klicken wir auf "Benutzen"

Wenn wir wollen können wir uns das jetzt schon anschauen: Die Matineevorschau machts möglich! Leider sind die Animationen noch nicht da!



Da die Animationen nicht von selbst ausgelöst werden, müssen sie über die Filmsequenz ausgelöst werden. Das lässt sich mit einem integrierten Triggertool lösen:



Wir fügen den "SubActionTrigger" einfach unter der Orientation ein. Hier die notwendigen Einstellungen:



Endlich können wir das Matineetool schließen!



Zuletzt erschuf Gott die - Ordnung??

Im letzten Abschnitt dieses Tutorials wenden wir uns nun endlich den USS's

Beginnen wir mit dem USS des Skaarj:



Zuerst leeren wir die ganzen voreingetragenen Actions nach dem Motto: Weg mit dem Mist! Denn wir werden gleich neue eintragen. Aber zunächst mussen wir die Art des USS festlegen. Das passiert unter "AIScript -> ControllerClass" Hier müssen wir ScriptedControler auswählen. Wenn wir das nicht tun, gehorchen die Pawns dem USS nicht, verwandeln sich wieder in kleine unbedeutende Jakobs zurück und verhalten sich wie Bots: Dumm und nichtswissend. Hätten wir ihnen vorher nicht die Waffen entfernt würden sie sich dann sogar noch beschießen! Also bitte umändern:



Nun Kommen wir von unserem "Action-Kill-Trip" herunter und fügen zwei von ihnen hinzu. Mit 2maligem drücken auf hinzufügen:



Man kann nun auch hier die Art des Befehls auswählen. In diesem Fall brauchen wir zuerst ein "WaitForEvent" und dann ein "PLAYANIM". Das "WaitForEvent" wartet ab dem Start des Levels auf einen Event (Einen getriggerten Event). Das "PLAYANIM" spielt eine Animation ab. Damit ist klar was das bedeutet! Das USS wartet auf den Startschuss und spielt dann, wenn dieser gerade aus der Pistole kommt die gewünschte Animation ab. Und da wir vorhin im Matineefenster - ich kann das Wort nicht mehr hören - ein "SubActionTrigger" erstellt haben, der gleich am Anfang ausgelöst wird, weil wir keine andere Zeit eingegeben haben, hört das USS den Startschuss gleich beim Start und animiert seinen Pawn sofort.

Damit das auch funktioniert müssen wir nur den namen des "SubActionTriggers" im USS eingeben:





Jetzt brauchen wir nur noch den Befehl zum abspielen der Animation:

Den Animationsnamen beziehen wir aus dem Animationsbrowser



Dasselbe machen wir beim anderen USS nur mit dem Animationsnamen von Romulus:



Damit UT das Video aber dann auch beim Start abspielt benötigt es noch eine Einstellung in den Levelproperties:



Damit wäre alles soweit fertig!!

Es gibt nur noch ein Problem!

Wenn das Video fertig abgespielt wurde, dann bleibt alles an der Stelle stehen! Wir wollen aber, dass dann das Menü angezeigt wird!!! Das stellen wir so an: Zuerst benötigen wir einen "ScriptedTrigger" aus dem ACB:



Den fügen wir in die Map ein und ändern im -ihhhh- Matineefenster und auch in den Einstellungen des ScriptedTriggers folgende Eigenschaften:



Dadurch wird am Ende des Films nochmal ein Trigger ausgelöst, der dann über den ScriptedTrigger einen Befehl zum öffnen des Menüs gibt!

Im Endeffekt sollte das Video so aussehen:



Demomap runterladen: Mov-Test

Ich hoffe es war alles verständlich! Bei Fragen oder Anregungen bitte bei Termy melden!