Unreal Engine bietet verschiedene Möglichkeiten, Funktionen für Ihre Projekte zu scripten. Einige sind ideal für Gameplay während der Laufzeit, während andere nur zum Erstellen von Werkzeugen im Editor nützlich sind.
Python-Scripting
Python-Scripting ist ideal für Produktions-Pipelines und die Interoperabilität zwischen 3D-Anwendungen, insbesondere in der Medien- und Unterhaltungsbranche. Python eignet sich hervorragend zur Automatisierung von Workflows in Unreal Editor und kann nicht für Laufzeit-Scripting verwendet werden. Python ist in viele Funktionen und Workflows integriert, die du in Unreal Engine verwenden würdest.
Mit Python-Scripting kannst du in Unreal Editor unter anderem folgende Dinge ausführen:
Erstellen von Asset-Management-Pipelines oder Workflows größeren Maßstabs, die Unreal Editor mit anderen 3D-Anwendungen verbinden, die du verwendest.
Automatisieren zeitaufwendiger Asset-Management-Aufgaben im Editor, etwa die Generierung von LOD-Meshs (Detaillierungsgrad) für Statische Meshs.
Inhalt im Level prozedural anordnen.
Steuere den Editor über Benutzeroberflächen, die du selbst in Python erstellst.
Python-Scripting ist ein Plugin, das du über das Hauptmenü unter dem Menü Bearbeiten im Plugins-Browser aktivieren kannst, wenn du das Python Editor Script Plugin und die Editor Scripting Utilities aktivierst.
Weitere Informationen zu den ersten Schritten in der Verwendung von Python in Unreal Engine findest du unter Scripting in Unreal Editor mit Python.
Für Maya-Nutzer sind Python-Workflows in wichtige Bereiche wie Animation, Control-Rig und IK-Rigs integriert. Weitere Informationen zur Verwendung von Python in diesen Workflows findest du unter den folgenden Links:
Blueprint-Visual-Scripting
Unreal Engine umfasst eine visuelle Scripting-Sprache mit dem Namen Blueprint. Dabei handelt es sich um ein abgeschlossenes Scripting-System mit einem knotenbasierten Interface, um Werkzeuge im Editor und Workflows, Gameplay-Elemente für Charaktere und Objekte, Animationen und Sounds auszulösen, und mehr zu erstellen. Das System ist äußerst flexibel und leistungsstark, da es Designern die Möglichkeit bietet, ihre Konzepte mithilfe einer Reihe von Werkzeugen umzusetzen, die im Allgemeinen nur Programmierern zur Verfügung stehen.
Blueprints sind ideal für Designer und Künstler, die Funktionalität ohne Programmiererfahrung entwickeln möchten. Sie eignen sich besonders gut für schnelles Prototyping, die visuelle Entwicklung von Logik und Blueprints lassen sich nahtlos in die restlichen Systeme von Unreal Engine integrieren.
Hier sind einige Möglichkeiten, wie du Blueprints im Editor oder zur Laufzeit verwenden kannst:
Einrichtung der Bewegung und des Verhaltens für das Gameplay
Auslösen von Animationen und Geräuschen zum abspielen
Erstellen einer Benutzeroberfläche mit UMG (Unreal Motion Graphics)
Erstellen von Werkzeugen im Editor mit Editor-Hilfsmittelwidgets
Interaktion mit Objekten, z. B. das Öffnen von Türen.
Das Spawnen von Feinden oder anderen Gameplay-Events
Hinzufügen von Logik zum Level, z. B. das Bewegen von Plattformen.
Und mehr!
Daher ist nicht jeder Blueprint gleich. Es gibt verschiedene Typen, die Informationen und Logik unterschiedlich verarbeiten. Zu diesen Typen gehören:
Dieser Blueprint-Typ umfasst einen Viewport und ein Knoten-Diagramm. Dies ist am nützlichsten für Creators, die Actors (z. B. Spieler-Charaktere, Feinde, Waffen zum Aufheben und so weiter) mit angewandter Logik hinzufügen wollen.
Dies ist wie eine Blueprint-Klasse, aber nur mit Knoten-Diagrammen. Sie umfasst Variablen und Komponenten, die von ihrem Parent geerbt wurden. Diese Blueprints können nur geerbte Eigenschaften modifizieren, was sie ideal zur Erstellung von Varianten einer Parent-Klasse macht. Du kannst dir diese wie die Beziehung zwischen Material und Material-Instanzen vorstellen.
Sie enthält benutzerdefinierte Funktionen, mit denen du Daten zwischen allen Blueprints, die sie verwenden, austauschen und senden kannst. Du kannst dieses Asset erstellen und in deinem Inhaltsbrowser referenzieren.
Das ist ein spezialisierter Blueprint-Typ, der nur in einem geladenen Level existiert. Er kann als Level-weites globales Event-Diagramm dienen, das Actors oder andere Events auslöst, wie z. B. das Abspielen einer Level-Sequenz.
Dabei handelt es sich um einen spezialisierten Blueprint, der in den Animationsmodi Editor integriert ist. Sie werden verwendet, um die Animation eines Skelett-Mesh während der Simulation oder des Gameplays zu steuern. Der Unterschied im Knoten-Diagramm dieses Blueprints besteht darin, dass es so eingerichtet ist, dass es Animationen mischt, die Bones eines Skeletts steuert und eine Logik erstellt, die die endgültige Pose definiert, die pro Frame verwendet werden soll.
Weitere Informationen zur Verwendung von Blueprints in Ihren Projekten findest du in den folgenden Themen:
Animationsblueprints
Animationsblueprints sind Teil des Animationsmodus-Editors. Dies ist eine spezielle Art von Blueprint, mit der die Animation eines Skelett-Mesh gesteuert und verwaltet wird. Er wird hauptsächlich für Charaktere verwendet, die im Gameplay eingesetzt werden, wobei du komplexe Animation mithilfe des knotenbasierten Scriptings von Blueprints definieren kannst. Blueprints werden normalerweise für das Echtzeit-Gameplay verwendet, aber du kannst damit auch Echtzeit-Animationseffekte wie Echtzeit-Physik, Stoffsimulation oder Mesh-Deformation implementieren.
Weitere Informationen zu Animationsblueprints findest du im Abschnitt „Verwenden von Animationen in deinem Projekt“ dieses Guides oder unter Animationsblueprints.
Editor-Hilfsmittelwidgets
Editor-Hilfsmittelwidgets ermöglichen es dir, deine eigenen Werkzeuge in Editor, Ebenen und Interfaces mit Blueprint-Visual-Scripting zu erstellen, um Workflows zu optimieren. Diese nützlichen Widgets können auf Editor-Daten wie Actors, Assets und Levels zugreifen und diese bearbeiten. Jedes von dir erstellte Hilfsmittelwidget kann angedockt werden, wie jedes andere Panel in Unreal Editor.
Editor-Hilfsmittelwidgets eignen sich ideal zur Optimierung Ihrer Workflows, zur Automatisierung wiederkehrender Aufgaben, zur Verwaltung von Assets und zur Bearbeitung von Inhalten direkt in einem Level.
Weitere Informationen zu diesen und wie du sie verwenden kannst, findest du hier:
„Scriptable Tools“-System
Das Scriptable Tools-System bietet Funktionen und einen Editor-Modus, um benutzerdefinierte interaktive Werkzeuge zu erstellen, mit dem Ziel, es Nicht-C++-Programmierern zu ermöglichen, interaktive Werkzeuge im Editor zu erstellen. Dieses Plugin stellt das „Interactive Tools Framework“ für Blueprint bereit und bietet Entwicklern und technischen Künstlern die Möglichkeit, Werkzeuge zu entwickeln, die sich ähnlich verhalten wie die im Modellierungsmodus.
Diese ähneln möglicherweise Editor-Hilfsmittelwidgets, verwenden aber ein nicht-modales Dialogfenster mit einer benutzerdefinierten Nutzeroberfläche, in der du verschiedene Arten von Editor-Scripting ausführen kannst. Obwohl es an sich mächtig und nützlich ist, sind die Möglichkeiten als nicht-modaler Dialog eingeschränkt. Die „Scriptable Tools“ sind modal, was bedeutet, dass kein anderes Werkzeug aktiv sein kann, während es verwendet wird. Dies bedeutet auch, dass der Editor-Zustand strikter verwaltet wird. „Scriptable Tools“ können die Maus effizienter erfassen, die Benutzeroberfläche hat mehr Struktur als Hilfswidgets und du kannst die Werkzeuge verwenden, die du zur Laufzeit erstellst.
Einige Anwendungsfälle für „Scriptable Tools“ sind:
Zeichnen grundlegender 3D-Geometrie wie Linien und Punkte.
Hinzufügen von Eigenschaftssätzen über Blueprint zu Werkzeugen, damit sie als für Nutzer sichtbare Werkzeugeinstellungen fungieren.
Erstellen eines oder mehrerer 3D-Gizmos, steuern ihrer Positionen und reagieren auf Transformationsänderungen.
Kombinieren von skriptfähigen Werkzeugen mit anderen Funktionen der Engine, wie z. B. Prozedurale Inhaltserstellung (PCG) und Bewegungsdesign.
Weitere Informationen findest du hier unter „Scriptable Tools“-System.
Nächste Seite
Entwerfen und Erstellen von Welten in Unreal Engine für Maya-Nutzer
Eine Übersicht der Design-Werkzeuge von Unreal Engine zur Erstellung von Szenen für Maya-Nutzer.