Přejít na hlavní obsah

Jak naučit postavu chodit v Unity 2D: podrobný průvodce

Unity je populární herní engine, který vám umožňuje vytvářet hry různých žánrů a formátů. Pokud plánujete vyvinout hru ve 2D s možností pohybu postavy v herním prostoru, jedním z prvních kroků bude naučit postavu chodit.

V této příručce se podíváme na podrobný proces vytváření pohybu postavy v Unity 2D. pokryjeme hlavní aspekty, včetně vytváření animace chůze, ovládání postavy pomocí klávesnice a zpracování kolizí. Podíváme se také na různé způsoby řízení rychlosti a směru jízdy.

K vytvoření pohybu postavy v Unity 2D můžete použít různé přístupy, jako je použití fyzického enginu nebo programování pohybu pomocí skriptů. V této příručce se podíváme na jednoduchý a efektivní způsob, který je vhodný pro většinu 2D her.

Postupujte pečlivě podle pokynů a krok za krokem Přizpůsobte pohyb postavy ve své hře. Po dokončení tohoto tutoriálu bude vaše postava schopna volně se pohybovat v herním prostoru, což otevře mnoho příležitostí k vytvoření poutavé hratelnosti.

Základy pohybu v Unity 2D

Pohyb - jeden z klíčových aspektů ve hře, díky kterému je pro hráče vzrušující a vzrušující. Unity 2D má několik různých způsobů, jak implementovat pohyb postavy.

1. Použití ovládání z klávesnice:

V Unity 2D můžete snadno nastavit ovládání postavy pomocí kláves klávesnice. K tomu můžete použít skripty a funkce Unity ke zpracování vstupu z klávesnice a pohybu postavy správným směrem.

2. Použití fyzické simulace:

V Unity 2D je k dispozici také fyzická simulace pro pohyb postav. Fyzikální komponenty, jako je Rigidbody 2D, můžete použít k vytvoření realistického pohybu postavy pod vlivem gravitace, tření a dalších fyzikálních zákonů.

3. Použití animace:

Animace je skvělý způsob, jak dát vaší postavě život a učinit její pohyb plynulým a přirozeným. V Unity 2D můžete vytvořit animace pohybu postavy pomocí komponenty Animator a sady skřítků s různými animačními snímky.

To jsou jen některé ze základních způsobů implementace pohybu postav v Unity 2D. V závislosti na požadavcích vaší hry a vaší kreativní vizi můžete použít kombinaci těchto metod nebo dokonce navrhnout svůj vlastní jedinečný přístup k pohybu postavy.

Výukové materiály a návody jsou k dispozici na oficiálních stránkách Unity, kde můžete studovat a aplikovat různé pohybové techniky ve svých herních projektech. Cvičení a experimenty vám pomohou lépe porozumět a zvládnout svět pohybu v Unity 2D.

Nastavení animací postavy

Je čas přidat animaci pro postavu, aby mohla ožít a pohybovat se na obrazovce. V Unity existuje několik způsobů, jak vytvořit animace, ale pro náš příklad použijeme okno Animation, které je k dispozici v Unity.

Pro začátek budete potřebovat skřítkovou animaci vaší postavy. Pokud ještě nemáte skřítky, můžete je vytvořit pomocí libovolného grafického editoru, jako je Photoshop nebo GIMP. Je důležité mít sadu skřítků zobrazujících různé pozice postavy, abyste vytvořili hladký pohyb.

Jakmile vytvoříte skřítky, dalším krokem je importovat je do Unity. Klikněte pravým tlačítkem na panel projektu, vyberte Import New Asset a vyberte soubory skřítků. Poté přetáhněte skřítky do složky Assets.

Nyní chcete-li vytvořit animaci, otevřete Animation okno výběrem Window - > Animation. V okně Animation můžete vytvářet a upravovat animace pro herní objekty.

