Implementera 8-vägs sprite-karaktärsvandringsanimering
Miljö för verifiering
- Windows
-
- Windows 11 (på engelska)
- Unity-redigeraren
-
- 2020.3.25f1
- Paket för indatasystem
-
- 1.2.0
Förutsättningar för det här tipset
Följande inställningar är förkonfigurerade som en förutsättning för förklaringen av dessa tips.
Referens webbplats
Om 4-vägs gånganimationen
Vi visade dig hur du gör en fyrvägsgångsanimation i våra tidigare tips. I den här artikeln kommer vi att förklara de 8 riktningarna, men de flesta stegen är desamma som 4-vägs gånganimationen, så vi kommer bara att förklara skillnaderna här.
Förberedelse av vandringsgrafik
Förra gången förberedde vi grafik för 4 riktningar, men den här gången kommer vi att förbereda grafik för 8 riktningar enligt följande. "Längst ner till vänster", "Längst ner till höger", "Uppe till vänster" och "Uppe till höger" har lagts till.
När det gäller orienteringsordningen verkar det som om de 8 riktningarna inte är så tydligt bestämda jämfört med de 4 riktningarna. Följande format är dock relativt vanliga, så vi kommer att fortsätta med detta arrangemang den här gången.
under | Nere till vänster |
Vänster | Nederst till höger |
Höger | Överst till vänster |
topp | Överst till höger |
Skapa ett projekt och förbered bilder
Den här gången ska jag försöka skapa något som kan placera en karaktär och flytta den med markörtangenterna på tangentbordet. Eftersom det är 8 riktningar, om du rör dig diagonalt, kommer grafiken att visas i diagonal orientering.
Det första steget är att skapa ett nytt 2D-projekt. Lägg till den karaktärsbild som du har förberett för projektet.
Välj den bild som du har lagt till och konfigurera inställningarna för inspektören. Denna inställning är densamma som för 4 riktningar.
Dela bilden i sprite-redigeraren. Antalet bilder kommer att öka, men uppgifterna kommer att vara desamma.
Det är OK om bilden i projektet visas på följande sätt.
Skapa animeringsdata
Det du gör här är detsamma som 4-vägs gånganimationen. I slutändan är det OK om du kan skapa en animation i 8 riktningar. Observera att siffrorna i bilden inte är synkroniserade med tiden i de fyra riktningarna.
Animeringsfilens | namninställningsbild |
---|---|
IwamaruDown | Iwamaru_0, Iwamaru_1, Iwamaru_2, Iwamaru_1 |
IwamaruLeft | Iwamaru_6, Iwamaru_7, Iwamaru_8, Iwamaru_7 |
IwamaruRight | Iwamaru_12, Iwamaru_13, Iwamaru_14, Iwamaru_13 |
IwamaruUp | Iwamaru_18, Iwamaru_19, Iwamaru_20, Iwamaru_19 |
IwamaruLeftDown | Iwamaru_3, Iwamaru_4, Iwamaru_5, Iwamaru_4 |
IwamaruRightDown | Iwamaru_9, Iwamaru_10, Iwamaru_11, Iwamaru_10 |
IwamaruLeftUp | Iwamaru_15, Iwamaru_16, Iwamaru_17, Iwamaru_16 |
IwamaruRightUp | Iwamaru_21, Iwamaru_22, Iwamaru_23, Iwamaru_22 |
Se till att varje riktning animeras korrekt.
Inställningar för animeringsövergångar
Inställningarna är desamma som när det är i 4 riktningar fram till mitten, så jag kommer att utelämna det.
När du har ställt in blandningsträdet måste du skapa 8 rörelser.
Vi kommer att ställa in .anim som lagts till i projektet till de 8 objekten i rörelse.
Ange riktningen för varje animering numeriskt.
Riktning | X | Y |
---|---|---|
under | 0 | -1 |
topp | 0 | 1 |
Vänster | -1 | 0 |
Höger | 1 | 0 |
Nere till vänster | -1 | -1 |
Nederst till höger | 1 | -1 |
Överst till vänster | -1 | 1 |
Överst till höger | 1 | 1 |
Detta slutför animeringsinställningen.
Kontroll av rörelser
Förflyttning görs genom att trycka på en tangent på tangentbordet, så att du kan skapa ett skript för att styra det. Innehållet i detta skript är exakt detsamma som det som skapades i de 4 riktningarna, så se det. Skriptnamnet ska vara "CharacterMove".
När du har skapat skriptet kopplar du det till karaktärsobjektet.
avrättning
Detta avslutar hela processen. Prova att köra spelet och trycka på markörtangenterna på tangentbordet för att flytta det. Om karaktären rör sig i den riktning du tryckte på den, och gånganimeringen rör sig medan grafiken ändrar riktning till den riktning du är vänd mot, är du klar. Den här gången stöder den 8 riktningar, så kontrollera om grafiken också appliceras diagonalt när du rör dig diagonalt.