Skip to content

Beta

  • Inhalt
  • Gamesübersicht
  • Games & Lyrik Podcast
  • Pressezentrum und Media-Kit
  • Jobs
  • Veröffentlichte E-Books
  • Impressum
    • Datenschutzerklärung
    • Disclaimer
  • Cookie-Richtlinie (EU)
  • Toggle search form
  • Megamagic Cover
    Megamagic – Wizards of the Neon Age Action
  • Simon the Sorcerer Cover
    Simon the Sorcerer Adventure
  • BIOTA Cover
    BIOTA Action
  • Ankoku Shinwa Yamato Takeru Densetsu Cover
    Ankoku Shinwa Yamato Takeru Densetsu Games und Lyrik
  • Love Thyself
    Love Thyself – A Horatio Story Adventure
  • Dont-Starve-752x430
    Don’t Starve Games und Lyrik
  • BB Car Cover
    BB Car Sport
  • The Bugs Bunny Birthday Blowout Cover
    Bugs Bunny Birthday Blowout Action

2D-Animationen in Unity

Posted on 25/09/2020 By Claudia Wendt Keine Kommentare zu 2D-Animationen in Unity

Gehe in den Scenenbildschirm und wähle deinen Spieler. Öffne das Animationsfenster. Um mit der Animation beginnen zu können, benötigst du einen Animator und einen Animation Clip.

Wähle die Player aus und gehe unter Window auf Animation –>Animation

Du benötigst einen Animator und einen Animation Clip.

Wähle Create, erstelle einen Ordner für Animationen und Speichere die Animation unter Player_Idle.

Es erscheint die Zeitleiste, in der die Animationssprites positioniert werden können.

Ziehe die Sprites zur Animation, ins Animationsfenster. Die Frames werden hinzugefügt:

Jetzt würde die Spielfigur viel zu schnell animiert. Es ist nötig die Bilder, die pro Sekunde abgespielt werden, anzupassen.

Um die Sample Rate anzeigen zu lassen, wähle die Einstellungen vom Animationsfenster und wähle „Show Sample Rate“

Diese steht jetzt auf 60.

Ändere sie auf 12.


Dann läuft die Animation nicht mehr ganz so schnell ab.

Die Bilder lassen sich per Drag & Drop auf der Zeitleiste verschieben oder mit Entf. entfernen.

Das Ganze funktioniert auch für andere Animationen, wie zum Beispiel das Laufen vom Charakter.

Wähle dafür: Create New Clip

Wiederhole dies fürs Ducken und fürs Springen.

Wenn du beim Springen nicht so viele Sprites besitzt und beispielsweise nur 2 Sprites hast, kannst du den Samples-Wert auf 2 setzen.

Im Animationsordner hat der Animator Controller einer andere Icon-Darstellung als die Animationen:

Er bestimmt, wann welche Animation abgespielt wird.

Mit einem Doppelklick öffnet sich der Animator:

Dort wird bestimmt, welche Animation abgespielt wird. Aus dem Projekt lässt sich per Drag & Drop direkt eine Animation in den Animator ziehen.

Player_Idle ist mit einem orangen Pfeil verbunden und orange markiert, weil es die Ausgangsanimation ist. Wenn man das Spiel startet, wird ständig die „Idle-Animation“ abgespielt. Mit der rechten Maustaste kannst du „Set as Layer Default State“ auswählen und damit eine andere Animation zur Ausgangsanimation machen.

Wenn du anfängst zu rennen, sollte die Animation zur entsprechenden Animation wechseln. Wähle Player_Idle mit der rechten Maustaste und wähle Make Transition. Damit erstellst du eine Verbindung von Player_Idle zu Player_Run.

Wählst du die Verbindung, kannst du bearbeiten, wann die Veränderung von einer zur anderen Animation stattfinden soll.

Dafür benötigst du eine Bedingung. Damit das funktioniert, brauchst du außerdem einen Parameter.

Erstelle einen „float“.

Er repräsentiert die Geschwindigkeit des Spielers.

Anschließend fügst du die Bedingung ein:

Du legst beispielsweise fest, das die Animation wechselt, wenn die Geschwindigkeit größer als 0.01 ist:

Wenn die Spielfigur sich bewegt, startet sie mit der anderen Animation.

