Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Animator und Animation | Unity-Animationssystem
Kampfspiel in Unity
course content

Kursinhalt

Kampfspiel in Unity

Kampfspiel in Unity

1. Unity-Animationssystem
2. Spielerverhalten
3. Feindverhalten
4. Spiel Verbessern
5. Verbessere das Flappy Bird Spiel

book
Animator und Animation

In Unity spielt der animator eine entscheidende Rolle dabei, Spielobjekte durch Animationen zum Leben zu erwecken. Durch das Verknüpfen von Animationsclips mit Übergängen und Parametern gestalten Animator-Komponenten dynamische Bewegungen und Verhaltensweisen für Charaktere und Objekte innerhalb der Spielwelt. Diese Animationen enthalten Keyframe-Daten und Einstellungen, die definieren, wie sich Objekte bewegen und interagieren – ein wesentlicher Aspekt für die Schaffung fesselnder und immersiver Spielerlebnisse.

Animator

Um Unity mitzuteilen, dass dieses Objekt Animationen besitzen kann, muss die Animator-Komponente hinzugefügt werden.

Außerdem muss ein Controller erstellt werden, der dem Animator hinzugefügt wird.

Als Nächstes, wenn wir im Hierarchie-Fenster auf das Objekt klicken und das Animator-Panel öffnen, sieht es ungefähr so aus.

Im Animator-Panel von Unity steuern Animator-Komponenten den Ablauf von Animationen innerhalb eines Spiels.

Parameter dienen als Variablen, die Übergänge zwischen Animationszuständen beeinflussen. Der Entry State definiert die Anfangsanimation beim Spielstart, während Any State Übergänge aus jedem Zustand ermöglicht. Parameter, darunter Booleans, Floats und Integers, erlauben dynamische Animationsänderungen basierend auf Spielbedingungen.

Animationen

Zunächst sieht das Animationsfenster so aus, wenn Sie Ihr Objekt auswählen und das Animationspanel öffnen.

Da keine Animationen vorhanden sind, werden Sie aufgefordert, einen Animationsclip für das Objekt zu erstellen. Wenn Sie auf "Erstellen" klicken, müssen Sie einen Namen und einen Speicherort für die Animation auswählen. Nach dem Erstellen einer Animation ändern sich das Animator- und das Animationspanel.

Im Animationspanel von Unity können Entwickler Animationen für GameObjects erstellen, bearbeiten und verwalten. Zu den wichtigsten Komponenten gehört die Animation Timeline, die Keyframes und Animationsspuren anzeigt und so eine präzise Bearbeitung der Animationen im Zeitverlauf ermöglicht. Wenn wir Parameter der Animation ändern möchten, können wir sie im Assets-Ordner auswählen und anpassen.

  • Loop Time: Animation startet nahtlos vom Ende zum Anfang neu;
  • Loop Pose: Übergang des letzten Frames zum ersten Frame für einen nahtlosen Loop;
  • Offset: Gibt eine Zeitverzögerung für die Wiedergabe der Animation an, nützlich für Synchronisation und Variation.

Aufzeichnen im Animationsfenster

Im Animationsfenster von Unity ist die Aufnahmetaste ein zentrales Werkzeug für Animator:innen. Bei Aktivierung ermöglicht sie das Aufzeichnen von Keyframe-Animationen direkt im Unity Editor. Durch das Verändern von Objekteigenschaften (wie Position, Rotation oder Skalierung) in der Szenenansicht oder im Inspektorfenster während der Aufnahme können Keyframes automatisch erstellt werden.

Hinzufügen eines weiteren Clips

Wir können unserem Objekt einen weiteren Clip hinzufügen, indem wir auf "Create New Clip" klicken:

Übergänge zwischen Animationen

Nachdem verschiedene Clips erstellt wurden, können wir die Übergänge zwischen ihnen im Animator einrichten. Um einen Übergang zu erstellen, wählen wir zunächst das Ziel aus und klicken auf "Make Transition", anschließend wählen wir das Ziel der Animation aus.

Auf diese Weise besteht ein Übergang zwischen diesen beiden Animationen.

Wenn wir auf den Übergang klicken, erscheint diese Ansicht im Inspector:

Hat Exit Time

