Innehållsförteckning:

Hur man skapar en 2d -karaktär med teckenkontroller i Unreal Engine 4 Använda Visual Script för PC: 11 steg
Hur man skapar en 2d -karaktär med teckenkontroller i Unreal Engine 4 Använda Visual Script för PC: 11 steg

Video: Hur man skapar en 2d -karaktär med teckenkontroller i Unreal Engine 4 Använda Visual Script för PC: 11 steg

Video: Hur man skapar en 2d -karaktär med teckenkontroller i Unreal Engine 4 Använda Visual Script för PC: 11 steg
Video: Gregory Chaitin: Complexity, Metabiology, Gödel, Cold Fusion 2024, November
Anonim
Image
Image

Hur man skapar en 2d -karaktär med teckenstyrenhet i Unreal engine 4 med visuellt skript för PC Hej, jag är Jordan Steltz. Jag har utvecklat videospel sedan jag var 15. Denna handledning lär dig hur du skapar en grundläggande karaktär med inmatning för rörelse på ett 2d -plan.

Steg 1: Konfigurera Epic Games och Unreal Engine

Innan vi börjar måste vi se till att du har allt du behöver följa tillsammans med denna handledning. Du behöver, Unreal -motor (helst en version senare än 4.16) 2D -tillgångar för karaktär och ett testrum. Sidnot, ett Epic -spel -konto krävs för att använda motorn och epic games launcher kommer att användas för att installera motorn. Det första är att skapa ett Epic -spelkonto. För att göra detta kan du gå till https://www.epicgames.com/site/en-US/home och klicka på inloggningsknappen, klicka sedan på registrera dig och fylla i nödvändig information. Därefter måste vi installera Epic games launcher och sedan installera en version av Unreal Engine. När du har installerat Epic Games Launcher loggar du in i startprogrammet med det nyskapade kontot, går till fliken Unreal engine och klickar på knappen installera motor. En annan sida, genom att klicka på knappen för installation av motor uppmanas du att installera den senaste versionen av Unreal Engine, för närvarande är det Unreal Engine 4.21.2.

Steg 2: Konfigurera projektet

Efter att motorn är installerad är det dags att skapa projektet. Unreal har mallar som kan användas men jag gillar att börja om från början, om du vill kan du använda 2d -mallen eller skapa ett tomt projekt, ge det ett namn och låta det ladda. Sidnotat om startinnehållet, det kommer inte att behövas för denna handledning, men du kan behålla det innehållet om du vill.

Steg 3: Skaffa animationer och konfigurera karaktärsanimationer

Nästa sak vi måste göra är att importera tillgångarna, jag fick mina från: https://www.kenney.nl/. Den här webbplatsen har karaktärer och kartor, men om du har dina egna tillgångar kan du använda dem. Det finns två sätt att importera tillgångar till Unreal Engine, dra och släpp -metoden, eller så kan du klicka på import och importera de tillgångar du behöver. Jag rekommenderar också att du skapar mappar i motorn för att göra det lättare att hitta. Jag skapar normalt mappar för karaktärernas tillgångar, animeringar och uppräkningstillstånd, så importera sprites och när du väljer dem alla använder du "Ctrl" + "A" för att välja alla sprites och högerklickar en av de valda spritesna till "Sprite Actions" och klicka på "Apply Paper 2D texture settings." Denna inställning gör att filerna som vi importerade ser så mycket trevligare ut. Efter det om spritesna inte är valda använder du kontrollen och en knapp för att markera alla bilder igen, högerklicka och hitta spriteåtgärder och klicka på "Extrahera sprites". Därefter är den roliga delen som skapar animationer och börjar konfigurera karaktärerna animeringstillstånd. Låt oss nu fokusera på själva animationerna. Jag glömde att nämna att innan vi börjar ska karaktärsplanen skapas, högerklicka på blueprint -klassen, det finns en rullgardinsmeny för alla klasser, klicka på den knappen och skriv in "Paper Character". Välj det alternativet och ge ritningen ett namn. Jag kommer att kalla min "EGA player_character." Nu när det har skapats kan vi skapa animeringar för spelarens karaktär. Om du använder animeringar från kenney.nl är animationsramarna numrerade till exempel, om det finns 2 ramar för gånganimationen kommer namnet att vara”Assetname_walk_0” och så vidare. Låt oss börja med vandringsanimationerna, hitta respektive sprites och kontrollklicka för att välja dem, högerklicka på en av dem och alternativet "Skapa blädderbok". Gör detta för resten av spriterna för hoppning och dödssprites.

Steg 4: Hantera inmatningar och uppräkningsstater

