Zurück

Scene Graph ist jetzt als experimentelle Funktion in UEFN verfügbar

10. Juni 2024

Das Fortnite-Team

Der bereits angekündigte Scene Graph kann jetzt als experimentelle Funktion in UEFN ausprobiert werden! Experimentelle Veröffentlichungen geben euch die Möglichkeit, eine Funktionalität auszuprobieren, während sie sich noch in Entwicklung befindet. 

Sind Szenendiagramme für euch neu? Szenendiagramme bieten euch eine einheitliche Struktur, um alle Objekte auf einer Insel miteinander zu verbinden, wodurch es schneller und einfacher ist, Elemente, Gameplay und Leveldesigns auf euren Inseln zu erstellen, zu bearbeiten und zu iterieren. Sie sind besonders nützlich, wenn ihr an Umgebungen arbeitet, die große Inhaltsmengen umfassen (oder an Spieltypen mit komplexeren Interaktionen wie Plattformern, Metroidvanias und Deathruns). Wenn ihr zukünftig vielfältigere und detailliertere Fortnite-Inseln bauen wollt, ist diese Funktion genau das Richtige für euch.

Wir möchten euch aufregende neue Funktionen anbieten, um diese anhand eures Feedbacks vor der endgültigen Veröffentlichung zu verbessern. In der experimentellen Version der Scene Graph-Funktion, könnt ihr eine frühe Version ausprobieren, aber ihr könnt damit erstellte Inseln erst veröffentlichen, wenn eine Early-Access-Version erschienen ist. Der Zeitpunkt der Veröffentlichung steht noch nicht fest. Wir werden in Zukunft weitere Details dazu bekanntgeben. Allerdings bietet diese experimentelle Version euch die Gelegenheit, eine ganz neue Kernfunktion zu lernen, die wir auf lange Sicht als essenziell für unser Entwicklungsökosystem und das Metaverse betrachten.

UEFN 30 10 SceneGraph Blog InLine 1920x1080
 

Scene Graph erklärt

Beim Scene Graph gibt es drei zentrale Konzepte: Komponenten, Entitäten und Prefabs.  Diese erlauben es euch, eure Inhalte auf eine Art und Weise zu erstellen und zu strukturieren, die leicht zu organisieren und zu verstehen ist. Außerdem könnt ihr schnell die gleichen oder ähnliche Inhalte auf unterschiedlichen Teilen eurer Insel wiederverwenden, wobei ihr alle Instanzen dieser Inhalte überall oder jede einzelne individuell bearbeiten könnt.
 

Komponenten

  • Komponenten umfassen Daten und Logik für euer Spiel.
  • Das kann etwas ganz Einfaches sein wie eine Transformation oder ein Mesh (oder rein logisch wie ein Verse-Script).
 

Entitäten

  • Entitäten sind Container für Komponenten.
    • Beispielsweise kann eine Entität ein Objekt wie eine Fackel sein, die alle Komponenten beinhaltet, aus denen die Fackel besteht, darunter VFX, Soundeffekte und Beleuchtung.
  • Entitäten haben eine Hierarchie, sodass ihr Subobjekte erstellen könnt, die an ein Parent gebunden sind. Die Parent-Beziehung stellt die Lebenszeit des Objekts dar: Wenn der Parent aus der Szene entfernt wird, werden auch die Subobjekte entfernt.
  • Ihr könnt eine Entität aus einer Szene entfernen, indem ihr sie verwerft. Dadurch wird Speicher verfügbar gemacht, wenn sie nicht mehr benötigt wird. Oder ihr könnt ihren Parent aufheben, wodurch sie aus der Szene entfernt wird, aber wieder hinzugefügt werden kann, wenn ihr den Parent zurücksetzt.
 

Prefabs

  • Prefabs bestehen aus mehreren Entitäten und ihren Komponenten, die in einer Klasse zusammengefasst werden.
  • Dabei handelt es sich um das höchste Konstrukt im Scene Graph.
  • Auf der Verse-Ebene ist ein Prefab eine Klasse, die von einer Entität abgeleitet wird und alle Entitäten beinhaltet, die ihr dem Prefab hinzugefügt habt.
  • Prefabs können aus Verse gespawnt werden, sodass man leicht mehrere Exemplare erstellen kann.
  • Das Verwerfen oder Aufheben des Parents entfernt das gesamte Prefab aus der Szene; das Zurücksetzen des Parents bringt das gesamte Prefarb zurück; und das Festlegen eines neuen Parents verschiebt das gesamte Prefarb in diese neue Entität.
  • Veränderungen können global erstellt und auf alle Instanzen eines Prefabs angewendet werden oder ihr könnt einzelne Prefabs bearbeiten, ohne dass dies eine Auswirkung auf andere Instanzen hat.
  • Man kann auch Prefabs in andere Prefabs verschachteln.
  • Prefabs können mit dem neuen Prefab-Editor oder Verse erstellt und bearbeitet werden.
 

