Kurz gesagt
- World Partition hält die Welt in einem einzigen persistenten Level und teilt sie in ladbare Rasterzellen auf.
- Mit Data Layers lassen sich Actors für die Bearbeitung im Editor und das Laden zur Laufzeit gruppieren.
- Um Data Layers zu verwenden, muss World Partition für die Karte aktiviert sein.
- Epics Dokumentation nennt keine Versionsnummer; in einem beispielhaften Befehlszeilenpfad kommt der Ordner UE_5.1 vor.
Der in der offiziellen Dokumentation von Unreal Engine beschriebene Workflow mit World Partition und Data Layers dient dazu, große Levels zu organisieren und während der Laufzeit in Teilen zu laden. Das System hält die Welt in einer einzigen persistenten Level-Datei und teilt sie in Rasterzellen auf. Welche Zellen geladen werden, richtet sich nach der Position der Streaming-Quellen. Data Layers wiederum dienen dazu, Actors im Editor zu organisieren oder zur Laufzeit zu aktivieren und zu deaktivieren. Epics Dokumentation bezieht sich nicht ausdrücklich auf eine bestimmte Unreal-Engine-Version; eines der beispielhaften Befehlszeilenverzeichnisse verweist auf den Ordner UE_5.1.
1. Zuerst die World-Partition-Struktur einrichten
World Partition wird als automatisches Datenmanagement- und distanzbasiertes Level-Streaming-System beschrieben, das den Bedarf reduziert, große Karten manuell in Sublevels aufzuteilen. Die Welt wird in Zellen gegliedert. Zellen in der Nähe einer Streaming-Quelle, etwa des Spielers, werden geladen; nicht mehr benötigte Zellen können entladen werden. So soll während der Laufzeit nur der Teil der Karte geladen sein, der sichtbar ist oder mit dem interagiert wird.
Beim Erstellen eines neuen Levels lässt sich der Kartentyp Open World verwenden. Laut offizieller Dokumentation sind in dieser Vorlage World Partition, One File Per Actor, Data Layers und Hierarchical Levels of Detail standardmäßig aktiviert. Bestehende Levels können über Tools > Convert Level oder mit dem World Partition Convert Commandlet umgestellt werden. Da die Umstellung das Projekt und das Level beeinflussen kann, sollten die Quelldateien zuvor gesichert und die Konvertierung kontrolliert durchgeführt werden.
Ein beispielhafter Befehlszeilenaufruf sieht so aus:
UnrealEditor.exe QAGame -run=WorldPartitionConvertCommandlet Playground.umap -AllowCommandletRenderingIn der Dokumentation sind auch Optionen wie -ReportOnly für die Konvertierung aufgeführt. Diese Option erstellt einen Bericht darüber, was der Vorgang ausführen würde, ohne eine Konvertierung vorzunehmen. Mit -ConversionSuffix kann an den zu Testzwecken konvertierten Kartennamen _WP angehängt werden. Die Option -DeleteSourceLevels löscht nach der Konvertierung auch die Quelllevels. Die verwendeten Argumente sollten daher sorgfältig auf die Anforderungen des Projekts abgestimmt werden.
2. Zellladen und Streaming-Quellen verstehen
Ob ein Actor geladen wird, hängt von der Einstellung Is Spatially Loaded im Bereich World Partition des Details-Panels ab. Ist die Einstellung aktiviert, wird der Actor geladen, sobald er in Reichweite einer Streaming-Quelle gelangt – sofern er nicht einem deaktivierten Data Layer zugewiesen ist. Ist sie deaktiviert, wird der Actor unabhängig von der räumlichen Reichweite geladen, sofern er nicht einem deaktivierten Data Layer zugewiesen ist.
Der Player Controller kann standardmäßig als Streaming-Quelle dienen. Zusätzlich lässt sich der Szene eine World Partition Streaming Source-Komponente hinzufügen. Dort stehen unter anderem Optionen für das Zielraster, die Priorität sowie dafür zur Verfügung, Zellen in den Zustand Loaded oder Activated zu versetzen. Befindet sich eine Zelle im Bereich mehrerer Streaming-Quellen, werden Priorität und Zielzustand berücksichtigt.
| Einstellung | Empfohlener Wert | Auswirkung |
|---|---|---|
| Cell Size | Beispiel aus der Dokumentation: 256 m × 256 m × 256 m | Legt die Größe der Zellen fest, die zum Erstellen von Streaming-Levels verwendet werden. |
| Loading Range | Beispiel aus der Dokumentation: 768 m Radius | Legt fest, in welchem Bereich um eine Streaming-Quelle Zellen geladen werden. |
| Anzahl der Runtime Grids | Laut Dokumentation können mehrere Raster die Performance beeinträchtigen; ein fester Richtwert wird nicht angegeben. | Beeinflusst das Laden der Zellen zur Laufzeit. |
Die in der Tabelle genannten Entfernungen und Zellgrößen sind Beispielwerte aus der Dokumentation und keine festen Empfehlungen für jedes Projekt. Die tatsächlichen Einstellungen sollten anhand des Szenenmaßstabs und der Inhaltsstruktur getestet werden. Auch das Ladeverhalten im Editor unterscheidet sich von dem zur Laufzeit: Wird eine große Welt geöffnet, lädt der Editor zunächst nicht die gesamte Welt; Actors mit deaktiviertem Is Spatially Loaded werden geladen.
3. Inhalte mit Data Layers gruppieren
Um Data Layers zu verwenden, muss World Partition für die Karte aktiviert sein. Das System unterscheidet zwei Arten von Assets: Ein Data Layer Asset enthält Daten, die auf Projektebene und in verschiedenen Welten verwendet werden können; eine Data Layer Instance enthält Eigenschaften, die zu einer bestimmten Welt gehören. Dasselbe Asset kann über separate Instances in verschiedenen Welten genutzt werden.
Um ein neues Data Layer Asset zu erstellen, wechseln Sie im Content Browser in den gewünschten Ordner und wählen Miscellaneous > Data Layer. Anschließend erstellen Sie im Fenster Window > World Partition > Data Layer Outliner per Rechtsklick mit Create New Data Layer eine Instance und weisen ihr das Asset zu. Um Actors hinzuzufügen, wählen Sie die betreffenden Actors im Outliner aus und verwenden auf der gewünschten Instance den Befehl Add Selected Actors to Selected Data Layers. Dieselbe Zuweisung ist auch über den Bereich Data Layers im Details-Panel der ausgewählten Actors möglich.
Der Asset-Typ kann auf Editor oder Runtime gesetzt werden. Editor Data Layers dienen dazu, Inhalte innerhalb des Projekts zu organisieren und im Editor zu laden oder zu entladen. Runtime Data Layers lassen sich zur Laufzeit über Blueprint oder C++ ändern. So können beispielsweise unterschiedliche Szenenzustände in separaten Layern abgelegt werden; die Struktur sollte jedoch auf die Anforderungen des Projekts abgestimmt sein. Werden zu viele Inhalte gleichzeitig geladen, kann das zu Performanceproblemen führen. Außerdem kann es die Streaming-Performance von World Partition beeinträchtigen, häufig verwendete Actors zu vielen Runtime Data Layer Instances zuzuweisen.
4. Was ändert sich im Workflow für Architekturvisualisierung?
Bei der Visualisierung großer Umgebungen oder Gebäude kann World Partition dazu dienen, die relevanten Zellen zu verwalten, statt die gesamte Szene gleichzeitig zu laden. Data Layers helfen dabei, Umgebungselemente und verschiedene Inhaltsgruppen im Editor voneinander zu trennen. Dieser Ansatz kann insbesondere Teammitgliedern, die an derselben Welt arbeiten, ermöglichen, sich auf bestimmte Komponenten zu konzentrieren. One File Per Actor speichert Actors in separaten Dateien und soll damit einige Hürden beim Teilen von Level-Dateien in der Teamarbeit reduzieren.
Prüfen Sie vor dem Start, ob World Partition für die Karte aktiviert ist; Data Layers allein ersetzen diese Voraussetzung nicht. Sichern Sie bei einer Konvertierung zunächst die Quellkarte und prüfen Sie Optionen, die keine Konvertierung ausführen, wie -ReportOnly. Betrachten Sie die Zellgröße und den Ladebereich aus der Dokumentation nicht als verbindliche Vorgaben, wenn Sie die Streaming-Einstellungen festlegen. Epics Quellen enthalten keine Angaben zu bestimmten Hardwareanforderungen oder Lizenzbedingungen. Hardwareeignung und Projektlizenz sollten deshalb für die verwendete Installation separat geprüft werden.
Häufige Fehler
Data Layers auf einer Karte verwenden zu wollen, auf der World Partition nicht aktiviert ist.
Die beispielhaften Zellgrößen und Ladebereiche aus der Dokumentation als unveränderliche Empfehlung für jede Szene anzusehen.
Zu viele Inhalte gleichzeitig zu laden oder häufig verwendete Actors auf eine übermäßig große Zahl von Runtime Data Layer Instances zu verteilen.
Konvertierungsoptionen – insbesondere Argumente, die Quelllevels löschen können – auszuführen, ohne zuvor ihre Auswirkungen zu prüfen.
Quellen
2 QuellenQuelltexte werden nicht neu veröffentlicht; kurze Zitate sind gekennzeichnet, der Rest ist eigene Zusammenfassung und Einordnung.
Für Architektur- und Visualisierungsbüros in der Türkei liegt der praktische Nutzen von World Partition darin, große Szenen in überschaubare Bereiche zu unterteilen und Teammitglieder dabei zu unterstützen, sich auf bestimmte Actor-Gruppen zu konzentrieren. Data Layers bieten eine hilfreiche Struktur für Teams, die Umgebungen und alternative Inhalte geordnet halten möchten.
Zu den Kosten der Einrichtung oder den erforderlichen Hardwareanforderungen enthalten die Quellen jedoch keine Angaben. Büros sollten ihre Projekt- und Lizenzbedingungen daher separat bewerten. Besonders leicht zu übersehen sind die Voraussetzung World Partition, das unkritische Übernehmen beispielhafter Zellwerte und das gleichzeitige Laden zu vieler Layer. Vor der Konvertierung einen Bericht zu erstellen und das Ladeverhalten in einer echten Szene zu testen, ist ein sicherer Ausgangspunkt.
Häufige Fragen
Wie erstellt man Data Layers in Unreal Engine?
Erstellen Sie im Content Browser über `Miscellaneous > Data Layer` ein Data Layer Asset. Öffnen Sie im Data Layers Outliner eine neue Instance und weisen Sie ihr das Asset zu.
Wie lässt sich World Partition zu einem bestehenden Level hinzufügen?
Laut Epics Dokumentation kann ein Level über `Tools > Convert Level` oder mit dem World Partition Convert Commandlet konvertiert werden. `-ReportOnly` erstellt mit dem Commandlet einen Bericht über den Vorgang, ohne eine Konvertierung vorzunehmen.
Wofür werden Runtime Data Layers verwendet?
Runtime Data Layers lassen sich zur Laufzeit über Blueprint oder C++ ändern. Sie können zum Laden oder Entladen von Inhalten verwendet werden.