Därefter uppräknar staterna och får karaktärsrörelsen och inmatningarna inställda. Uppräkningar kommer att användas för att lagra spelarens tillstånd och kommer att vara till hjälp för att ställa in den inställda blädderboksfunktionen senare. För att skapa en uppräkningsplan, högerklicka genom att gå till "Blåkopior" och klicka på "Uppräkning". Nästa sak att göra är att skapa en uppräkning för användning i uppsättningen blädderboksfunktion senare, efter det måste vi skapa ingångarna för spelaren. För att göra det, gå till "redigera" >> "Projektinställningar" och hitta "Motor", klicka på Input och det finns två kartläggningsalternativ "Action Mapping" och "Axis Mapping", Axis Mapping kommer att användas för att flytta vänster och höger, Det kommer att finnas en Axis Mapping och en Action mapping, kom ihåg att detta är grundläggande och du kan lägga till fler saker till din karaktär. Första åtgärdskartläggningen allt du behöver göra är att trycka på plusknappen, sedan ge den ett namn, jag kommer att namnge det Hoppa, när du går för att ställa in en nyckelinmatning finns det många plattformar och olika kontroller, jag kommer att hålla fast vid PC. Så jag ställer in nyckeln till uppåtpilen och mellanslag. Nästa är axelåtgärd, jag kallade den för att flytta höger och ställa den till högerpilen. Nu kan vi fokusera på uppräkningar, det kommer att finnas två uppräkningar: promenader och hoppning. Du kan lägga till dina egna beskrivningar av uppräkningarna. Så här är hur du lägger till dem klicka på nytt och ge uppräkningen ett namn och om du vill ha en beskrivning.

Steg 5: Konfigurera karaktärsplanen

Nu kan vi komma till programmeringssidan, först ställa in standardsprite genom att klicka på sprite -komponenten och hitta alternativet Source Flipbook och välja den inaktiv animering som skapades tidigare. Nu måste vi skapa några variabler, vi behöver en booleska, en boolsk eller bool är i grunden en sann eller falsk fråga, bool kommer att berätta för oss om spelarens karaktär rör sig åt höger. Jag kommer att kalla det Flytta höger följt av ett frågetecken och landas. Is landed kommer att användas för hoppanimationen och eventet på land senare.

Steg 6: Skapa variabler

Vid denna tidpunkt skulle jag vilja ta upp kategoriseringen av de variabler vi skapar. På höger sida finns en panel med variabelns namn, värde, instans redigerbar (betyder att det är offentligt och kan du ändra det i redigeraren) och kategori, klicka i kategori textrutan och ge kategorin ett namn, jag föreslår "Rörelse" detta kommer att innehålla boolen och referensen till enumeration state machine som vi skapade tidigare. Vi kommer också att behöva skapa en annan rörelserelaterad bool som jag kommer att kalla är landad. Därefter är det dags att fokusera på variabler för blädderböckerna, för dessa finns det en variabeltyp som kallas Paper Flipbook, ställ in den på objektreferens, kompilera ritningen så att du kan redigera variabelns standardvärden, men jag måste varna för att ändra standardvärdena för den booleska variabler till true, kommer det att förstöra vad vi gör senare. Skapa mängden flipbook -objektvariabler som du behöver. Därefter måste vi lägga till en kamera och en fjäderarmskomponent, för att lägga till en komponent klickar du bara på lägg till komponent och söker upp kameran, men glöm inte att en fjäderarm också krävs så klicka på lägg till komponent igen leta upp fjäderarmen välj den. Klicka nu och dra kameran om den inte redan är ett barn av fjäderarmen på fjäderarmen.

Steg 7: Installera kameran

Nu är det dags att ändra kamerainställningarna i detaljpanelen. Det finns ett alternativ för kamerainställningar under kamerainställningen ändra uppfattningsläget till ortografiskt och ett bildförhållande som fungerar för din datorskärm. Jag är inte särskilt bra med bildförhållanden så jag ändrade precis min till 2048, för att förhindra skärmkramp spara sedan och kompilera projektet.

Sidanteckning ställer in begränsningarna för tecknet till x, y och z för både rotation och position.

Steg 8: Ändra spelläge

Image
Image

Nästa sak vi borde göra är att ändra spellägesinställningarna för att göra att vi går till redigeringsfliken och väljer projektinställningar och hittar sedan kartor och lägen klickar på morotsknappen efter valt spelläge, det ser ut som att jag kan behöva skapa ett nytt spelläge så, om dina alternativ är nedtonade som mina klickar du på pluset med namnet på det valda spelläget Jag gör detta så att vi kan redigera spelarens karaktär som overkligt kommer att använda när vi laddar upp spelet.

Steg 9: Ställ in skapande av funktionen för blädderbok

Det är dags att börja arbeta med att konfigurera spelarkaraktärernas rörelsekontroller, dubbelklicka på papperstecknet som du har skapat, det tar dig till ett av två fönster av händelsediagrammet eller visningsporten, om du inte redan finns i händelsediagrammet och är i visningsporten klickar du på den tredje fliken (om du använder standardinställningen för overklig motor). Du kommer att hälsas av en tom skärm med en låda med en morot i som heter OnEvent BeginPlay, oroa dig inte för det ännu. Istället ska vi sätta upp en egen blädderboksfunktion.