Deaktiviere „Has Exit Time“.

Ändere die Transition Duration auf 0.

Die Animation vom Rennen soll beendet werden, wenn die Figur aufhört zu laufen. Erstelle eine weitere Transition, die zu Idle zurückgeht.

Wähle hier die Bedingung, dass die Animation wechselt, wenn die Geschwindigkeit kleiner als 0.01 ist.

Auch hier deaktiviere „Has Exit Time“ und setze die Transition-Dauer auf 0.

Die Änderungen jetzt, werden im Script vorgenommen:

Wir haben bei einem Charakter 2 Scripts: Der CharacterController kümmert sich um die Physik, die den Charakter bewegt und das PlayerMovement-Script, das sagt, wann die Figur sich bewegt und mit welcher Geschwindigkeit.

Öffne zuerst das PlayerMovement-Script. Zuerst wollen wir Zugriff auf den Animator haben:

Unity fügt beim Erstellen einer Animation den Animator zum Spieler hinzu. Er bezieht sich auf den Animator Controller, der wiederum den Bezug zum Spieler herstellt. Der Animator muss duch das PlayerMovement Script kontrollierbar sein:

public Animator animator;

Gehe zurück in Unity und du siehst, das jetzt im Player Movement Script das Animator-Feld erscheint. Dort wird dann die Animator-Komponente aus dem Inspectorfenster hineingezogen.

Jedesmal wenn im Script Animator geschrieben wird, greifen wir auf die Animatorkomponente zu.

In der Updatefunktion greifst du jetzt auf den Animator und die dazugehörige Komponente zu:

animator.SetFloat(„Speed“, Mathf.Abs(horizontalMove);

Die Funktion Mathf.Abs sorgt dafür, das der Wert der Bewegung deines Charakters immer positiv ist.

Wenn du jetzt dein Spiel in Unity startest, spielt Unity beim Laufen die Animation deines Charakters ab. Wenn du anhältst, ist die Idle-Animation aktiviert.

Jetzt geht es um das Springen: Dafür nutzen wir die Möglichkeit von „Any State“ im Animator. Egal welche Animation gerade abgespielt wird, wenn der Charakter springt, wechselt er zu dieser Animation.

Dafür wird eine Bedingung benötigt, damit der Charakter nicht die ganze Zeit hüpft: Jetzt wird ein weiterer Parameter gebraucht.

Nenne diesen: IsJumping und setze als Bedingung „IsJumping“ auf true.

Wir wollen keine Exit Time und setzen die Transition-Dauer auf 0.

Der Charakter soll von der Animation zum Springen wieder zum „Idle“ zurückkönnen. Es wird eine weitere Verbindung erstellt.

Die Bedingung „IsJumping“ wird auf false gesetzt und Speed auf Less 0.01.

Eine weitere Verbindung wird von Jump zu Run erstellt. Der Wechsel zum Laufen bekommt weitere Bedingungen:

IsJumping = false und Speed >0.01

Bei beiden setzten wir die HasExit-Time auf false und die Duration auf 0.

Jetzt wird das Script für die Animationen angepasst:

animator.SetBool(„IsJumping“, true);

Wir vermitteln dem PlayerMovementScript, das der Charakter aufhört mit springen, wenn er landet:

public void OnLanding ()

{

animator.SetBool(„IsJumping“, false);

}

Jetzt können wir in Unity ein neues OnLandEvent hinzufügen:

Du fügst ein OnLandEvent ein und wählst unter PlayerMovement: OnLanding()

Dann spielt Unity beim Springen die Sprunganimation ab und wenn der Charakter landet, beendet es sie.

Unity spielt die Animation immer sehr kurz ab. Deaktiviere „Can Transition to Self“, damit die Animation komplett abgespielt wird:

Jetzt wird die Animation fürs Ducken hinzugefügt.

Stelle eine Verbindung von Idle zu Crouch her:

Füge ein Bedingung hinzu: Erstelle einen neuen Paramter: IsCrouching

Wenn Crouching IsTrue, dann soll die Figur sich ducken:

Bearbeite wieder die ExitTime und die Dauer. Stelle wieder eine Rückverbindung her.

Wenn du die Exit Time deaktivierst und die Dauer für die Animation auf 0 setzt, verlängere die Exit Time zuerst und deaktivere sie erst danach, da sonst jede Menge Warnungen in die Konsole wandern. Erstelle eine weitere Verbindung von der Run-Animation.

Ertstelle eine weitere Rückverbindung:

IsCrouching ist false und Speed > 0.01

Füge noch ein OnCrouchEvent hinzu.

Dafür benötigen wir eine weitere Funktion im PlayerMovement-Script:

public void OnCrouching (bool isCrouching)

{

animator.SetBook(„IsCrouching“, isCrouching);

}

Füge jetzt das CrouchEvent hinzu. Wichitg: Im Script muss vor dem public class BoolEvent [System.Serializable] stehen. Ansonsten erscheint das CrouchEvent nicht im Inspectorfenster von Unity:

Füge wieder das PlayerMovement Script hinzu. Wähle unter dem PlayerMovement Script das OnCrouching aus dem oberen Abschnitt.

Games und Lyrik Tags:Unity

Beitragsnavigation

Previous Post: Munin
Next Post: Siebenstreich

Related Posts

  • Omni Screenshot
    Omni – Postapokalyptisches Zombieabenteuer Games und Lyrik
  • Keep Talking and nobody explodes Cover
    Keep Talking and nobody explodes Games und Lyrik
  • The Walking Dead Saints and Sinners Chapter 2 Retribution Cover
    The Walking Dead Saints and Sinners Retribution Games und Lyrik
  • Hell Pie
    Hell Pie Games und Lyrik
  • It Takes two Cover
    It takes Two Games und Lyrik
  • Mega Man Power Battle3
    Mega Man – The Power Battle Games und Lyrik

Schreibe einen Kommentar Antwort abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Archives

  • November 2023
  • August 2023
  • Juli 2023
  • April 2023
  • März 2023
  • Februar 2023
  • Januar 2023
  • Dezember 2022
  • November 2022
  • Oktober 2022
  • September 2022
  • August 2022
  • Juli 2022
  • Juni 2022
  • Mai 2022
  • April 2022
  • März 2022
  • Februar 2022
  • Januar 2022
  • Dezember 2021
  • November 2021
  • Oktober 2021
  • September 2021
  • August 2021
  • Juli 2021
  • Juni 2021
  • Mai 2021
  • April 2021
  • Februar 2021
  • Januar 2021
  • Dezember 2020
  • November 2020
  • Oktober 2020
  • September 2020
  • August 2020
  • Juli 2020
  • Juni 2020

Categories

  • Action
  • Adventure
  • Adventure Escape
  • Brettspiele
  • Games und Lyrik
  • Geschicklichkeit
  • Hack and Slash
  • Horror
  • Kartenspiele
  • Liebe
  • Lyrik
  • Point-and-Click-Adventure
  • Puzzle
  • Rennspiele
  • Rogue-like
  • RPG
  • Shoot Em Up
  • Shooter
  • Simulation
  • Spieleentwickler
  • Spieleprogrammierung
  • Sport
  • Strategie
  • Survival
  • Textadventure
  • Tower-Defense
  • Uncategorized
  • Wimmelbild
  • Wirtschaftssimulation

Recent Posts

  • ProtoCorgi
  • Rosewater
  • Prim
  • Soccer Story
  • Application Systems Heidelberg

Recent Comments

  1. A WordPress Commenter zu Hello world!
  2. Rita zu Catch me!
  3. cvd zu Heart of Muriet
  4. cvd zu Heart of Muriet
  5. Gordon zu Jasper and the City of Lights
  • My Free Zoo Games und Lyrik
  • nintendo-game-boy-mega-man-iv Cover
    Mega Man IV Action
  • Arcania Cover
    Arcania – Gothic 4 Games und Lyrik
  • The Wheel of Fortune – Junior Edition Games und Lyrik
  • Sherwood Extreme Games und Lyrik
  • Total War Warhammer
    Total War Warhammer Strategie
  • 1945 - 1 und 2 Cover
    1945 – 1 und 2 Shooter
  • Alien Syndrom Cover
    Alien Syndrome Games und Lyrik

Copyright © 2026 Beta.

Powered by PressBook News Dark theme