Wenn aktiviert, wird sichergestellt, dass die aktuelle Animation abgeschlossen wird, bevor entsprechend der im Übergang angegebenen Exit Time in den nächsten Zustand gewechselt wird. Das Deaktivieren von Has Exit Time ermöglicht dynamischere und sofortige Übergänge zwischen Zuständen, häufig basierend auf Bedingungen oder Auslösern. Wir werden die Verwendung von Has Exit Time später noch genauer betrachten.

Parameter für Übergangsbedingungen erstellen

Um eine Bedingung im Übergang festzulegen, müssen wir Parameter erstellen.

Erstellen Sie nun eine Bedingung, indem Sie auf die + Schaltfläche klicken.

Für den Übergang vom Zustand A zu Zustand B muss sichergestellt sein, dass can_Translate = true ist.

Beispiel: Menschliche Aktionen

Stellen wir uns vor, wir steuern eine Spielfigur. Wir haben Animationen für das Spielen am Computer, Schlafen und Essen.

Bedingungen für Übergänge

Um zu steuern, wann unsere Figur zwischen Animationen wechselt, verwenden wir Bedingungen. Angenommen, wir haben eine "hungrig"-Bedingung. Wenn diese Bedingung erfüllt ist, soll unsere Figur vom Spielen am Computer zum Essen wechseln.

Umsetzung des Übergangs

Im Animator von Unity erstellen wir einen Übergang vom "playing with computer"-Animationszustand zum "eating"-Animationszustand. Die Bedingung für diesen Übergang wird das "hungry"-Boolean sein. Sobald "hungry" auf true gesetzt wird, wechselt Unity automatisch unseren Charakter vom Spielen zum Essen.

Es können weitere Bedingungen und Übergänge hinzugefügt werden. Beispielsweise könnte eine "tired"-Bedingung einen Übergang vom Spielen zum Schlafen auslösen. Außerdem können Animationen für flüssigere Übergänge gemischt werden.

Der animator in Unity funktioniert also genau wie wir: Jeder Block stellt eine Aktion dar, die wir im Alltag ausführen können, und die Pfeile enthalten die Bedingung für den Wechsel zu dieser Animation.

question mark

Was ist der Zweck einer Animator-Komponente in Unity?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 2

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

course content

Kursinhalt

Kampfspiel in Unity

Kampfspiel in Unity

1. Unity-Animationssystem
2. Spielerverhalten
3. Feindverhalten
4. Spiel Verbessern
5. Verbessere das Flappy Bird Spiel

book
Animator und Animation

In Unity spielt der animator eine entscheidende Rolle dabei, Spielobjekte durch Animationen zum Leben zu erwecken. Durch das Verknüpfen von Animationsclips mit Übergängen und Parametern gestalten Animator-Komponenten dynamische Bewegungen und Verhaltensweisen für Charaktere und Objekte innerhalb der Spielwelt. Diese Animationen enthalten Keyframe-Daten und Einstellungen, die definieren, wie sich Objekte bewegen und interagieren – ein wesentlicher Aspekt für die Schaffung fesselnder und immersiver Spielerlebnisse.

Animator

Um Unity mitzuteilen, dass dieses Objekt Animationen besitzen kann, muss die Animator-Komponente hinzugefügt werden.

Außerdem muss ein Controller erstellt werden, der dem Animator hinzugefügt wird.

Als Nächstes, wenn wir im Hierarchie-Fenster auf das Objekt klicken und das Animator-Panel öffnen, sieht es ungefähr so aus.

Im Animator-Panel von Unity steuern Animator-Komponenten den Ablauf von Animationen innerhalb eines Spiels.

Parameter dienen als Variablen, die Übergänge zwischen Animationszuständen beeinflussen. Der Entry State definiert die Anfangsanimation beim Spielstart, während Any State Übergänge aus jedem Zustand ermöglicht. Parameter, darunter Booleans, Floats und Integers, erlauben dynamische Animationsänderungen basierend auf Spielbedingungen.

Animationen

Zunächst sieht das Animationsfenster so aus, wenn Sie Ihr Objekt auswählen und das Animationspanel öffnen.

Da keine Animationen vorhanden sind, werden Sie aufgefordert, einen Animationsclip für das Objekt zu erstellen. Wenn Sie auf "Erstellen" klicken, müssen Sie einen Namen und einen Speicherort für die Animation auswählen. Nach dem Erstellen einer Animation ändern sich das Animator- und das Animationspanel.