Under komponentfliken finns fliken funktioner klicka på plus på funktionsfliken, vid denna tidpunkt bör vi skapa variabeln för att lagra tillståndsmaskinen vi skapade tidigare, tillståndsmaskinen hjälper till att enkelt växla mellan animationer utan att behöva använda standard Unreal Ställ in Flipbook -funktionen, dubbelklicka på den nya funktionen och det finns en lila ruta med namnet på den nya funktionen på den klicka på den och det finns ett alternativ för inmatningar klicka på plus på fliken ingångar ställ in variabeln genom att klicka på rullgardinsmenyn och i sökfältet skriver du namnet på uppräkningen som skapades tidigare har det som den första ingången eller som jag brukar kalla det nästa tillstånd. Ange sedan instansen för tillstånd genom att dra in enum -variabeln från fliken variabel och klicka på inställningsalternativet när du gör det. Av det klickar du på moroten och drar och släpper sedan musknappen, det kommer att finnas en meny som visas med en sökfältstyp, ställ in blädderbok i funktionen, välj just det alternativet, i det alternativet har vi några alternativ, till exempel: mål som automatiskt ställs in på sprite, och ny blädderbok, med det blädderboksalternativet dra av det och sökvälj. Med den valda finns det ett index, som standard är det en boolean, vi kan ändra det genom att dra in och släppa tillståndsmaskinen i indexet, vilket ger oss möjlighet att använda blädderböckerna vi skapade, dra och släpp de variablerna till respektive position, men du ställer in den. Det valet är det som avgör nästa blädderbok. Efter den inställda blädderboken i funktionen drar du av den uppsatta blädderboken och skriver returnod. Jag gör detta för att vara snyggt, det krävs inte. Det är allt vi behöver för den inställda flipbook -funktionen.

Steg 10: Inställning av rörelsekomponent

Därefter måste vi konfigurera rörelsekomponenten. Gå in i händelsediagrammet och högerklicka och sök Inmatningsaxel Jag kallade ingångsaxeln för att flytta höger MoveRight. Denna händelse kommer att vara vår rörelsekontroller. Dra sedan bort ingångsaxeln från moroten och sökjämför flottören, om axelvärdet inte redan finns i ingångsbubblan drar du axelvärdet till ingångsbubblan. I jämförningsflottan finns det 3 viktiga delar, vi kommer inte att använda == delen av jämförelseflottan. I <-delen måste vi ställa in flytta höger bool genom att dra variabeln från panelen till händelsediagrammet och klicka på inställningsalternativet och klicka på kryssrutan en gång, detta kommer att ställa in bool för att flytta höger sant, dra flytta höger bool och ställ in det till falskt för <, delen av jämförelseflottan. Från detta drar du en tråd från endera av uppsättningssatserna och söker lägger till rörelseinmatning, tar den andra uppsättningen och drar den in i tilläggsrörelsens inmatningspip av skriptet, drar sedan från ingångsaxelbubblan till läggningsrörelsens ingångs skalvärde bubbla. Sidanteckning, jag rekommenderar att du kommenterar så, hur du gör det är att vänsterklicka och dra över kodbitarna du vill kommentera och tryck på C.

Steg 11: Hoppningsriktning och slutförande

Image
Image

Slutligen till riktningskontrollen. Detta inkluderar en jämförelseflotta. Skapa en annan anpassad händelse, därifrån behöver vi en jämförelseflotta, att jämföra med 0, vi måste få hastighet, men istället för att bara få hastighet dela returvärdesstiftet genom att högerklicka och klicka på split struct pin. Använd returvärdet X som ingång för jämförningsflottan med> och == går till värdet för den gren vi behöver skapa med hjälp av variabeln flytt höger med <och falsk av grenen går till den inställda kontrollrotationen, vilket vi kommer att behöva dela rotationsbubblan med samma metod som används för att dela get -hastighetsnålen, och sedan ställa in Z -stiftet på 180,0, hur länge som vi inte har ett mål ännu kommer en overklig motor att skrika åt oss tills vi hittar ett mål, det är här vi högerklickar och skriver i sökfältet get controller med returvärdet för inställda kontrollrotationsnoder. Den andra uppsättningen kontrollrotationsnod kommer att ha allt som är lika med 0. En sak till är att hoppa, detta kommer att bli något långt. Det första vi gör för den här delen av teckeninställningen är att leta upp ingångsaxelhopp eller vad du än bestämde dig för att kalla den knappkartläggningen, därifrån kommer vi att se att det finns en nedtryckt och släppt gren på den pressade vi kan dra ut från den triangeln och sökhoppet, vid släppt kan vi slå upp stopphopp. Vi är dock inte klara där, högerklicka och slå upp kan hoppa och använda returvärdet i en gren på den sanna händelsen vi behöver ringa vår inställda flipbook -funktion och lägga till en fördröjning på 0,2 sekunder och sedan få en referens till teckenrörelsekomponenten och se om tecknet faller genom att söka faller i sökfältet med hjälp av returvärdet för det för att ställa in vår blädderbok till inaktivt tillstånd (eftersom tecknet som jag använder inte har en fallande animering av utseendet på det.)

Nu är det äntligen dags att testa den här karaktären i spelet. Innan du testar det, se dock till att du tar animeringskontrollen och riktningskontrollen och kopplar dem till händelsemärket.

Rekommenderad: