Skip to content
Versunken

Games und Lyrik

Von Spielen inspiriert

  • 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

2D-Animationen in Unity

Posted on 10. Oktober 202330. September 2024 By Claudia Wendt Keine Kommentare zu 2D-Animationen in Unity
2D-Animationen in Unity

2D-Animationen in Unity sind relevant, wenn du 2D-Spiele erstellen möchtest. 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.

Inhaltsverzeichnis

Toggle
  • Der Start von den 2D-Animationen in Unity

Der Start von den 2D-Animationen in Unity

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

2D-Animationen in Unity
2D-Animationen in Unity 43

Du benötigst für die 2D-Animationen in Unity einen Animator und einen Animation Clip.

Werbung

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:

2D-Animationen in Unity
2D-Animationen in Unity 44

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“

2D-Animationen in Unity
2D-Animationen in Unity 45

Diese steht jetzt auf 60.

Werbung
2D-Animationen in Unity
2D-Animationen in Unity 46

Ändere sie auf 12.

2D-Animationen in Unity
2D-Animationen in Unity 47

Dann laufen die 2D-Animationen in Unity 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

2D-Animationen in Unity
2D-Animationen in Unity 48

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:

2D-Animationen in Unity
2D-Animationen in Unity 49

Er bestimmt, wann welche der 2D-Animationen in Unity abgespielt wird.

Mit einem Doppelklick öffnet sich der Animator:

2D-Animationen in Unity
2D-Animationen in Unity 50

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.

2D-Animationen in Unity
2D-Animationen in Unity 51

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.

2D-Animationen in Unity
2D-Animationen in Unity 52

Erstelle einen „float“.

2D-Animationen in Unity
2D-Animationen in Unity 53

Er repräsentiert die Geschwindigkeit des Spielers.

2D-Animationen in Unity
2D-Animationen in Unity 54

Anschließend fügst du die Bedingung ein:

2D-Animationen in Unity
2D-Animationen in Unity 55

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

2D-Animationen in Unity
2D-Animationen in Unity 56

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

Deaktiviere „Has Exit Time“.

2D-Animationen in Unity
2D-Animationen in Unity 57

Ändere die Transition Duration auf 0.

2D-Animationen in Unity
2D-Animationen in Unity 58

Die 2D-Animationen in Unity vom Rennen sollen 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.

2D-Animationen in Unity
2D-Animationen in Unity 59

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

2D-Animationen in Unity
2D-Animationen in Unity 60

Die Änderungen für die 2D-Animationen in Unity 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.

2D-Animationen in Unity
2D-Animationen in Unity 61
2D-Animationen in Unity
2D-Animationen in Unity 62

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.

2D-Animationen in Unity
2D-Animationen in Unity 63

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.

2D-Animationen in Unity
2D-Animationen in Unity 64

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

2D-Animationen in Unity
2D-Animationen in Unity 65

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

2D-Animationen in Unity
2D-Animationen in Unity 66

Der Charakter soll von den 2D-Animationen in Unity zum Springen wieder zum „Idle“ zurückkönnen. Es wird eine weitere Verbindung erstellt.

2D-Animationen in Unity
2D-Animationen in Unity 67

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

2D-Animationen in Unity
2D-Animationen in Unity 68

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

IsJumping = false und Speed >0.01

2D-Animationen in Unity
2D-Animationen in Unity 69

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);

2D-Animationen in Unity
2D-Animationen in Unity 70

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

public void OnLanding ()

{

animator.SetBool(„IsJumping“, false);

}

2D-Animationen in Unity
2D-Animationen in Unity 71

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

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

2D-Animationen in Unity
2D-Animationen in Unity 72

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

 

2D-Animationen in Unity werden immer sehr kurz abgespielt. Deaktiviere „Can Transition to Self“, damit die Animation komplett abgespielt wird:

2D-Animationen in Unity
2D-Animationen in Unity 73

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

Stelle eine Verbindung von Idle zu Crouch her:

2D-Animationen in Unity
2D-Animationen in Unity 74

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

Wenn Crouching IsTrue, dann soll die Figur sich ducken:

2D-Animationen in Unity
2D-Animationen in Unity 75

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

2D-Animationen in Unity
2D-Animationen in Unity 76

Wenn du die Exit Time deaktivierst und die Dauer für die 2D-Animationen in Unity 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.

2D-Animationen in Unity
2D-Animationen in Unity 77

Ertstelle eine weitere Rückverbindung:

IsCrouching ist false und Speed > 0.01

2D-Animationen in Unity
2D-Animationen in Unity 78

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);

}

2D-Animationen in Unity
2D-Animationen in Unity 79

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:

2D-Animationen in Unity
2D-Animationen in Unity 80
2D-Animationen in Unity
2D-Animationen in Unity 81

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

2D-Animationen in Unity
2D-Animationen in Unity 82
2D-Animationen in Unity
2D-Animationen in Unity 83

Ein weiteres Tutorial findest du bei Youtube

Post Views: 1.106
Weitersagen:
Games und Lyrik Tags:Unity

Beitrags-Navigation

Previous Post: Munin
Next Post: Siebenstreich