Chcete-li vytvořit novou animaci postavy, klikněte na tlačítko Create a vyberte Nové animace. Poté vyberte postavu ve složce projektu a přetáhněte ji na čas do panelu animací Line. V Line panelu vidíte časové osy X pro každý snímek. Můžete se pohybovat v časové ose a přidávat nové záběry, abyste určili pohyb postavy.

Chcete-li přizpůsobit animace postavy, můžete provádět různé operace, jako je pohyb a škálování skřítků, přidávání přehrávání zvuků a změna rychlosti animace.

Po dokončení vytváření a úprav animace postavy ji uložte a připojte k hernímu objektu postavy. Chcete-li do herního objektu přidat animaci, přetáhněte animaci ze složky projektu na komponentu Animator, která se nachází ve vašem herním objektu.

Nyní, když máte přizpůsobené animace postavy, můžete jim nastavit chování v kódu. V další části se podíváme na to, jak upravit pohyb postavy pomocí animací.

Vytvoření skriptu pro správu postavy

Chcete-li naučit postavu chodit v Unity 2D, musíte vytvořit skript, který bude zodpovědný za řízení jeho pohybu. V této části se podíváme, jak takový skript vytvořit.

1. Otevřete Unity a vytvořte nový skript prostřednictvím nabídky Assets -> Create -> C# Script.

2. Pojmenujte skript "PlayerController" a otevřete jej ve zvoleném editoru kódu.

3. Na začátku skriptu deklarujte požadované proměnné.

ProměnnáPopis
public float moveSpeedRychlost pohybu postavy
private bool isFacingRightVlajka, která určuje směr pohledu postavy
private Rigidbody2D rbOdkaz na součást Rigidbody2D
private Animator animOdkaz na komponentu Animator

4. V metodě Start () získejte odkaz na komponentu Rigidbody2D a Animator:

5. V metodě Update () implementujte správu postavy:

V tomto kódu používáme funkci Input.Getaxis ("horizont") pro získání hodnoty osy horizontálního pohybu (a A D klávesy na klávesnici nebo levá a pravá šipka na gamepadu). Dále nastavíme rychlost pohybu postavy pomocí komponenty Rigidbody2D.poté zkontrolujeme směr pohybu a pohled postavy pomocí vlajky isFacingRight a funkce FlipCharacter (). Nakonec nastavíme možnost "Speed" animátorovi, aby věděl, kdy se postava pohybuje.

6. Implementujte metodu FlipCharacter () pro otočení postavy:

V této metodě změníme hodnotu vlajky isFacingRight a otočíme postavu o 180 stupňů podél osy Y pomocí funkce Transform.Rotate().

7. Uložte skript a vraťte se do Unity.

8. Přidejte skript "PlayerController" k postavě přetažením na něj v okně Inspector.

Vaše postava by nyní měla být ovládána pomocí kláves A A D nebo levé a pravé šipky a její animace by se měly přehrávat v závislosti na jejím pohybu.

Přidání fyziky do pohybu postavy

Chcete-li k postavě přidat fyzickou složku, můžete použít komponentu Rigidbody2D. Rigidbody2D přidává postavě fyzikální vlastnosti, jako je hmotnost, rychlost a gravitace.

Chcete-li k postavě přidat Rigidbody2D, postupujte podle následujících kroků:

  1. Vyberte postavu v hierarchii objektů.
  2. Otevřete panel komponenty na pravé straně rozhraní Unity.
  3. Klikněte na tlačítko" Přidat komponentu " a vyberte Rigidbody2D.

Po přidání Rigidbody2D můžete změnit jeho vlastnosti v panelu komponenty. Můžete například nastavit hmotnost postavy tak, aby se pohybovala s určitou setrvačností, nebo změnit koeficient tření, aby se postava zastavila plynuleji.

Chcete-li přesunout postavu pomocí Rigidbody2D, můžete použít metodu MovePosition(). Můžete například vytvořit skript, který bude pohybovat postavou svisle, když stisknete určité klávesy.

Příklad skriptu pro vertikální pohyb postavy:

using UnityEngine;public class PlayerMovement : MonoBehaviourprivate void Update()>