Im Animationspanel von Unity können Entwickler Animationen für GameObjects erstellen, bearbeiten und verwalten. Zu den wichtigsten Komponenten gehört die Animation Timeline, die Keyframes und Animationsspuren anzeigt und so eine präzise Bearbeitung der Animationen im Zeitverlauf ermöglicht. Wenn wir Parameter der Animation ändern möchten, können wir sie im Assets-Ordner auswählen und anpassen.

  • Loop Time: Animation startet nahtlos vom Ende zum Anfang neu;
  • Loop Pose: Übergang des letzten Frames zum ersten Frame für einen nahtlosen Loop;
  • Offset: Gibt eine Zeitverzögerung für die Wiedergabe der Animation an, nützlich für Synchronisation und Variation.

Aufzeichnen im Animationsfenster

Im Animationsfenster von Unity ist die Aufnahmetaste ein zentrales Werkzeug für Animator:innen. Bei Aktivierung ermöglicht sie das Aufzeichnen von Keyframe-Animationen direkt im Unity Editor. Durch das Verändern von Objekteigenschaften (wie Position, Rotation oder Skalierung) in der Szenenansicht oder im Inspektorfenster während der Aufnahme können Keyframes automatisch erstellt werden.

Hinzufügen eines weiteren Clips

Wir können unserem Objekt einen weiteren Clip hinzufügen, indem wir auf "Create New Clip" klicken:

Übergänge zwischen Animationen

Nachdem verschiedene Clips erstellt wurden, können wir die Übergänge zwischen ihnen im Animator einrichten. Um einen Übergang zu erstellen, wählen wir zunächst das Ziel aus und klicken auf "Make Transition", anschließend wählen wir das Ziel der Animation aus.

Auf diese Weise besteht ein Übergang zwischen diesen beiden Animationen.

Wenn wir auf den Übergang klicken, erscheint diese Ansicht im Inspector:

Hat Exit Time

Wenn aktiviert, wird sichergestellt, dass die aktuelle Animation abgeschlossen wird, bevor entsprechend der im Übergang angegebenen Exit Time in den nächsten Zustand gewechselt wird. Das Deaktivieren von Has Exit Time ermöglicht dynamischere und sofortige Übergänge zwischen Zuständen, häufig basierend auf Bedingungen oder Auslösern. Wir werden die Verwendung von Has Exit Time später noch genauer betrachten.

Parameter für Übergangsbedingungen erstellen

Um eine Bedingung im Übergang festzulegen, müssen wir Parameter erstellen.

Erstellen Sie nun eine Bedingung, indem Sie auf die + Schaltfläche klicken.

Für den Übergang vom Zustand A zu Zustand B muss sichergestellt sein, dass can_Translate = true ist.

Beispiel: Menschliche Aktionen

Stellen wir uns vor, wir steuern eine Spielfigur. Wir haben Animationen für das Spielen am Computer, Schlafen und Essen.

Bedingungen für Übergänge

Um zu steuern, wann unsere Figur zwischen Animationen wechselt, verwenden wir Bedingungen. Angenommen, wir haben eine "hungrig"-Bedingung. Wenn diese Bedingung erfüllt ist, soll unsere Figur vom Spielen am Computer zum Essen wechseln.

Umsetzung des Übergangs

Im Animator von Unity erstellen wir einen Übergang vom "playing with computer"-Animationszustand zum "eating"-Animationszustand. Die Bedingung für diesen Übergang wird das "hungry"-Boolean sein. Sobald "hungry" auf true gesetzt wird, wechselt Unity automatisch unseren Charakter vom Spielen zum Essen.

Es können weitere Bedingungen und Übergänge hinzugefügt werden. Beispielsweise könnte eine "tired"-Bedingung einen Übergang vom Spielen zum Schlafen auslösen. Außerdem können Animationen für flüssigere Übergänge gemischt werden.

Der animator in Unity funktioniert also genau wie wir: Jeder Block stellt eine Aktion dar, die wir im Alltag ausführen können, und die Pfeile enthalten die Bedingung für den Wechsel zu dieser Animation.

question mark

Was ist der Zweck einer Animator-Komponente in Unity?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 2
some-alt