Related Posts

  • Knotenarbeitsbereich
    Systeme im Visual Effect Graph Games und Lyrik
  • Ultimate Pirates
    Ultimate Pirates Games und Lyrik
  • Space Station
    Space Station Games und Lyrik
  • Torchlight Cover
    Torchlight Games und Lyrik
  • SYNK
    SYNK: Revolutioniere die Content-Erstellung mit Echtzeit-Technologie Games und Lyrik
  • Ultimate Pirates
    Ultimate Pirates Games und Lyrik

Schreibe einen Kommentar Antworten abbrechen

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

Diese Seite verwendet Akismet, um Spam zu reduzieren. Erfahre, wie deine Kommentardaten verarbeitet werden..

  • Games und Lyrik (2.578)
    • Action (56)
    • Adventure (424)
      • Point & Click-Adventure (16)
    • Ecke der verlorenen Spiele (13)
    • Horror (28)
    • Kinderfreundliche Games (2)
    • Partyspiele (9)
    • Puzzle (12)
    • Rollenspiele (107)
    • Shooter (343)
    • Simulation (26)
    • Sport (106)
      • Fußball (2)
      • Rennspiele (4)
    • Strategie (197)
    • Survival (5)
    • Wimmelbild (8)
  • Lyrik (112)
  • Spieleentwickler (365)
  • Spieleprogrammierung (28)
Werbung

Action Adventure Capcom Daedalic Deck 13 Devcom 2020 Ecke der verlorenen Spiele Gamescom 2019 Gamescom 2020 Gamescom 2021 Gamescom 2023 GB GBA GBC Horror Indie Arena Booth 2022 Jump & Run Kalypso Media Mega Man N64 NDS NES Nintendo DS Nintendo Switch PC PS1 PS2 PS3 PS4 PS5 PSP Rareware Rennspiel Sega Shooter SNES State of Play Strategie Switch Unity Visual Novel VR Windows Xbox XBox One

0 Artikel - 0.00€
Schreibabenteuer-Feed

  • Wünsche und Bestreben
  • Der Kuss
  • Professionelles Schreiben
  • Das Opfer
  • Der Reim

Ezoic

  • Fairphone 6: Das wohl nachhaltigste Handy der Welt ist jetzt erhältlich
    Das niederländische Unternehmen Fairphone hat mit einem Trailer die sechste Generation der hauseigenen Smartphone-Reihe vorgestellt. Fairphone setzt seit jeher auf einen alternativen Ansatz und versucht, seine Handys möglichst fair und nachhaltig zu produzieren. In der Vergangenheit ließ die Ausstattung allerdings oft zu wünschen übrig. Seit Jahren holt das niederländische Unternehmen aber auch an dieser Front […]
  • Ready or Not - Für seinen Realismus gefeierter Shooter nachträglich entschärft, damit der Konsolen-Release klappt, und PC-Spieler rufen »Zensur«
    Beim Koop-Shooter hagelt es Kritik in den Steam-Reviews, dabei waren die Fans eigentlich sehr zufrieden mit dem Spiel.
  • Malcolm Mittendrin - Die Kult-Sitcom kehrt nach fast 20 Jahren zurück und der Titel stellt klar: Das Leben ist immer noch unfair!
    19 Jahre nach dem Serien-Ende legt Malcolm Mittendrin ein Comeback hin. Doch unter welchem Titel werden die vier neuen Folgen veröffentlicht?
  • Star Wars - Mark Hamill hatte für Luke Skywalker in Episode 8 eine ganz andere Idee und puh, die ist heftig
    Mark Hamill erklärt mit seiner Vision für Luke in Die letzten Jedi, warum man Lichtschwerter nicht unbeaufsichtigt herumliegen lassen sollte.
  • Baldur's Gate - Alle Leute lieben Minsc und seinen Hamster Boo, aber dass die beiden überhaupt existieren, liegt an einer kleinen Pechsträhne
    Bevor Minsc und Boo uns in Baldur's Gate zur Seite standen, hat das Duo nur in der Fantasie und auf einem Blatt Papier existiert. Das ist die Geschichte hinter einem der berühmtesten Gefährten der RPG-Geschichte.
Blogalm.de
TopBlogs.de das Original - Blogverzeichnis | Blog Top Liste
blogwolke.de - Das Blog-Verzeichnis
  • Pacific Carriers Cover
    Air Conflicts: Pacific Carriers Games und Lyrik
  • Leap of Fate Cover
    Leap of Fate Games und Lyrik
  • Psychotic Bathtub Cover. ©Natasha.
    Psychotic Bathtub: Ein Spiel, das den Geist öffnet Adventure
  • Hard West Cover
    Hard West Strategie
  • Rigidbody
    Rigidbody in Unity: Eine Einführung Spieleprogrammierung
  • Urban Venture Cover
    Taxi Life Games und Lyrik
  • Streetfighter Screenshot 2
    Street Fighter 2 Games und Lyrik
  • Sesame Street - ABC
    Sesame Street – ABC Games und Lyrik

Copyright © 2025 Games und Lyrik.

Powered by PressBook News Dark theme