V tomto příkladu skriptu používáme metodu Input.GetAxis () pro získání hodnoty svislého pohybu. Poté vytvoříme vektor pohybu a přesuneme postavu pomocí metody MovePosition().

Pomocí tohoto skriptu můžete přidat pohyb postavy vodorovně nebo diagonálně jednoduše změnou hodnot příslušných OS.

Nyní se vaše postava bude pohybovat prostřednictvím fyzických vlastností, což dodá vaší hře realističnost a interaktivitu.

Přidání animace chůze do Unity 2D

Pro začátek budeme potřebovat sadu skřítků zobrazujících různé fáze pohybu postavy. Skřítky si můžete vytvořit sami nebo si stáhnout obrázky ze zdrojů. Doporučuje se mít alespoň tři skřítky: původní polohu postavy, první snímek chůze a druhý snímek chůze.

Jakmile máte skřítky, měli byste vytvořit novou animaci v Unity. Chcete-li to provést, postupujte podle následujících kroků:

  1. Přejděte do okna animátor a klikněte pravým tlačítkem na prázdný prostor.
  2. Vyberte možnost " Create "a poté"Animator Controller".
  3. Přejmenujte nový ovladač animátoru, aby byl snadno identifikovatelný.
  4. Otevřete animátor ovladač a klikněte pravým tlačítkem na prázdný prostor.
  5. Vyberte položku " Create State "a poté"Empty".
  6. Přejmenujte nový stav animace, například"Walk".
  7. Vyberte vytvořený stav animace a přejděte do okna Inspektor.
  8. Přizpůsobte animace kliknutím na tlačítko "Add Property" a přidáním skřítků postavy do "Sprite render".
  9. Nastavte " Play Automatically "na hodnotu" true", aby animace začala automaticky při spuštění hry.
  10. Přetáhněte skřítky postavy do pole "Sprites" na pravé straně okna.
  11. Nastavte nastavení času animace pomocí posuvníků "Speed"a" Frame Rate".
  12. Přidejte přechody mezi stavy animace a nastavte logiku přepínání animací při pohybu postavy.

Po dokončení těchto kroků budete moci pomocí přidaných animací ve skriptech ovládat pohyb postavy. Můžete například vytvořit skript, který přepne stav animace na "Walk", když se postava začne pohybovat, a na "Idle", když se zastaví.

Přidání animace chůze k postavě v Unity 2D může výrazně zlepšit vizuální dojem ze hry. Pomocí tohoto průvodce naučíte postavu chodit pomocí animací v Unity 2D.

Implementace ovládání postavy pomocí klávesnice

Budete muset vytvořit skript, který bude sledovat stisky kláves a aplikovat příslušné akce na postavu. Začněte vytvořením nového skriptu a připevněte jej k objektu postavy.

Ve skriptu můžete použít metody Input.GetKey nebo Input.GetKeyDown pro určení stisku kláves. Chcete-li například postupovat vpřed, můžete zkontrolovat, zda je klávesa W stisknuta pomocí následujícího kódu:

public float speed = 5f;private Rigidbody2D rb;void Start() ();>void Update()  

Tento příklad používá komponentu Rigidbody2D k ovládání pohybu postavy. Složka Rigidbody2D umožňuje aplikovat fyzické síly na postavu, díky čemuž je její pohyb přirozený.

Rychlost pohybu postavy můžete také upravit pomocí proměnné speed. V tomto příkladu je hodnota speed 5F, což znamená, že se postava bude pohybovat rychlostí 5 jednotek za sekundu.

Nyní, když je skript nakonfigurován, můžete hru spustit a použít klávesy W, A, S, D k pohybu postavy dopředu, doleva, dozadu a doprava.

Implementace ovládání postavy pomocí klávesnice v Unity 2D je tedy poměrně jednoduchý úkol. Pomocí metod Input.GetKey nebo Input.GetKeyDown můžete sledovat stisky kláves a aplikovat příslušné akce na postavu.