Leben in die Bude bringen mit Animationen

Sign in to queue

Description

Befassen wir uns als nächstes damit, Spielfiguren zu animieren.

Ich habe mir zu diesem Zweck von meinen Kollegen ein paar fertig Assets und Spritesheets runtergeladen - wenn ihr auf auf dieser Webseite ein wenig nach unten scollt, findet ihr eine Auswahl verschiedenster Grafik-Pakete

Ich hab mich für den kleinen Dino entschieden und ihn bereits als Spritesheet aufbereitet:

Generic Episode Image

Wie sehen eure Spritesheets aus? Ab damit in die Kommentare!

Aus einem Teil dieser Sprites basteln wir jetzt eine Animation.

Wählen wir zuerst das Spielobjekt aus, auf dem wir eine Animation anwenden wollen; falls ihr noch keins habt, erstellt es wie hier beschrieben.

Wählt das Spielobjekt in der Hierarchie aus und öffnet das Animationsfenster (Window -> Animation):

Generic Episode Image

Das Fenster, das sich jetzt öffnet, schaut wiefolgt aus:

 Generic Episode Image

Dieser wundervolle rote Kringel (so ungefähr sehen meine Freihand-Kreise aus) deutet den Bereich an, auf den ihr als nächstes klicken dürft - den Doppelpfeil, der folgenden Dropdown zu Tage fördert:

Generic Episode Image

Klickt jetzt auf "Create New Clip" und gebt im folgenden Fenster

Generic Episode Image

einen Namen eurer Wahl an. Ich hab meine Animation "FlyingDragon" genannt.

Wenn ihr jetzt auf Speichern klickt, seht ihr, dass sich einige Dinge in Unity getan haben:

Generic Episode Image

Im Animationsfenster ist "FlyingDragon" ausgewählt und das GameObject "Dragon" hat eine weitere Komponente namens Animator erhalten. Der Animator ist sozusagen das Steuerungselement für die verschiedenen Animationen.

Oben links im Animations-Fenster seht ihr einen Button mit einem kleinen roten Kreis - der Aufnahmeknopf. Wenn ihr auf diesen Button klickt, werden alle eure Änderungen, die ihr zum Beispiel im Inspektor oder in der Szenenansicht vornehmt, in der Animation gespeichert. Ihr könnt aber auch einfach verschiedene Bilder via Drag and Drop in die Animationszeitleiste ziehen - das Ergebnis sollte ungefähr so ausschauen:

Generic Episode Image

In der Zeitleiste sind die Vierecke die Eckpfeiler für die Animation. Ihr könnt neue Eckpfeiler via Doppelklick setzen (und dort dann alle Eigenschaften nach Belieben bearbeiten) oder sie mit der Maus auf der Zeitleiste verschieben. 

Wenn ihr dann oben links auf den "Play"-Button klickt, könnt ihr die Animation in der Szenenvorschau bewundern.

Nehmt euch Zeit und spielt mit den verschiedenen Werten, um euch dann das Ergebnis anzuschauen. Über "Add Curve" könnt ihr auch gezielt auswählen, auf welche Eigenschaften eure nächsten Anpassungen sich beschränken sollen.

Versucht doch zum Beispiel, eine pulsierende Animation für den Titelbildschirm zu erstellen!

Ach ja, weil mein Drache sich im Spiel nach rechts bewegt, die Animation aber momentan nach links zeigt, habe ich noch ganz einfach die Y-Rotation des Drachen selbst auf 180 gesetzt:

Generic Episode Image

Jetzt schaut der Drache in die andere Richtung.

Der Animator

Klickt doppelt auf den "Animator" namens "Dragon" (oder wie auch immer eurer heißen mag). Das könnt ihr entweder in der Projektübersicht oder im Inspektor erledigen:

Generic Episode Image oder

Generic Episode Image

Es öffnet sich jetzt das Animator-Fenster:

Generic Episode Image

In der Mitte des Fensters sind die verschiedenen Animationsclips zu sehen, die ihr gegebenenfalls erstellen könnt. Unten links könnt ihr einstellen, welche Bedingungen ihr zum Abspielen einer bestimmten Animation braucht. 

Generic Episode Image

 

Ich hab hier mal einen Trigger ausgewählt und ihn "isAlive" genannt.

Generic Episode Image

Per Rechtsklick auf "Any State" und das darauffolgende "Make Transition", können wir jetzt definieren, bei welchen Bedingungen die Animation abgespielt werden soll:

Generic Episode ImageGeneric Episode Image

Den Pfeil, der jetzt zwischen "FlyingDragon" und "Any State aufgetaucht ist, wählen wir via Klick aus, um folgende Ansicht im Inspektor zu bekommen:

 Generic Episode Image

Klickt unter Conditions auf den Doppelpfeil, um das Dropdown anzuzeigen und wählt den von euch angelegten Parameter an, hier eben "isAlive":

Generic Episode Image

Ihr habt jetzt gelernt, wie ihr einfache Animationen erstellen könnt.

Allerdings werdet ihr schnell feststellen, dass jetzt immer diese eine Animation abgespielt - das liegt daran, dass diese automatisch als Standard abgespielt wird. 

Da eure Spielfigur zwischen verschiedenen Modi wechseln könnte (stehen - laufen - springen - gestorben), solltet ihr jetzt noch eine weitere Animation anlegen für den "fliegt/läuft nicht" Modus, bzw. wenn ihr gegen ein Hindernis gestoßen seid.

Ich habe beispielsweise noch eine Animation für "DeadDragon" angelegt. Was habt ihr so am Start? Schreibts mir in die Kommentare!

Im nächsten Kapitel befassen wir uns damit, vom Skript aus zwischen den einzelnen Animationen zu wechseln.

The Discussion

Add Your 2 Cents