Inhaltsverzeichnis:

So erstellen Sie einen 2D-Charakter mit Character Controller in Unreal Engine 4 mit Visual Script für PC - Gunook
So erstellen Sie einen 2D-Charakter mit Character Controller in Unreal Engine 4 mit Visual Script für PC - Gunook

Video: So erstellen Sie einen 2D-Charakter mit Character Controller in Unreal Engine 4 mit Visual Script für PC - Gunook

Video: So erstellen Sie einen 2D-Charakter mit Character Controller in Unreal Engine 4 mit Visual Script für PC - Gunook
Video: Unreal Engine 5 | Blueprint For Beginners (2023) 2024, November
Anonim
Image
Image

So erstellen Sie einen 2D-Charakter mit Charakter-Controller in Unreal Engine 4 mit Visual Script für PC Hallo, ich bin Jordan Steltz. Ich entwickle Videospiele seit ich 15 bin. In diesem Tutorial lernen Sie, wie Sie einen einfachen Charakter mit Eingaben für die Bewegung auf einer 2D-Ebene erstellen.

Schritt 1: Einrichten von epischen Spielen und der Unreal Engine

Bevor wir beginnen, müssen wir sicherstellen, dass Sie alles haben, was Sie zusammen mit diesem Tutorial befolgen müssen. Sie benötigen eine Unreal-Engine (vorzugsweise eine Version höher als 4.16), 2D-Assets für den Charakter und einen Testraum. Randnotiz, ein Epic Games-Konto ist erforderlich, um die Engine zu verwenden, und der Epic Games-Launcher wird verwendet, um die Engine zu installieren. Das erste, was Sie tun müssen, ist, ein Epic-Spielekonto zu erstellen. Gehen Sie dazu zu https://www.epicgames.com/site/en-US/home und klicken Sie auf die Schaltfläche Anmelden, dann auf Anmelden und geben Sie die erforderlichen Informationen ein. Danach müssen wir den Epic Games Launcher installieren und danach eine Version von Unreal Engine installieren. Nachdem Sie Epic Games Launcher installiert haben, melden Sie sich mit dem neu erstellten Konto beim Launcher an, gehen Sie zur Registerkarte Unreal Engine und klicken Sie auf die Schaltfläche Engine installieren. Eine weitere Randbemerkung, das Klicken auf die Schaltfläche Engine installieren, fordert Sie auf, die neueste Version von Unreal Engine zu installieren, zu diesem Zeitpunkt ist es Unreal Engine 4.21.2.

Schritt 2: Einrichten des Projekts

Nachdem die Engine installiert ist, ist es an der Zeit, das Projekt zu erstellen. Unreal hat Vorlagen, die verwendet werden können, aber ich beginne gerne bei Null. Wenn Sie möchten, können Sie die 2D-Vorlage verwenden oder ein leeres Projekt erstellen, ihm einen Namen geben und es laden lassen. Randnotiz zum Starter-Inhalt, er wird für dieses Tutorial nicht benötigt, Sie können diesen Inhalt jedoch behalten, wenn Sie möchten.

Schritt 3: Animationen abrufen und Charakteranimationen einrichten

Als nächstes müssen wir die Assets importieren, ich habe meine von: https://www.kenney.nl/. Diese Site hat Charaktere und Tilemaps, aber wenn Sie Ihre eigenen Assets haben, können Sie diese gerne verwenden. Es gibt zwei Möglichkeiten, Assets in Unreal Engine zu importieren, die Drag-and-Drop-Methode, oder Sie können auf Importieren klicken und die benötigten Assets importieren. Außerdem empfehle ich, Ordner in der Engine zu erstellen, um die Suche zu erleichtern. Normalerweise erstelle ich Ordner für die Charaktere, Animationen und den Aufzählungsstatus, also importiere die Sprites und wenn du sie alle auswählst, benutze "Strg" + "A", um alle Sprites auszuwählen und klicke mit der rechten Maustaste auf eines der ausgewählten Sprites gehe zu „Sprite-Aktionen“und klicken Sie auf „Papier-2D-Textureinstellungen anwenden“. Diese Einstellung lässt die importierten Dateien viel schöner aussehen. Wenn die Sprites danach nicht ausgewählt sind, verwenden Sie das Steuerelement und eine Taste, um alle Bilder erneut auszuwählen, klicken Sie mit der rechten Maustaste und suchen Sie nach Sprite-Aktionen und klicken Sie auf "Sprites extrahieren". Als nächstes ist der lustige Teil das Erstellen von Animationen und das Einrichten der Animationszustände der Charaktere. Konzentrieren wir uns zunächst auf die Animationen selbst. Ich habe vergessen zu erwähnen, dass, bevor wir beginnen, den Charakterentwurf erstellt werden sollte, mit der rechten Maustaste auf die Blaupausenklasse klicken, es gibt eine Dropdown-Schaltfläche für alle Klassen, klicken Sie auf diese Schaltfläche und geben Sie "Papiercharakter" ein. Wählen Sie diese Option aus und geben Sie der Blaupause einen Namen. Ich werde meinen "EGA player_character" nennen. Nun, da es erstellt wurde, können wir die Animationen für den Spielercharakter erstellen. Wenn Sie Animationen von kenney.nl verwenden, werden die Animationsframes beispielsweise nummeriert, wenn es 2 Frames für die Laufanimation gibt, lautet der Name „Assetname_walk_0“usw. Beginnen wir mit den Laufanimationen, suchen Sie die entsprechenden Sprites und klicken Sie bei gedrückter Strg-Taste, um sie auszuwählen, klicken Sie dann mit der rechten Maustaste auf eines davon und die Option "Flipbook erstellen". Tun Sie dies für den Rest der Sprites zum Springen und die Todessprites.

Schritt 4: Umgang mit Eingaben und Aufzählungszuständen

Als nächstes Enumeration States und das Einrichten der Zeichenbewegung und der Eingaben. Aufzählungen werden verwendet, um den Zustand des Players zu speichern und sind hilfreich für die spätere Einrichtung der eingestellten Flipbook-Funktion. Um einen Aufzählungsplan zu erstellen, klicken Sie mit der rechten Maustaste auf "Blaupausen" und klicken Sie auf "Aufzählung". Als nächstes müssen wir die Aufzählung für die spätere Verwendung in der Funktion Flipbooks einrichten erstellen, danach müssen wir die Eingaben für den Player erstellen. Um dies zu tun, gehen Sie zu "Bearbeiten" >>" Projekteinstellungen" und suchen Sie "Engine", klicken Sie auf Input und es gibt 2 Mapping-Optionen "Action Mapping" und "Axis Mapping", Axis Mapping wird für die Bewegung nach links und rechts verwendet, Es wird eine Achsenzuordnung und eine Aktionszuordnung geben. Denken Sie daran, dass dies grundlegend ist und Sie Ihrem Charakter weitere Dinge hinzufügen können. Zuerst müssen Sie nur die Plus-Taste drücken, dann geben Sie ihm einen Namen, ich nenne ihn Jump. Wenn Sie einen Tasteneingang einstellen, gibt es viele Plattformen und verschiedene Controller, ich bleibe beim PC. Also setze ich den Schlüssel auf den Aufwärtspfeil und das Leerzeichen. Als nächstes ist die Achsenaktion, ich habe sie nach rechts verschieben und auf den rechten Pfeil gesetzt. Jetzt können wir uns auf Aufzählungen konzentrieren, es wird 2 Aufzählungen geben: Gehen und Springen. Sie können Ihre eigenen Beschreibungen der Aufzählungen hinzufügen. So fügen Sie sie hinzu, klicken Sie auf Neu und geben Sie der Aufzählung einen Namen und wenn Sie eine Beschreibung wünschen.

Schritt 5: Einrichten des Charakterplans

Jetzt können wir zur Programmierseite der Dinge kommen, zuerst das Standard-Sprite festlegen, indem wir auf die Sprite-Komponente klicken und die Option Quell-Flipbook suchen und die zuvor erstellte Leerlaufanimation auswählen. Jetzt müssen wir ein paar Variablen erstellen, wir brauchen einen Boolean, ein Boolean oder bool ist im Grunde eine wahre oder falsche Frage, bool sagt uns, ob sich der Spielercharakter nach rechts bewegt. Ich nenne es Move right gefolgt von einem Fragezeichen und ist gelandet. Ist gelandet wird später für die Sprunganimation und das On-landed-Event verwendet.

Schritt 6: Erstellen von Variablen

An dieser Stelle möchte ich die Kategorisierung der von uns erstellten Variablen ansprechen. Auf der rechten Seite befindet sich ein Panel mit Variablenname, Wert, Instanz editierbar (d.h. ist sie öffentlich und kann man sie im Editor ändern) und Kategorie, klicken Sie in das Kategorie-Textfeld und geben Sie der Kategorie einen Namen, schlage ich vor "Movement" dies enthält den bool und die Referenz auf die Enumeration State Machine, die wir zuvor erstellt haben. Wir müssen auch einen weiteren bewegungsbezogenen Bool erstellen, den ich als gelandet bezeichnen werde. Als nächstes ist es an der Zeit, sich auf die Variablen für die Flipbooks zu konzentrieren, für diese gibt es einen Variablentyp namens Paper Flipbook, setze ihn auf Objektreferenz, kompiliere den Blueprint, damit du die Variablen-Standardwerte bearbeiten kannst, aber ich muss davor warnen, die Standardwerte des booleschen Wertes zu ändern Variablen auf true setzen, wird das, was wir später machen, durcheinander gebracht. Erstellen Sie die Anzahl der Flipbook-Objektvariablen, die Sie benötigen. Danach müssen wir eine Kamera und eine Federarmkomponente hinzufügen. Um eine Komponente hinzuzufügen, klicken Sie einfach auf Komponente hinzufügen und suchen Sie nach Kamera, aber vergessen Sie nicht, dass auch ein Federarm erforderlich ist, also klicken Sie erneut auf Komponente hinzufügen suchen Sie nach Federarmauswahl es. Klicken und ziehen Sie nun die Kamera, falls sie nicht bereits ein Kind des Federarms auf dem Federarm ist.

Schritt 7: Einrichten der Kamera

Jetzt ist es an der Zeit, die Kameraeinstellungen im Detailbereich zu ändern. Unter den Kameraeinstellungen gibt es eine Kameraeinstellungsoption. Ändern Sie den Wahrnehmungsmodus auf orthografisch und ein Seitenverhältnis, das für Ihren Computerbildschirm funktioniert Ich bin mit Seitenverhältnissen nicht sehr gut, also ich habe gerade meins auf 2048 geändert, um Bildschirmknirschen zu verhindern, dann speichere und kompiliere das Projekt.

Randnotiz Legen Sie die Einschränkungen für das Zeichen auf x, y und z für Drehung und Position fest.

Schritt 8: Ändern des Spielmodus

Image
Image

Das nächste, was wir tun sollten, ist, die Spielmoduseinstellungen zu ändern, indem wir zum Bearbeiten-Tab gehen und Projekteinstellungen auswählen, dann Karten und Modi suchen Klicken Sie auf die Karottentaste nach ausgewähltem Spielmodus, es sieht so aus, als müsste ich einen neuen Spielmodus erstellen, also, wenn Ihre Optionen ausgegraut sind, wie meine, klicken Sie auf das Pluszeichen neben dem Namen des ausgewählten Spielmodus. Ich mache dies, damit wir den Spielercharakter bearbeiten können, der von Unreal verwendet wird, wenn wir das Spiel laden.

Schritt 9: Erstellen der Flipbook-Funktion einrichten

Es ist an der Zeit, mit der Einrichtung der Bewegungssteuerung der Spielerfiguren zu beginnen, doppelklicken Sie auf den von Ihnen erstellten Papierfigurenentwurf sich im Ansichtsfenster befinden, klicken Sie auf die 3. Registerkarte (wenn Sie die Standardeinstellung von Unreal Engine verwenden). Sie werden von einem leeren Bildschirm mit einer Box mit einer Karotte namens OnEvent BeginPlay begrüßt, machen Sie sich darüber noch keine Sorgen. Stattdessen werden wir eine eigene Flipbook-Funktion einrichten.

Unter der Registerkarte Komponenten befindet sich die Registerkarte Funktionen. Klicken Sie auf das Plus auf der Registerkarte Funktion. An dieser Stelle sollten wir die Variable erstellen, um die zuvor erstellte Zustandsmaschine zu speichern. Die Zustandsmaschine hilft dabei, einfach zwischen Animationen zu wechseln, ohne das Standard-Unreal verwenden zu müssen Stellen Sie die Flipbook-Funktion ein, doppelklicken Sie auf die neue Funktion und es gibt ein lila Kästchen mit dem Namen der neuen Funktion darauf klicken Sie darauf und es gibt eine Option für Eingaben Klicken Sie auf das Plus auf der Registerkarte Eingaben stellen Sie die Variable ein, indem Sie auf die Dropdown-Schaltfläche klicken und geben Sie in die Suchleiste den Namen der zuvor erstellten Aufzählung ein. Legen Sie dann die Instanz für den Status fest, indem Sie die Enum-Variable aus der Registerkarte "Variable" ziehen und dann auf die Option "Set" klicken. Klicken Sie dann auf die Karotte und ziehen Sie dann die Maustaste los. Es wird ein Menü angezeigt, das mit einem Suchleistentyp Flipbook in der Funktion anzeigt, wie z. B.: Ziel, das automatisch auf Sprite gesetzt wird, und neues Flipbook, wobei diese Flipbook-Option davon abgezogen und die Suche ausgewählt wird. Mit der Auswahl gibt es einen Index, standardmäßig ist es ein boolescher Wert, wir können dies ändern, indem wir die Zustandsmaschine per Drag & Drop in den Index ziehen, was uns die Möglichkeit gibt, die von uns erstellten Daumenkinos zu verwenden, diese Variablen per Drag & Drop zu verwenden in die entsprechenden Positionen, wie auch immer Sie es einrichten. Diese Auswahl wird das nächste Daumenkino entscheiden. Ziehen Sie nach dem Set Flipbook-Teil der Funktion das Set Flipbook ab und geben Sie return node ein. Ich tue dies aus Gründen der Sauberkeit, es ist nicht erforderlich. Das ist alles, was wir für die Flipbook-Funktion benötigen.

Schritt 10: Einrichtung der Bewegungskomponente

Als nächstes müssen wir die Bewegungskomponente einrichten. Gehen Sie in den Ereignisgraphen und klicken Sie mit der rechten Maustaste und suchen Sie Eingabeachse Ich habe die Eingabeachse für die Bewegung nach rechts MoveRight genannt. Dieses Event wird unser Motion Controller sein. Ziehen Sie als Nächstes den Draht von der Eingabeachse weg von der Karotte und suchen Sie vergleichen Float, wenn sich der Achsenwert nicht bereits in der Eingabeblase befindet, ziehen Sie den Achsenwertdraht in die Eingabeblase. Im Vergleichsfloat gibt es 3 wichtige Teile, wir werden den ==-Teil des Vergleichsfloats nicht verwenden. Im Abschnitt < müssen wir den Move right bool festlegen, indem wir die Variable aus dem Panel in den Ereignisgraphen ziehen und auf die Set-Option klicken und einmal auf das Kontrollkästchen klicken und setze das für den <, Teil des Vergleichsfloats auf false. Ziehen Sie daraus einen Draht von einer der Set-Anweisungen und suchen Sie die Eingabe Bewegung hinzufügen, nehmen Sie die andere Set-Anweisung und ziehen Sie sie in das Eingabeelement Bewegung hinzufügen des Skripts, ziehen Sie dann von der Eingabeachsenblase auf den Skalierungswert der Eingabe Bewegung hinzufügen Blase. Randnotiz, ich empfehle, so zu kommentieren, wie Sie dies tun, klicken Sie mit der linken Maustaste und ziehen Sie über die Codeteile, die Sie kommentieren möchten, und drücken Sie C.

Schritt 11: Sprungrichtung und Finalisierung

Image
Image

Schließlich zum Richtungsregler. Dies beinhaltet einen Vergleichsfloat. Erstellen Sie ein weiteres benutzerdefiniertes Ereignis, von dort aus benötigen wir einen Vergleichsfloat, im Vergleich zu 0 müssen wir die Geschwindigkeit abrufen, aber anstatt nur den Rückgabewert-Pin zu erhalten, teilen Sie den Rückgabewert-Pin mit der rechten Maustaste und klicken Sie auf den Split-Struktur-Pin. Verwenden Sie den Rückgabewert X als Eingabe für den Vergleichsfloat, wobei > und == zum True des Zweigs gehen, den wir erstellen müssen, indem wir die Variable nach rechts verschieben mit < verwenden, und der False des Zweigs, der zur Set-Control-Rotation geht, was Wir müssen die Rotationsblase mit der gleichen Methode aufteilen, die zum Teilen des Get-Geschwindigkeitsstifts verwendet wurde, und dann den Z-Stift auf 180,0 setzen. Hier klicken wir mit der rechten Maustaste und geben in die Suchleiste get controller ein, indem wir den Rückgabewert für Set Control Rotation Nodes verwenden. Der zweite Set-Control-Rotation-Knoten hat alles gleich 0. Eine weitere Sache ist das Springen, das wird etwas lang sein. Das erste, was wir für diesen Teil des Zeichensatzes tun, ist, den Eingabeachsensprung oder wie auch immer Sie sich entschieden haben, diese Schaltflächenzuordnung zu nennen, nachzuschlagen das Dreieck und der Suchsprung, beim Loslassen können wir den Stoppsprung nachschlagen. Wir sind dort jedoch noch nicht fertig, Rechtsklick und Nachschlagen können springen und den Rückgabewert in einer Verzweigung für das wahre Ereignis verwenden und sehen Sie, ob der Charakter fällt, indem Sie in die Suchleiste suchen, indem Sie den Rückgabewert verwenden, um unser Flipbook in den Ruhezustand zu versetzen (da der von mir verwendete Charakter keine fallende Animation hat, wie es aussieht.)

Jetzt ist es endlich an der Zeit, diesen Charakter im Spiel zu testen. Bevor Sie es testen, stellen Sie jedoch sicher, dass Sie den Animationscontroller und den Richtungscontroller nehmen und sie mit dem Ereignistick verbinden.

Empfohlen: