Einleitung
Diese Seite bietet einen allgemeinen Überblick über die wichtigsten Systeme und Workflows der Unreal Engine und vergleicht sie mit den häufig verwendeten Editoren, Werkzeugen und Asset-Typen von Unity. Dieses Dokument soll Unity-Entwicklern dabei helfen, vertraute Workflows in der Unreal Engine umzusetzen. Mehr über die einzelnen Funktionen erfahren Sie über die Links in den einzelnen Abschnitten.
Diese Seite enthält Referenzen zu Werkzeugen und Funktionen auf Basis der Versionen Unreal Engine 5.5.4 und Unity 6 (6000.0.30f1). Funktionsreferenzen können in anderen Versionen beider Engines anders aussehen.
Gameplay
Physics
Einen detaillierteren Überblick über die Funktionen von Chaos Physics finden Sie in der Dokumentation zu Physik.
Physik-Engine
Die Unreal Engine enthält Chaos Physics, eine leichtgewichtige Physik-Simulation, die von Grund auf für die Anforderungen von Spielen der nächsten Generation entwickelt wurde. Chaos Physics verfügt über viele Funktionen wie Zerstörung, vernetzte Physik, Festkörper-Physik, Fahrzeuge und mehr.
Die Standard-Physik-Engine von Unity für 3D-Spiele ist NVIDIA PhysX, die über viele ähnliche Funktionen wie Chaos Physics verfügt.
Chaos Destruction
Das Chaos-Destruction-System ist eine Sammlung von Werkzeugen in der Unreal Engine, mit denen Sie in Echtzeit Zerstörungen in Filmsequenz-Qualität erzielen können. Das System sieht nicht nur großartig aus, sondern ist auch für Performance optimiert und bietet Künstlern und Designern mehr Kontrolle über die Erstellung von Inhalten.
Das Chaos-Destruction-System verwendet Geometrie-Sammlungen, eine Art von Asset, das aus einem oder mehreren statischen Meshs erstellt wird, einschließlich der in Blueprints geschachtelten. Diese Geometrie-Sammlungen können zersplittert werden, um eine Zerstörung in Echtzeit zu erreichen.
Das System bietet eine noch nie dagewesene Kontrolle über die Zersplitterung, indem es einen intuitiven nicht-linearen Workflow verwendet. Der Benutzer kann mehrere Ebenen der Zersplitterung erstellen und auch Teile der Geometrie-Sammlung selektiv zersplittern, um eine größere künstlerische Kontrolle zu erhalten. Benutzer können auch die Schwellenwerte für den Schaden pro Cluster definieren, die eine Zersplitterung auslösen.
Sie können mehr über Chaos Destruction lernen, indem Sie die Dokumentation über Chaos Destruction lesen.
Vernetzte Physik
Vernetzung, oder Replikation in Spielen, bezieht sich auf die Fähigkeit, Gameplay-Informationen zwischen mehreren Rechnern über eine Internetverbindung zu kommunizieren. Die Unreal Engine verfügt über ein stabiles Framework für die Vernetzung, das Entwicklern hilft, die Erstellung von Multiplayer-Spielen zu rationalisieren.
Vernetzte Physik ist Teil des Frameworks für die Vernetzung und aktiviert physikgesteuerte Simulationen in einer Mehrspieler-Umgebung. In der Unreal Engine bezieht sich die Physik-Replikation auf Actors mit replizierten Bewegungen, die die Physik simulieren. Diese Simulationen laufen während des Gameplays innerhalb des lokalen Clients (Rechner des Spielers).
Mehr über Vernetzte Physik erfahren Sie in der Dokumentation zu Vernetzte Physik.
Festkörper-Dynamik
Chaos Physics bietet viele Funktionen für die Festkörper-Dynamik. Dies umfasst Reaktionen auf Kollisionen, Tracing, Physik-Beschränkungen sowie Dämpfung und Reibung.
Kollision
In der Unreal Engine ist die Kollision in die meisten Actor-Komponenten eingebaut, die die Physik-Engine verwenden. Die Einstellungen für die Kollision eines Actors können in der Sektion Kollision im Details-Panel geändert werden. Oder Sie können Simulation Generiert Treffer-Events aktivieren, um dem Objekt zu erlauben, Treffer-Events auszulösen, auf die Sie über Blueprints oder Code zugreifen können, um Kollisionen zu erkennen. Dies ist vergleichbar mit dem Handling von Kollisionen in Unity durch Verwendung von OnCollisionEnter in C# oder Visual Scripting.
Mehr Informationen zum Einrichten von Kollisionen für Ihre Actors finden Sie in der Dokumentation zu Kollision.
Traces mit Ray Casting
Das Chaos-Physics-System verfügt über eine Vielzahl von Tracing-Methoden. Traces bieten eine Methode, um externe Informationen zu einem Actor zu sammeln. Diese Informationen können dann zur Laufzeit verwendet werden, um auf veränderte Gameplay-Bedingungen zu reagieren.
Für die Ausführung eines Trace stehen verschiedene Optionen zur Verfügung. Sie können verschiedene Typen von Traces verwenden, wie z. B. Linien-, Kugel-, Box- oder Kapsel-Traces. Sie können auch Traces für einzelne oder mehrere Treffer und sogar Traces für bestimmte Typen von Objekten oder Kollisionskanäle erstellen.
Das Tracing-System in Unreal ist dem Raycasting-System von Unity ähnlich.
Weitere Informationen zum Tracing finden Sie in der Dokumentation Traces mit Raycasts.
Chaos-Stoff
Chaos Cloth bietet präzise und performante Simulationen von Stoffen für Spiele und Erlebnisse in Echtzeit. Das System verfügt über umfangreiche Steuerelemente für den Benutzer sowie physikalische Reaktionen wie Wind, um eine bestimmte künstlerische Vision zu erreichen. Darüber hinaus verfügt Chaos Cloth über ein leistungsstarkes Animationsantriebssystem, das ein Stoff Mesh so deformiert, dass es mit dem animierten Skelett-Mesh seines Parents übereinstimmt.
Chaos Cloth bietet auch eine Stoffsimulation mit Machine Learning. Dieses System führt zu einer wiedergabetreuen Simulation im Vergleich zu einem traditionellen, auf Physik basierenden Modell, indem es einen trainierten Datensatz verwendet, der in Echtzeit verwendet werden kann, um Ergebnisse zu erzielen, die zuvor nur mit einer Offline-Simulation möglich waren.
Weitere Informationen über Chaos Cloth finden Sie in der Dokumentation zu Chaos Cloth.
Chaos Vehicles
Chaos Vehicles ist das leichtgewichtige System der Unreal Engine für Simulationen der Fahrzeugphysik. Dieses System bietet dem Benutzer mehr Flexibilität, indem es eine beliebige Anzahl von Rädern pro Fahrzeug simuliert. Sie können auch eine beliebige Anzahl von Vorwärts- und Rückwärtsgängen konfigurieren, um sie weiter anzupassen.
Chaos Vehicles kann für komplexe Fahrzeugsimulationen konfiguriert werden. Sie können eine beliebige Anzahl von aerodynamischen Oberflächen hinzufügen, die an bestimmten Positionen des Fahrwerks für Abtrieb oder Auftrieb sorgen. Diese können Fahrzeugspoiler oder sogar Luftfahrzeugflügel oder -ruder simulieren. Jede dieser Steuerflächen kann über Rollachse, Nickachse und Gierachse gesteuert werden.
Weitere Informationen zu Chaos Vehicles finden Sie in der Dokumentation Chaos Vehicles.
Flüssigkeitssimulationen
Die Unreal Engine umfasst eine Gruppe von eingebauten Werkzeugen zum Simulieren von 2D- und 3D-Flüssigkeitseffekten in Echtzeit. Diese Systeme sind physikbasierte Simulationsmethoden, mit deren Hilfe Sie realistische Effekte für Dinge wie Feuer, Rauch, Wolken, Flüsse, Spritzer und am Strand brechende Wellen erzeugen können.
Der Werkzeugsatz ist als offene Plattform für Experimente konzipiert und nutzt Simulationsstufen, wiederverwendbare Module und robuste Daten-Interfaces.
Mehr Informationen zu Simulationen von Flüssigkeiten finden Sie in der Dokumentation zur Flüssigkeitssimulation.
Künstliche Intelligenz
Die Unreal Engine verfügt über eine Vielzahl von Systemen zum Erstellen und Verwalten von KI-Agents (NPCs) während des Gameplays.
Simulation von KI-Agents im großen Maßstab
MassEntity ist ein auf das Gameplay fokussiertes Framework, das für hochperformante, datenorientierte Simulationen entwickelt wurde. MassEntity kann für die effiziente Verwaltung und das Rendering einer großen Anzahl von Entitäten auf dem Bildschirm verwendet werden.
Mehr Informationen dazu finden Sie in der Dokumentation zu MassEntity.
Simulation des KI-Agent-Verhaltens
Unreal Engine verfügt über KI-Agent-Funktionen in den folgenden Kategorien: Wahrnehmung und Stimuli, Entscheidungsfindung, Weltnavigation und Umgebungsinteraktionen. Jede Kategorie hat ein oder mehrere Systeme, die Ihnen helfen, die gewünschten Ergebnisse zu erzielen.
Wahrnehmung und Stimuli
Auf dem Gebiet der Wahrnehmung und Stimuli verfügt die Unreal Engine über die KI-Komponenten Pawn-Erkennung, Pawn-Geräusch-Emitter und KI-Wahrnehmung.
KI-Wahrnehmung kann verwendet werden, um zu definieren und zu handhaben, zu welchen Sinnen ein KI-Agent Zugang hat. Die KI-Wahrnehmungskomponente ist ein Komponententyp, den Sie dem KI-Controller-Blueprint eines Pawns über das Komponenten-Fenster hinzufügen können. Mit dieser Komponente wird definiert, worauf die Sinne lauschen/achten sollen, welche Parameter für die Sinne gelten und wie auf erkannte Sinneswahrnehmungen reagiert werden soll.
Sie können auch verschiedene Funktionen verwenden, um Informationen darüber zu erhalten, was erkannt wurde, welche Actors erkannt wurden, oder sogar einen bestimmten Erkennungstyp umzuschalten.
Weitere Informationen hierzu finden Sie in der Dokumentation zu KI-Wahrnehmung.
Entscheidungsfindung
Auf dem Gebiet der Entscheidungsfindung verfügt die Unreal Engine über Verhaltensbäume und State Trees. Diese Assets enthalten die Logik, die KI-Agents verwenden, um während des Gameplays Entscheidungen zu treffen.
Die Verhaltensbaum-Assets enthalten ein Entscheidungsdiagramm mit einer Vielzahl von Knoten, die wiederum Logik enthalten, die der KI-Agent ausführen kann. Der Baum beginnt am Stamm und führt bestimmte Knoten aus, die auf Daten basieren, die in einem Blackboard-Asset gespeichert sind, oder anderen Daten, die vom Agent selbst stammen. Verhaltensbäume visualisieren auf intuitive Weise, wie KI-Agents Entscheidungen treffen und können so konfiguriert werden, dass sie wiederverwendbar und flexibel sind.
Weitere Informationen hierzu finden Sie in der Dokumentation Verhaltensbäume.
StateTree ist ein allgemeiner hierarchischer Zustandsautomat, der die Selektoren von Verhaltensbäumen mit Zuständen und Übergängen von Zustandsmaschinen kombiniert. StateTree kann verwendet werden, um eine hochperformante Logik zu erstellen, die flexibel und organisiert bleibt.
Weitere Informationen hierzu finden Sie in der Dokumentation zum State Tree.
Weltnavigation
Auf dem Gebiet der Weltnavigation verfügt die Unreal Engine über ein voll funktionsfähiges System für KI-Agents.
Das Navigationssystem bietet effiziente Pfadfindungsmöglichkeiten für KI-Agents in Ihrem Projekt. Sie können einen Navigationsmesh-Actor im Level erstellen, um die Navigation für Ihre Agents zu erstellen und auszuarbeiten. Sie können auch Navigationsmesh-Modifikatoren und Benutzerdefinierte Navigationsbereiche verwenden, um die Kosten für das Durchqueren bestimmter Gebiete zu beeinflussen – und damit aktiv Einfluss darauf nehmen, wie die KI-Agents ihren optimalen Pfad zu ihrem Ziel wählen.
Darüber hinaus verfügt das System über zwei Ausweichsysteme – Reciprocal Velocity Obstacles und Detour Crowd Manager, um KI-Agents dabei zu helfen, dynamische Elemente in ihrer Umgebung und untereinander zu vermeiden.
Mehr Informationen hierzu finden Sie in der Dokumentation zum Navigationssystem.
Umgebungsinteraktionen
Auf dem Gebiet der Umgebungsinteraktionen verfügt die Unreal Engine über Smart Objects.
Smart Objects sind Objekte, die im Level platziert werden und mit denen KI-Agents und Spieler interagieren können. Diese Objekte enthalten alle Informationen, die für diese Interaktionen benötigt werden. Smart Objects sind Teil einer globalen Datenbank und verwenden eine räumliche Partitionierungsstruktur. Dies bedeutet, dass sie durch Nutzung von Filtern wie Suchbereich um den Agenten und Gameplay-Tags zur Laufzeit abgefragt werden können.
Mehr Informationen dazu finden Sie in der Dokumentation zum Smart Object.
Machine Learning
Um komplexere KI-Lösungen zu erschaffen, bei denen KI-Agents lernen und sich anpassen können, bietet die Unreal Engine das Plugin Learning Agents, mit dem Sie KI-Agents unter Verwendung von Algorithmen wie Reinforcement Learning trainieren können. Dies ist das Unreal-Engine-Äquivalent zum MLAgents-Paket von Unity.
Weitere Informationen hierzu finden Sie in der Dokumentation zu Learning Agents.
Charaktere und Objekte animieren
Animations-Blueprints sind das Äquivalent der Unreal Engine zu den Animator-Controllern von Unity. Animations-Blueprints umfassen ein Animationsdiagramm und einen standardmäßigen Blueprint-Event-Graph, mit dem Sie an einem einzigen Einstiegspunkt Parameter definieren und komplexe Verhaltensweisen und Logiken für Animationen scripten können.
Weitere Informationen hierzu finden Sie in Animations-Blueprints Dokumentation.
Wenn Sie es vorziehen, Animationen mit einer Zustandsmaschine zu organisieren, können Sie Zustandsmaschine-Knoten in Ihrem Animationsdiagramm erstellen und dann auf diese doppelklicken, um ihre eigenen speziellen Unterdiagramme zu öffnen. Sie können dann neue Zustände, Leitungen und Zustands-Aliase erstellen und Verbindungen zwischen ihnen herstellen. Jeder Zustand besitzt ein eigenes Animationsdiagramm, das den Output des Zustands und die Übergänge zwischen den Verbindungen steuert.
Weitere Informationen hierzu finden Sie in der Dokumentation State Machines.
Blendspaces definieren ein Diagramm von Animationen, die auf Basis von Parametern gemischt werden. Ein 2D-Blendspace kann zum Beispiel vorwärts, rückwärts, links und rechts laufende Animationen auf der Basis der Geschwindigkeit und der Zugewandtheit eines Charakters einblenden.
Weitere Informationen hierzu finden Sie in der Dokumentation zu Blendspaces.
Unity verwendet das Zeitleiste-Werkzeug, um Filmsequenzen zu animieren. Der Sequencer-Editor ist das Äquivalent der Unreal Engine zur Timeline von Unity und bietet eine Schnittstelle, die einem nichtlinearen Editor ähnelt, um Animationen, Effekte und Kamerabewegungen zu koordinieren. Mit dem Sequencer können Sie Level-Sequenzen definieren, die Filmsequenzen oder eigenständige Animationen für Charaktere und Objekte darstellen.
Weitere Informationen zum Erstellen von Sequenzen finden Sie in der Dokumentation zum Sequencer Editor.
Die Unreal Engine umfasst auch das Control-Rig-System, mit dem Sie Skelett-Meshs für die Animation direkt im Editor erstellen können. Mit Control-Rig können Sie benutzerdefinierte Steuerelemente für einen Charakter erstellen und einrichten, ihn im Sequencer animieren und eine Vielzahl anderer Werkzeuge für die Animation verwenden.
Weitere Informationen zum Rigging in der Unreal Engine finden Sie in der Dokumentation zum Control Rig.
Um Bilder und Video-Sequenzen im Unreal Editor aufzunehmen und zu exportieren, können Sie die Film-Rendering-Warteschlange verwenden. Dies ist das Äquivalent zum Unity-Werkzeug Recorder. Die Film-Rendering-Warteschlange kann zum Rendern und Exportieren von Frame-für-Frame-Sequenzen, In-Game-Bildern und/oder Videoaufnahmen in verlustfreier Qualität verwendet werden.
Weitere Informationen zur Film-Rendering-Warteschlange finden Sie in der Dokumentation Rendering High Quality Frames with Movie Render Queue.
Gameplay-Framework
Das Gameplay-Framework in der Unreal Engine ist eine Sammlung von Klassen, die Ihnen eine modulare Grundlage bietet, auf der Sie Ihr Gameplay-Erlebnis aufbauen können, z. B. Spiel-Modus, Spielerzustand, Controller, Pawns und Kameras.
In Unity werden ähnliche Strukturen von Komponenten wie CharacterController und MonoBehaviour Scripts gehandhabt, die an GameObjects angekoppelt sind, um Verhalten zu definieren.
Mehr Informationen zur Nutzung des Gameplay-Frameworks finden Sie in der Dokumentation zum Gameplay-Framework.
Input
Das erweiterte Eingabesystem wurde entwickelt, um die Eingabe von Spielern über mehrere Geräte hinweg, einschließlich Tastaturen, Gamepads und Touchscreens, einzubeziehen.
Sie können Input-Aktionen (für Aktionen wie Springen und Schießen) und Input-Achsen (für kontinuierliche Inputs wie Bewegung oder Drehung der Kamera) definieren. Diese Aktionen und Achsen können an bestimmte Tasten, Schaltflächen und/oder sogar Touch-Gesten gebunden werden, was ein hohes Maß an Personalisierung ermöglicht.
Um mit dem erweiterten Eingabesystem zu beginnen, können Sie im Inhaltsbrowser erweiterte Input-Assets erstellen, indem Sie auf die Schaltfläche + Hinzufügen klicken und Eingabe auswählen. Diese Assets können konfiguriert werden, um die Tastaturbelegungen und Inputs für Ihr Spiel zu definieren.
Sie können diese Aktionen und Achsen an Input-Events des Spielers in Ihrer Spiel-Logik binden. Das System kann verwendet werden, um verschiedene Inputs zu verwalten (z. B. Tastatur vs. Gamepad) und bietet die Möglichkeit, komplexe Steuerelemente zu definieren.
Unity-Entwickler kennen vielleicht das Unity Input System, das in seiner Funktionalität dem erweiterten Eingabesystem in der Unreal Engine ähnelt. In der Unreal Engine ist Enhanced Input der Standard für komplexes Input-Handling oder Remapping von Steuerelementen zur Laufzeit.
Weitere Informationen zum Definieren von Input in Ihrem Projekt finden Sie in der Dokumentation Erweiterte Eingabe.
Erstellung und Design der Welt
Die Funktionalität zum Erstellen von Welten in der Unreal Engine ist im Level-Viewport in verschiedene Editor-Modi unterteilt.
Modellierung und Level-Prototyping
Der Modellierungsmodus bietet ähnliche Funktionen wie die Erweiterung ProBuilder von Unity, mit umfangreichen Werkzeugen zur Bearbeitung von Scheitelpunkten, Kanten, Flächen und UVs, ähnlich wie Sie sie in einem Modellierungsprogramm verwenden würden.
Sie können den Modellierungsmodus aktivieren, indem Sie im Viewport auf die Dropdown-Liste „Modi“ klicken und „Modellierung“ wählen.
Weitere Informationen über die Modellierung in der Unreal Engine finden Sie in der Dokumentation Übersicht über den Modellierungsmodus.
Erstellen eines Terrains/einer Landschaft
Der Landschaftsgestaltungs-Modus bietet ähnliche Funktionen wie das Terrain-System von Unity. Sie können den Landschaftsgestaltungs-Modus verwenden, um eine Landschaft zu erstellen und sie zu formen, indem Sie einen Werkzeugsatz verwenden, der dem Terrain-System von Unity ähnelt, wie z. B. Anheben, Absenken und Abflachen.
Sie können den Landschaftsgestaltungs-Modus aktivieren, indem Sie im Viewport auf das Dropdown-Liste-Menü „Modi“ klicken und „Landschaft“ auswählen.
Um mehr darüber zu erfahren, lesen Sie die Dokumentation Schnellstart-Anleitung Landschaft. Lesen Sie außerdem die Dokumentation Landschaft im Freien, um zu erfahren, wie Sie Terrain für große, offene Umgebungen im Freien erstellen können.
Vegetation
Der Vegetationsmodus ähnelt dem Terrain-System von Unity zum Hinzufügen und Verwalten von Vegetation. Im Vegetationsmodus können Sie Bäume, Gras und andere Vegetation in Ihr Level malen und dabei Eigenschaften wie Dichte, Höhe und Drehung der einzelnen Teile einstellen.
Ein wesentlicher Unterschied zum Terrain-System von Unity besteht darin, dass der Vegetationsmodus der Unreal Engine verwendet werden kann, um Vegetation auf jedes beliebige Objekt zu malen, nicht nur auf die Landschaft. Dieser Modus bietet Ihnen eine intuitive Möglichkeit, Ihre Welt mit natürlichen Elementen zu bevölkern und gleichzeitig zu kontrollieren, wie diese in der Landschaft oder auf einer beliebigen Oberfläche im Level erscheinen.
Sie können den Vegetationsmodus aktivieren, indem Sie im Viewport auf die Dropdown-Liste „Modi“ klicken und „Vegetation“ auswählen.
Um mehr darüber zu erfahren, lesen Sie die Dokumentation zum Vegetationsmodus. Außerdem können Sie in der Dokumentation zu den Open-World-Werkzeugen mehr über das prozedurale Füllen großer Räume mit Statisches-Mesh-Assets lernen, um Räume im Freien zu erstellen, die sich natürlich und lebendig anfühlen.
Prozedurale Inhaltsgenerierung (Procedural Content Generation, PCG)
Das Procedural Content Generation Framework (PCG) ist ein Werkzeugsatz zum Erstellen von prozeduralen Inhalten in der Unreal Engine. PCG kann von Künstlern und Designern verwendet werden, um schnell und iterativ Werkzeuge und Inhalte beliebiger Komplexität zu erstellen – angefangen bei Asset-Diensten wie Gebäude- und Biomgeneration bis hin zu kompletten Welten.
PCG ist auf Erweiterbarkeit und Interaktivität ausgelegt und ermöglicht die Integration in bestehende Pipelines für die Welt-Erstellung, wodurch die Grenzen zwischen prozeduralem und traditionellem Workflow effektiv verwischt werden.
Weitere Informationen zum Erstellen prozeduraler Inhalte in der Unreal Engine finden Sie in der Dokumentation zum Framework zur prozeduralen Inhaltserstellung.
Wassersystem
Mit dem Water System können Sie Flüsse, Seen und Ozeane erstellen, die alle mit Ihrem Terrain interagieren und mit einem Spline-basierten Workflow zusammenarbeiten.
Unity-Entwickler sind vielleicht mit dem Water System vertraut, das für Projekte, die HDRP verwenden, zur Verfügung steht. Das Water System in der Unreal Engine ist skalierbar für Projekte aller Größen und unterstützt alle Plattformen.
Weitere Informationen zur Aktivierung von Wasser im Level finden Sie in der Dokumentation zum Water System.
Visuelle Objekte und Rendering
Unity verwendet das Scriptable Rendering Pipeline System (SRP) und stellt Vorlagen wie die High Definition Rendering Pipeline (HDRP) zur Verfügung. Die Unreal Engine hat eine vereinheitlichte, robuste und stark anpassbare Pipeline zum Rendern. Das bedeutet, dass die Geräteunterstützung, die Funktionalität und die Funktionen nicht auf Vorlagen aufgeteilt sind.
In der Unreal Engine können Sie die Skalierbarkeitseinstellungen verwenden, um die visuelle Wiedergabetreue Ihres Spiels zu verändern. Mehr dazu erfahren Sie in der Dokumentation Referenz Skalierbarkeit.
Lichtquellen
Die Workflows für die Beleuchtung in der Unreal Engine sind denen in Unity ähnlich. Sie können den Levels Lichter hinzufügen oder sie daraus entfernen, und Sie können verschiedene Typen von Lichtquellen verwenden, wie z. B. direktionales Licht, Punktlicht und Scheinwerferlicht.
Unter Erstellen > Licht können Sie die Form der Lichtquelle wählen, die Sie Ihrem Level hinzufügen möchten. Dadurch wird ein neues Objekt erstellt. Mehr über Lichttypen und deren Verwendung erfahren Sie in der Dokumentation Lichttypen und ihre Mobilität.
Himmelsleuchten
Das Himmelslicht erfasst die weit entfernten Teile Ihres Levels und wendet sie als Licht auf die Szene an. Das bedeutet, dass das Erscheinen des Himmels und seine Beleuchtung/Reflexionen übereinstimmen, selbst wenn Ihr Himmel aus der Atmosphäre kommt, oder aus einer Ebene von Wolken über einer Skybox, oder aus entfernten Bergen.
Ein neues Level in der Unreal Engine hat standardmäßig einen Ordner Lighting im Outliner-Panel. Dieser Ordner enthält eine Standard-Gruppe von Beleuchtungsobjekten, wie z. B. ein DirectionalLight, ExperimentalHeightFog und ein SkyLight. Um mehr darüber zu erfahren, lesen Sie die Dokumentation zu Himmelslichter.
Globale Beleuchtung und Reflexionen mit Lumen
Lumen ist das vollständig dynamische globale Beleuchtungs- und Reflexionssystem von Unreal Engine 5, das für Geräte der nächsten Generation konzipiert ist. Es ist das Standardsystem für globale Beleuchtung und Reflexionen. Das bedeutet, dass das Licht abprallt und mit den Oberflächen interagiert. So wird sofort eine natürlich wirkende Beleuchtung erstellt, ohne dass die Beleuchtung mit Hilfe vorberechneter Workflows gebaket werden muss.
Wenn Sie mehr über die Verwendung von dynamischer globaler Beleuchtung und Reflexionen in Ihrem Projekt erfahren möchten, lesen Sie die Dokumentation zu Globale Beleuchtung und Reflexionen mit Lumen.
Nachbearbeitung
In Unity wird die Nachbearbeitung über Volumes gehandhabt. Nachdem Sie ein GameObject mit einer Volume-Komponente erstellt haben, können Sie ein Nachbearbeitungsprofil zuweisen und einstellen, ob es global oder lokal ist.
In der Unreal Engine wird die Nachbearbeitung hauptsächlich mit platzierten Volumes gehandhabt. Sie kann jedoch auch auf diese anderen Arten angewendet werden. Insgesamt funktioniert die Nachbearbeitung auf ähnliche Weise, wobei Sie die Standardwerte außer Kraft setzen können.
| Möglichkeiten der Anwendung der Nachbearbeitung | Beschreibung |
|---|---|
Projekt-Einstellungen | Standardmäßig wendet die Unreal Engine eine Gruppe von Nachbearbeitungseffekten auf Ihr Spiel an, die auf den Skalierbarkeitseinstellungen basieren. Diese Einstellungen werden projektweit angewendet, sofern sie nicht außer Kraft gesetzt werden. Sie können die Standard-Nachbearbeitungseffekte, die global auf das Projekt angewendet werden, ändern, indem Sie zu Projekt-Einstellungen > Engine > Rendering gehen. |
Kamerakomponente | Jede Kamerakomponente hat ihre eigene Gruppe von Einstellungen, die außer Kraft gesetzt werden können, um sie nachzubearbeiten. Diese funktionieren pro Kamera, d. h. Kameras, die keine Einstellungen außer Kraft setzen, wenden die in den Projekt-Einstellungen definierten Standard-Effekte an oder verwenden Werte, die auf ein platziertes Volumen angewendet werden. |
Nachbearbeitungsvolumen | Ein Nachbearbeitungsvolumen kann einem Level hinzugefügt werden, indem Sie auf Hinzufügen > Volumen gehen. Dadurch wird ein neuer Level-Actor erstellt, der die Standard-Einstellungen für die Nachbearbeitung außer Kraft setzt, ähnlich wie die Volumenkomponente in Unity. Diese Volumen können Nachbearbeitungen anwenden, wenn sich die Spielerkamera innerhalb des Volumens befindet, oder sie können außer Kraft gesetzte Einstellungen global auf das gesamte Level anwenden, wenn ihre Einstellung Unendliche Ausdehnung (Ungebunden) aktiviert ist. Dies funktioniert ähnlich wie die Option Globaler Modusim Volume-Framework von Unity. |
Materialien
Unity verwendet das Shader-Diagramm, um neue Shader zu definieren. Das Äquivalent der Unreal Engine ist das Materialsystem. Shader und Materialien in der Unreal Engine unterscheiden sich auf folgende Weise voneinander:
Ein Shader ist ein Low-Level-Konstrukt in C++, das ein Basis-Schattierungsmodell definiert, wie z. B. Beleuchtet, Unbeleuchtet, Clear Coat oder Haare. Dies bestimmt die Inputs für den Shader, wie z. B. Metallisch oder Durchscheinend, und wie sie jeweils auf Licht reagieren.
Ein Material ist ein logisches Diagramm von Textureingaben, Formeln und Befehlen, die in einen Shader eingespeist werden. Es repräsentiert die Oberflächenqualitäten eines einzelnen Objekts und den spezifischen Ausdruck dieses Shaders.
Um ein Material zu erstellen, klicken Sie mit der rechten Maustaste auf eine beliebige Stelle im Inhaltsbrowser und klicken Sie dann auf Basis-Asset erstellen > Materialien. Der Material-Editor zeigt ein leeres Diagramm mit dem Hauptmaterial-Knoten an.
Klicken Sie auf den Hauptmaterial -Knoten, um seine Eigenschaften im Details-Panel anzuzeigen. Mit der Schattierungsmodell-Einstellung können Sie verschiedene Shader auswählen.
In Situationen, in denen Sie ein einzigartiges Material auf mehr als ein Mesh anwenden möchten, empfehlen wir die Verwendung von Material-Instanzen. Dabei handelt es sich um parametrisierte Versionen von Materialien, die Sie verwenden können, um Vielfalt und Einzigartigkeit zu schaffen, ohne zusätzliche Kosten zu verursachen.
Jede Material-Instanz verwendet entweder ein Material oder eine andere Material-Instanz als Parent (oder „Master“-Material), um Bearbeitungen vorzunehmen. Alle Knoten, die im Master-Material parametrisiert wurden, sind im Instanzierten Material-Editor zugänglich. Diese verfügbaren Parameter können verwendet werden, um endlose Varianten aus einem einzigen Ausgangsmaterial zu erstellen, um Farbvariationen zu erzeugen, verschiedene Texturen anzuwenden, Details zu verstärken oder zu verringern und vieles mehr.
Die Verwendung von Material-Instanzen ist effizienter, wenn Sie ein Master-Material und seine Child-Materialien zum Fördern von Varianten verwenden.
Um eine Material-Instanz zu erstellen, klicken Sie mit der rechten Maustaste auf ein Material im Inhaltsbrowser und dann auf Material-Instanz erstellen.
Um mehr über Materialien und Material-Instanzen zu erfahren, lesen Sie die Dokumentation Materialien und Erstellen und Verwenden von Material-Instanzen. Wenn Sie mehr über den Material-Editor erfahren möchten, lesen Sie die Dokumentation Benutzerhandbuch für Material-Editor.
Nanite
Nanite ist das virtualisierte Geometriesystem der Unreal Engine, das ein internes Mesh-Format und eine Rendering-Technologie verwendet, um Details in Pixelgröße und eine hohe Anzahl von Objekten zu rendern. Sie konzentriert sich nur auf das Detail, das wahrgenommen werden kann, und nicht mehr.
Nanite bietet verschiedene Vorteile für Projekte, wie z. B. eine um mehrere Größenordnungen höhere Komplexität der Geometrie, eine höhere Anzahl von Dreiecken und Objekten, als dies bisher in Echtzeit möglich war. Die Budgets für Frames werden nicht mehr durch Polycounts, Draw Calls und die Nutzung des Mesh-Speichers eingeschränkt.
Weitere Informationen über Nanite und wie Sie es in Ihren Projekten einsetzen können, finden Sie in der Dokumentation Nanite Virtualisierte Geometrie.
Audio
Unity verwendet einAudioquellen-Framework, bei dem jede Audioquelle in der Welt Ihres Spiels eine einzelne zugehörige Stimme hat. Unity verwendet Mixer, um die Einstellungen der Audiokanäle auf diese Quellen anzuwenden.
Das MetaSounds-Plugin der Unreal Engine ist ein System zur Audiogenerierung, das die vollständige Kontrolle über ein Digital Signal Processing (DSP)-Diagramm innerhalb einer Blueprint-ähnlichen Umgebung für visuelles Scripting ermöglicht.
Um mehr darüber zu erfahren, lesen Sie die Dokumentation zu MetaSounds.
Zum Abmischen von Audio empfehlen wir das Audio-Modulation-Plugin, das eine dynamische Kontrolle über Audioparameter wie Lautstärke und Tonhöhe über die Blueprint- oder Komponenten-Systeme der Unreal Engine ermöglicht.
Um mehr darüber zu erfahren, lesen Sie die Dokumentation Audio-Modulation Überblick.
Sound-Einsätze sind Audio-Objekte, die komplexe Aufgaben des Sound-Designs in einem Knoten-Diagramm kapseln. Sie können verwendet werden, um Teile des Designs eines Sound-Effekts dynamisch zu verändern, indem Sie Klangknoten anordnen und modifizieren und so einen komplexen Audio-Output erstellen.
Wenn Sie mehr über Sound-Einsätze erfahren möchten, lesen Sie die Dokumentation Sound-Einsatz Referenz.
Einen umfassenden Überblick über die Audio-Systeme der Unreal Engine finden Sie auf der Seite Arbeiten mit Audio.
Visuelle Effekte
Niagara-Partikelsysteme sind das Äquivalent der Unreal Engine zu den Partikelsystemen und dem VFX Graph von Unity. Sie können Niagara-Emitter erstellen, um einzelne Partikel-Emitter zu bauen, oder Niagara-Systeme, um mehrere Emitter zu einem komplexeren visuellen Effekt zusammenzusetzen. Wenn Sie ein neues System- oder Emitter-Asset erstellen, können Sie einen vorhandenen Niagara-Emitter als Vorlage verwenden.
Das Systemübersichtsdiagramm des Niagara-Editors bietet ein ähnliches Interface zum Bearbeiten von Partikeln wie der Partikelsystem-Editor von Unity. Niagara-Emitter und -Systeme bestehen aus modularen Komponenten, die mit einer Vielzahl von Verhaltensweisen oder Events umgehen können. Jedes Modul, das Sie hinzufügen, erhöht die Komplexität Ihres Partikelsystems und fügt neue Parameter zum Konfigurieren hinzu.
Weitere Informationen hierzu finden Sie in der Dokumentation Creating Visual Effects.
Mit dem Niagara-Fluids-Plugin können Sie Rauch, Feuer, Explosionen, Wasser, Spritzer und weitere physikalisch plausible Effekte zu Ihren Projekten hinzufügen.
Mehr Informationen hierzu finden Sie in der Dokumentation zu Niagara Fluids.
Benutzeroberfläche
Der Unreal Motion Graphics-Editor (UMG) ist das Äquivalent der Unreal Engine zum UI-Toolkit und der UI-Komponentenbibliothek von Unity. UMG bietet einen WYSIWYG-Editor zum Erstellen von UIs aus einer Vielzahl von Widgets, einschließlich Schaltflächen, Textelementen und zahlreichen Containern und Rastern.
Um eine neue Benutzeroberfläche zu erstellen, legen Sie einen neuen Widget-Blueprint im Inhaltsbrowser an. Wenn Sie einen Widget-Blueprint öffnen, wird der UMG-Editor geöffnet und ein leeres Raster mit einem Palette-Panel mit Widgets auf der linken Seite und einem Details-Panel auf der rechten Seite angezeigt. Eine Schaltfläche in der oberen rechten Ecke schaltet zwischen der Designer- und der Diagramm-Ansicht um.
Verwenden Sie die Designer-Ansicht, um Widgets innerhalb Ihres Widget-Blueprints anzuordnen. Klicken und ziehen Sie Widgets aus dem Palette-Panel in Ihr Diagramm, und verwenden Sie die Hierarchie, um die Reihenfolge des Zeichenvorgangs zu ändern. Widgets, die in der Liste weiter unten stehen, werden weiter oben angezeigt. Aktivieren Sie das Kontrollkästchen Ist Variable im Details-Panel eines Widgets, um es für das Script Ihrer Benutzeroberfläche freizugeben.
Wie der Name schon sagt, kann jeder Widget-Blueprint, den Sie erstellen, als Widget in anderen Widget-Blueprints verwendet werden. Diese erscheinen in Ihrer Palette unter der Kategorie Vom Benutzer erstellt . Sie können Widget-Blueprints sowohl für ganze Menüs und HUDs verwenden, als auch für wiederverwendbare Komponenten wie Schaltflächen oder Fortschrittsbalken.
Mehr darüber erfahren Sie in der Dokumentation UMG UI Designer Quick Start Guide. Weitere Informationen zum Erstellen und Anzeigen von der UI finden Sie in der Dokumentation Benutzeroberflächen erstellen.
Speichern und Laden
Die Fähigkeit, das Spiel zu verlassen und dann dort fortzufahren, wo der Spieler aufgehört hat, ist Bestandteil der meisten modernen Spiele. Je nach Typ des Spiels, das Sie entwickeln, benötigen Sie vielleicht nur ein paar grundlegende Informationen beim Speichern, z. B. den letzten Kontrollpunkt, den der Spieler erreicht hat, oder weitere Details.
Unity-Entwickler kennen vielleicht PlayerPref, das zum Speichern von Einstellungen des Spielers zwischen den Spielsitzungen verwendet werden kann, oder eine Reihe von Paketen aus dem Asset-Store, die Funktionen zum Speichern und Laden bieten. Diese Funktionen sind in der Unreal Engine eingebaut.
Weitere Informationen zum Hinzufügen der Fähigkeit, Spiel-Sessions in der Unreal Engine zu speichern und zu laden, finden Sie in der Dokumentation Speichern und Laden Ihres Spiels.
Funktionsvergleich der Engines auf hoher Ebene
Dieser Abschnitt bietet einen allgemeinen Überblick darüber, wie einige Funktionen und Werkzeuge in Unity und der Unreal Engine heißen und verwendet werden.
| Zweck | Unreal Engine | Unity |
|---|---|---|
| Benutzeroberfläche (UI) | ||
UI erstellen | Unreal Motion Graphics (UMG) | UI-Werkzeugsatz |
| Welt-Erstellung | ||
Alle Formen von Landschaften erstellen | Landschaftsgestaltungs-Modus | Geländesystem |
Hinzufügen von Laub zu einer Landschaft | Vegetationsmodus | Vegetation des Geländesystems |
Erstellen von Level-Blockouts | Modellierungsmodus | ProBuilder |
Erstellen von Wasseroberflächen und Unterwassereffekten | Wassersystem | Wassersystem |
Prozedurales Generieren von Welten und Werkzeugen | Prozedurale Inhaltsgenerierung (Procedural Content Generation, PCG) | Drittanbieter-Werkzeuge |
| Optimierung | ||
Profiling Suite zur Identifizierung von Performance-Problemen. | Tracing | Profiler |
| Gameplay | ||
Handhaben von Spieler-Input | Erweitertes Eingabesystem | Eingabesystem |
Visuelles Scripting | Blueprint-Editor | Visuelles Scripting (früher Bolt genannt) |
Scripting und unterstützte Programmiersprachen | C++ (Programmierung) | C# (Scripting) |
Physik-Engine | Chaos Physics | NVIDIA PhysX |
Speichern und Laden von Spieldaten | SaveGame-Objekte | PlayerPrefs/Benutzerdefinierte Lösungen |
| Künstliche Intelligenz | ||
Zustandsmaschine zum Erschaffen von KI-Zuständen | State Tree | Drittanbieter-Werkzeuge |
Erzeugen von Gebieten für KI, in denen sie sich bewegen können | Navigationssystem | Nav-Mesh |
| Animation | ||
Handhaben von Animationsdaten | Animations-Blueprints | Animator-Controller |
Erstellen von Animationssequenzen | Sequencer-Editor | Zeitleiste |
Rigging von 3D-Charakteren | Control Rig | Drittanbieter-Werkzeuge |