Schaut euch unseren Vortrag „Inside UEFN Scene Graph“ von GDC 2024 an, um mehr über den Scene Graph zu erfahren und zu sehen, wie Konzepte wie Prefabs das Erstellen von komplexem Gameplay und inhaltsreichen Spielwelten mit UEFN einfacher als je zuvor gestalten.
 
 

Wollt ihr noch mehr über Scene Graph erfahren? Dann auf zur Scene Graph-Dokumentation oder zur neuen Prefabs-Vorlage im Editor, wo ihr euch ein praktisches Beispiel ansehen könnt.
 

Scene Graph FAQ

Was ist ein Szenendiagramm?

Der UEFN Scene Graph ist eine vereinheitlichte Struktur, die alle Objekte innerhalb einer Szene miteinander verbindet. Dies ermöglicht es euch, über die Szene nachzudenken, und der Code kann entlang dem Diagramm bestimmte Operationen an Objekten durchführen. Es ist dem Dokumentobjektmodell (DOM) in der Web-Programmierung ziemlich ähnlich. In Unreal Engine übernehmen Actors und Actor-Komponenten derzeit die Rolle des Scene Graph.
 

Welchen Einfluss hat das auf bestehende gerätebasierte Workflows in UEFN?

Ihr könnt weiterhin Gameplay über Geräte in UEFN erstellen, wobei der Scene Graph und Geräte gleichzeitig im selben Projekt benutzt werden können. Geräte bieten euch Bausteine für das Erstellen von Gameplay mit vorgefertigten Parametern, die ihr anpassen und mit anderen Geräten sowie mit Verse kombinieren könnt, um auf euren Inseln komplexe Interaktionen zu erstellen. Der Scene Graph ermöglicht es euch, Prefabs zu erstellen, die mit über Verse erstelltem Gameplay und anderen Komponenten-Typen zu wiederverwendbaren Bundles kombiniert werden können; diese können existierenden Geräten ähneln, aber sie sind leichter zu replizieren und zu bearbeiten und können für eine größere Bandbreite an Inhalten und Funktionen genutzt werden als Geräte. Wir entwickeln eine Brückenkomponente, um begrenzte Interoperabilität zwischen Geräten und dem Scene Graph zu ermöglichen, wodurch Creators bestehendes Gameplay in ihr Szenendiagramm integrieren können.
 

Was bedeutet es, dass Scene Graph eine „experimentelle Funktion“ ist?

Die Funktion Scene Graph befindet sich im experimentellen Zustand: Ihr könnt es also ausprobieren, uns Feedback geben und eine Einsicht in unsere Pläne bekommen. Ihr könnt derzeit jedoch keine Projekte veröffentlichen, die Scene Graph benutzen. Achtung: Die Abwärtskompatibilität von Assets, die in der experimentellen Phase erstellt wurden, wird nicht garantiert. Die APIs für diese Funktionen verändern sich vielleicht noch und gegebenenfalls werden wir experimentelle Funktionen in ihrer Gesamtheit oder bestimmte Funktionalitäten nach Belieben entfernen.
 

Wieso kann ich derzeit keine Projekte veröffentlichen, die Scene Graph benutzen?

Die Veröffentlichung ist deaktiviert, wenn experimentelle Funktionen verwendet werden. Erst wenn eine Funktion vollständig veröffentlicht oder als Early Access verfügbar gemacht wurde, könnt ihr Projekte veröffentlichen, die diese Funktion verwenden.
 

Welche Einschränkungen des Scene Graph sind bei der experimentellen Veröffentlichung bekannt?

Die Liste aller bekannten Probleme dieser experimentellen Funktion findet ihr hier. Wenn ihr Feedback habt oder auf nicht aufgeführte Probleme stoßt, wendet euch bitte an die Foren.
 

Wo finde ich weitere Informationen?

Ihr könnt euch den Tech-Talk „Inside UEFN Scene Graph | GDC 2024“ auf dem YouTube-Kanal der Unreal Engine ansehen oder einen Blick in die neue Scene Graph-Dokumentation werfen.