Um große Karten zu erstellen, mussten die Entwickler früher die Karten manuell in Unterebenen aufteilen und dann das Level-Streaming-System verwenden, um sie zu laden und zu entladen, während der Spieler die Landschaft durchquerte. Diese Methode führte häufig zu Problemen bei der gemeinsamen Nutzung von Dateien durch mehrere Benutzer, und es war schwierig, die ganze Welt im Zusammenhang zu sehen.
World Partition ist ein automatisches Datenmanagement- und distanzbasiertes Level-Streaming-System, das eine Komplettlösung für die Verwaltung großer Welten darstellt. Das System macht es überflüssig, große Levels in Unterlevels aufzuteilen, indem es deine Welt in einem einzigen persistenten Level speichert, das in Rasterzellen unterteilt ist, und bietet dir ein automatisches Streaming-System, um diese Zellen basierend auf der Entfernung zu einer Streaming-Quelle zu laden und zu entladen.
World Partition arbeitet eng mit den folgenden Funktionen zusammen:
- Eine Datei pro Actor
- World Partition - Datenebenen
- Level-Instanzierung
- World Partition - Hierarchical Levels of Detail
World Partition aktivieren
Es gibt drei Möglichkeiten, World Partition in Unreal Engine zu aktivieren:
- Erstellen eines neuen Projekts aus einer Vorlage in der Kategorie Spiele.
- Erstellen eines neuen Levels unter Verwendung der Open World-Vorlage.
- Konvertierung bestehender Levels zur Verwendung von World Partition.
Projekt mit einer Spielevorlage erstellen
World Partition ist in vielen der Projektvorlagen in der Kategorie Spiele standardmäßig aktiviert.
Um die Komplexität zu reduzieren und eine skalierbare Lösung bei der Erstellung neuer Projekte zu bieten, kann das Streaming von Rasterzellen über die Option Streaming aktivieren in den Welt-Einstellungen aktiviert und deaktiviert werden.
Die folgenden Vorlagen verwenden World Partition, haben aber Streaming aktivieren standardmäßig deaktiviert:
- Blank
- First Person
- Third Person
- Top Down
- Vehicle Advanced
Die Open World Standardkarte verwenden
Der Standardkartentyp Offene Welt ist als Ausgangspunkt für die Erstellung großer Open-World-Karten gedacht und verfügt standardmäßig über die folgenden Funktionen:
- World Partition
- Eine Datei pro Actor
- Datenebenen
- Hierarchical Levels of Detail
Die Karte enthält eine 2 km x 2 km große Beispiellandschaft mit einem Landschaftsmaterial und einer Beleuchtungseinrichtung für eine Außenumgebung. Dazu gehören eine Himmelsatmosphäre, Oberlicht, gerichtetes Licht, exponentieller Höhennebel und volumetrische Wolken.
So verwendest du den Offene-Welt-Standardkartentyp in deinem Projekt:
- Öffne das Menü Datei und wähle Neuer Level.
- Wähle den Kartentyp Offene Welt.
- Klicke auf die Schaltfläche Erstellen, um eine neue Karte zu erstellen.
Vorhandene Levels zur Verwendung von World Partition konvertieren
Du kannst World Partition zu jedem Level hinzufügen, indem du ihn mit der Menüoption Werkzeuge > Level umwandeln konvertierst, oder indem du das Commandlet World Partition Convert benutzt.
So funktioniert das Commandlet World Partition Convert:
Befehl: UnrealEditor.exe QAGame -run=WorldPartitionConvertCommandlet Playground.umap -AllowCommandletRendering
So kannst du vorhandene Levels in World Partition umwandeln:
-
Öffne in Windows ein Eingabeaufforderungsfenster.
-
Navigiere in der Eingabeaufforderung zum Speicherort der ausführbaren Datei
UnrealEditor.exe. Im obigen Beispiel:C:\Builds\Home_UE5_Engine\Engine\Binaries\Win64. - Beginne als Nächstes den Befehl mit dem Namen der .exe-Datei, die das Commandlet ausführt,
UnrealEditor.exe. -
Füge den Namen des Projekts hinzu. Hier
QAGame. - Fahre fort mit dem Namen des auszuführenden Commandlets,
-run=WorldPartitionConversionCommandlet. - Füge den Namen der Map-Datei hinzu, die konvertiert werden soll. Im obigen Beispiel
Playground.umap. -
Beende den Befehl mit dem zusätzlichen Argument
-AllowCommandletRendering. - Drücke Eingabe und das Commandlet konvertiert die Karte so, dass sie World Partition verwendet.
Die folgenden optionalen Argumente sind für dieses Commandlet verfügbar:
| Optionales Argument | Beschreibung |
|---|---|
| -SCCProvider=(None,Perforce...) | Gibt an, welcher Versionskontrollanbieter verwendet werden soll. Um ohne Versionskontrolle zu arbeiten, gib -SCCProvider=None an. |
| -Verbose | Zeigt eine ausführliche Protokollierung an. |
| -ConversionSuffix | Hängt das Suffix _WP an eine konvertierte Map an. Dies ist nützlich, wenn Levels zu Testzwecken konvertiert werden sollen, während die Quell-Levels intakt bleiben. |
| -DeleteSourceLevels | Löscht die Quell-Levels nach der Konvertierung. |
| -ReportOnly | Berichtet, was während der Konvertierung geschehen würde. Führt die Konvertierung nicht durch. |
| -GenerateIni | Erzeugt eine Standard-.ini-Konvertierungsdatei für diese Map. Führt die Konvertierung nicht durch. |
| -SkipStableGUIDValidation | Überspringt die Validierung von GUIDs instabiler Actors. Levels mit instabilen Actor-GUIDs führen bei mehrmaliger Konvertierung zu unterschiedlichen Ergebnissen. Ein erneutes Speichern des Levels behebt dieses Problem. |
| -OnlyMergeSubLevels | Konvertiert und verschmilzt Levels und Sublevels zu einer Datei pro Actor ohne World Partition. Der konvertierte Level kann als Level-Instanz in einem World Partition Level verwendet werden. |
| -FoliageTypePath=[Pfad] | Extrahiert Laub-Typen als Assets für den angegebenen Pfad. Wird verwendet, wenn die Ebene eingebettete Laub-Typen enthält. |
Wenn du die Konvertierungseinstellungen ändern willst, verwende eine Standardkonvertierungsdatei .ini mit dem Commandlet. Die „ini"-Datei muss sich im gleichen Ordner wie die Map-Datei befinden und den gleichen Dateinamen wie die Map haben, aber mit der Erweiterung „ini". Eine „.ini"-Datei, die für die „FirstPersonExampleMap.umap" geschrieben wurde, würde zum Beispiel „FirstPersonExampleMap.ini" heißen.
Hier ist ein Beispiel für eine Standardkonvertierungsdatei „.ini":
[/Script/UnrealEd.WorldPartitionConvertCommandlet]
EditorHashClass=Class'/Script/Engine.WorldPartitionEditorSpatialHash
RuntimeHashClass=Class'/Script/Engine.WorldPartitionRuntimeSpatialHash
LevelsGridPlacement=(("/Game/Maps/Highrise_Audio", Bounds),("/Game/Maps/Highrise_Collisions_Temp", Bounds),("/Game/Maps/Highrise_Gameplay", Bounds),("/Game/Maps/Highrise_Lights", Bounds),("/Game/Maps/Highrise_Vista", AlwaysLoaded))
HLODLayerAssetsPath=
DefaultHLODLayerName=
[/Script/Engine.WorldPartitionEditorSpatialHash]
CellSize=51200
WorldImage=None
WorldImageTopLeftW=(X=0.000000,Y=0.000000)
WorldImageBottomRightW=(X=0.000000,Y=0.000000)
[/Script/Engine.WorldPartitionRuntimeSpatialHash]
Grids=(GridName="MainGrid",CellSize=3200,LoadingRange=25600.000000,DebugColor=(R=0.500000,G=0.500000,B=0.500000,A=1.000000))
World Partition verwenden
Das World Partition System speichert deine Welt in einer einzigen persistenten Level-Datei und unterteilt den Raum mit Hilfe eines konfigurierbaren Laufzeitrasters in streambare Rasterzellen. Diese Zellen werden zur Laufzeit durch das Vorhandensein von Streaming-Quellen, wie z. B. dem Player, geladen und entladen. Auf diese Weise lädt Unreal Engine nur die Teile des Levels, die der Spieler zu einem bestimmten Zeitpunkt sieht und mit denen er interagiert.
Actors in World Partition
Beim Bearbeiten der Welt können Akteure an beliebiger Stelle hinzugefügt werden und werden automatisch einer Rasterzelle zugewiesen, basierend auf ihrer Einstellung Ist räumlich geladen, die in ihrem Detail-Panel im Abschnitt World Partition zu finden ist.
| Option | Beschreibung |
|---|---|
| Laufzeitraster | Legt fest, in welchem Partitionsraster dieser Actor platziert wird. Bei Keine wird das Raster vom Partitionssystem gewählt. |
| Ist räumlich geladen | Bestimmt, ob der Actor räumlich geladen ist:
|
Da Actors mit der Funktion „Eine Datei pro Actor" in ihren eigenen Dateien gespeichert werden, musst du die Level-Datei nicht aus der Versionskontrolle auschecken, um Änderungen an den Actors in der Welt vorzunehmen. Dadurch wird die Level-Datei für andere Mitglieder deines Teams frei.
Weitere Informationen über das „Eine Datei pro Actor"-System und die integrierte Versionskontrolle der Unreal Engine findest du in der Dokumentation Eine Datei pro Actor.
Actors, die auf andere Actors im Level verweisen, werden gebündelt und zur gleichen Zeit geladen.
Streamingquellen
Das Streaming von Rasterzellen innerhalb des Rasters zur Laufzeit wird durch zwei Faktoren bestimmt:
- Streamingquellen
- Laufzeitraster-Einstellungen
Der erste ist die Position der Streamingquellen in der Ebene.

Streamingquellen sind Komponenten, die eine Position in der Welt definieren und das Laden von Zellen um sie herum auslösen. Player-Controller sind eine Streamingquelle. Weitere Streamingquellen können der Welt mit Hilfe der Komponente World Partition Streamingquelle hinzugefügt werden. Beispielsweise kann eine Streamingquellkomponente an dem Ort aktiviert werden, an den sich ein Spieler teleportieren wird, damit sie die Zellen dort laden kann. Sobald die Rasterzellen geladen sind, teleportiert sich der Spieler an den Ort und die Streamingquellkomponente wird deaktiviert. Da es an der vorherigen Position des Spielers keine Streamingquelle mehr gibt, würden diese Rasterzellen entladen werden.
Den Spieler als Streamingquelle verwenden
Jeder Player-Controller wird mit der Option Streaming-Quelle aktivieren als Streamingquelle für World Partition verwendet. Dies ist standardmäßig aktiviert:
Die World Partition Streamingquellkomponente verwenden
World Partition Streaming wird auch mit der World Partition Streamingquellkomponente durchgeführt:
Diese Komponente bietet die folgenden Optionen:
| Option | Beschreibung |
|---|---|
| Standard-Visualisierungsladebereich | Bestimmt die Größe des Debug-Visualisierungsrasters, wenn der Visualizer aktiviert ist. |
| Zielraster | Bestimmt das von dieser Quelle betroffene Streaming-Raster. |
| Debug-Farbe | Bestimmt die Farbe, die für das Debuggen verwendet wird. |
| Ziel-HLOD-Ebene | Bestimmt die von der Streamingquelle betroffene HLOD-Ebene. |
| Formen | Bestimmt die Formenliste, die zur Erstellung einer benutzerdefinierten Form für diese Streamingquelle verwendet wird. Wenn leer, wird eine Kugel mit einem Radius verwendet, der dem Ladebereich des Rasters entspricht. |
| Priorität | Bestimmt die Priorität der Streamingquelle. Wenn sich eine Rasterzelle mit mehreren Streamingquellen überschneidet, hat sie die höchste Priorität unter allen Streamingquellen. |
| Streamingquelle aktiviert | Bestimmt, ob diese Komponente aktiviert ist. |
| Zielzustand | Legt fest, in welchem Zustand die sich schneidende Rasterzelle sein soll (entweder Geladen oder Aktiviert). Wenn sich eine Rasterzelle mit mehreren Streamingquellen überschneidet, ist der Zielzustand der höchste Zielwert (bei dem aktiviert größer als geladen ist). |
Die Blueprint-Funktionen Streamingquelle aktivieren und Streamingquelle deaktivieren aktivieren und deaktivieren das Streaming mit dieser Komponente.
Die Blueprint-Funktion Ist Streaming abgeschlossen gibt „true" zurück, wenn die Komponente das Streaming der Rasterzellen, die sie schneidet, beendet hat.
Laufzeitraster-Einstellungen
Der zweite Faktor, der bestimmt, ob eine Rasterzelle zur Laufzeit geladen oder entladen wird, sind die Einstellungen des Laufzeitrasters selbst. Die Einstellungen für das Laufzeitraster befinden sich im Bereich Welteinstellungen im Abschnitt World Partition Einrichtung.
Standardmäßig wird ein 2D Runtime Hash-Raster bereitgestellt. Die Verwendung von mehr als einem Raster kann sich negativ auf die Leistung auswirken.
Weitere Informationen zur empfohlenen Einrichtung und zu den Einstellungen für das 2D-Runtime-Hash-Raster findest du in der Karte Big City im Projekt [City Sample] (https://www.unrealengine.com/marketplace/en-US/product/city-sample).
| Option | Beschreibung |
|---|---|
| Rastername | Enthält den Namen des Laufzeitrasters. |
| Zellengröße | Bestimmt die Größe der Rasterzellen, die zur Erzeugung der Streaming-Levels verwendet werden. In diesem Beispiel beträgt die Zellengröße 256 Quadratmeter. |
| Ladebereich | Bestimmt den Bereich einer Streamingquelle, in den Zellen geladen werden. In der obigen Abbildung ist der Ladebereich ein Radius von 768 Metern um eine Streamingquelle. |
| Blockieren bei langsamem Streaming | Blockiert das Laden in Situationen, in denen die Rasterzellen nicht schnell genug geladen werden. |
| Priorität | Bestimmt die Priorität der Streamingquelle. Wenn sich eine Rasterzelle mit mehreren Streamingquellen überschneidet, hat sie die höchste Priorität unter allen Streamingquellen. |
| Debug-Farbe | Bestimmt die Farbe der Rasterlinien, die angezeigt werden, wenn Vorschauraster aktiviert ist. |
| Vorschauraster | Wenn aktiviert, werden die Rasterlinien im Viewport angezeigt. |
| Instanzierte Laubrastergröße | Bestimmt die Größe des Rasters für Instanzierte Laub-Actors. |
| Default World Partition Einstellungen | Setzt die aktuellen Rastereinstellungen auf die Standardwerte zurück oder speichert die aktuellen Einstellungen als neue Standardwerte. |
| Zellengröße des World Partition Editors | Bestimmt die Zellengröße des World Partition Editors. Die neuen Größen werden erst beim nächsten Neuladen der Welt wirksam. |
Laden und Entladen von Regionen im Editor
Um die Entwicklung großer Welten zu unterstützen, werden alle Rasterzellen zunächst entladen. Wenn der Level geöffnet wird, lädt der Editor nur die Actors, deren Einstellung „Ist räumlich geladen" als „false" markiert ist, wie z.B. Umgebungskulissen und Manager. Dies unterstützt die Entwicklung von großen Welten, bei denen es unmöglich ist, die gesamte Karte in den Editor zu laden.
Im World Partition-Fenster kannst du die Region, in der du arbeiten möchtest, manuell auswählen. Öffne das Fenster, indem du Fenster > World Partition > World Partition Editor aus dem Hauptmenü wählst.
Klicke in das Fenster und ziehe einen Bereich heraus. Klicke dann mit der rechten Maustaste auf die Auswahl, um das Kontextmenü zu öffnen, und wähle Bereich aus Auswahl laden.
Minimap für das World Partition-Fenster generieren
Du kannst eine Minimap erstellen, um die Navigation im World Partition-Fenster zu erleichtern, indem du die Option Minimap erstellen im World Partition-Abschnitt des Menüs Erstellen oder das Commandlet World Partition Minimap Builder verwendest.
Wenn du dieses Commandlet ausführst, wird ein Minimap-Abbild deiner World Partition-Welt erstellt und im World Partition-Fenster platziert.
Wenn du deine Minimap erstellst und sie nicht im World Partition-Fenster erscheint, musst du die Unterstützung für virtuelle Texturen in deinem Projekt aktivieren. Um virtuelle Texturen zu aktivieren, gehe im Hauptmenü zu Bearbeiten > Projekt-Einstellungen. Aktiviere dann das Kontrollkästchen Unterstützung für virtuelle Texturen aktivieren.
Hierarchische Detaillierungsgrade (HLODs) erzeugen
HLODs werden mit der Option Build HLODs im Abschnitt World Partition des Menüs Build oder mit dem Commandlet World Partition HLODs Builder erzeugt.
Wenn du dieses Commandlet ausführst, werden die HLOD-Actors für deine World Partition-Zellen gemäß den Generierungseinstellungen erstellt, die du in deinen HLOD-Ebenen angegeben hast. Weitere Informationen zur Verwendung von Hierarchischen Detaillierungsgraden (HLODs) in World Partition und zur Verwendung des Commandlets World Partition HLODs Builder findest du in der Dokumentation World Partition - Hierarchischer Detaillierungsgrad.
World Partition-Welt cooken
Das Cooking einer World Partition-Karte erfordert die Verwendung des Cook Commandlets:
Befehl: UnrealEditor.exe QAGame -run=cook -targetplatform=WindowsNoEditor -Unversioned -map=Playground
So funktioniert das Cooking deiner World Partition-Karte:
- Öffne in Windows ein Eingabeaufforderungsfenster.
- Navigiere in der Eingabeaufforderung zum Speicherort der ausführbaren Datei
UnrealEditor.exe. - Beginne als Nächstes den Befehl mit dem Namen der .exe-Datei, die das Commandlet ausführt,
UnrealEditor.exe. - Füge den Namen des Projekts hinzu. Hier
QAGame. - Fahre fort mit dem Namen des auszuführenden Commandlets,
-run=cook. - Beende den Befehl mit den folgenden Argumenten:
-targetplatform=WindowsNoEditorcookt das Projekt für Windows-Plattformen.-UnVersionedspeichert alle gecookten Pakete ohne Versionen. Es wird dann beim Laden davon ausgegangen, dass es sich um die aktuelle Version handelt.-map=Playgroundgibt den Namen der Karte an, in diesem FallPlayground.umap.
Weitere Informationen zur Verwendung des Cook-Commandlet findest du unter Content-Cooking.
World Partition mit Blueprint verwenden
Sowohl Blueprint-Klassen als auch Level-Blueprints werden in einer World Partition-Welt unterstützt. Blueprint-Klassen sind jedoch vorzuziehen, da alle Actors, auf die im Level-Blueprint verwiesen wird, als „Immer geladen" markiert werden.
Testen einer partitionierten Welt
Debuggen und Laufzeitüberschreibungen
Es gibt mehrere nützliche Konsolenbefehle zum Debuggen einer World Partition-Welt während der Laufzeit.
| Konsolenbefehl | Beschreibung |
|---|---|
| wp.Runtime.ToggleDrawRuntimeHash2D | Schaltet die 2D-Debug-Anzeige des World Partition Laufzeit-Hashes ein. |
| wp.Runtime.ToggleDrawRuntimeHash3D | Schaltet die 3D-Debug-Anzeige des World Partition Laufzeit-Hashes ein. |
| wp.Runtime.ShowRuntimeSpatialHashGridLevel | Wählt aus, welche Rasterebene angezeigt werden soll, wenn der World Partition Laufzeit-Hash angezeigt wird. |
| wp.Runtime.ShowRuntimeSpatialHashGridLevelCount | Wählt aus, wie viele Rasterlevels angezeigt werden sollen, wenn der World Partition Laufzeit-Hash angezeigt wird. |
| wp.Runtime.ShowRuntimeSpatialHashGridIndex | Zeigt ein bestimmtes Raster an, wenn der World Partition Runtime-Hash angezeigt wird. Ein ungültiger Index zeigt alle an. |
| wp.Runtime.RuntimeSpatialHashCellToSourceAngleContributionToCellImportance | Nimmt einen Wert zwischen 0 und 1 an, der den Beitrag des Winkels zwischen dem Streamingquelle-zu-Zelle-Vektor und dem Source-Forward-Vektor zur Zellenbedeutung moduliert. Je näher der Wert bei 0 liegt, desto weniger trägt der Winkel zur Bedeutung der Zelle bei. |
| wp.Runtime.OverrideRuntimeSpatialHashLoadingRange | Legt den Laufzeit-Ladebereich fest. Nimmt die folgenden Argumente an:
|
| wp.Runtime.MaxLoadingLevelStreamingCells | Begrenzt die Anzahl der gleichzeitig ladenden World Partition Streaming-Zellen. |
| wp.Runtime.HLOD 0 | Zeigt die Welt ohne HLODs mit wp.Runtime.HLOD. |
World Partition Builder Commandlets
World Partition führt mit dem UWorldPartitionBuilderCommandlet und der Basisklasse UWorldPartitionBuilder ein Builder Commandlet Framework ein.
Diese Commandlets werden verwendet, um Batch-Prozesse zu automatisieren und Daten in World Partition-Levels zu erzeugen oder zu ändern. Große Welten müssen nicht mehr auf einmal geladen werden, um z.B. HLODs und KI-Nav-Daten zu erzeugen oder eine große Anzahl von Actors zu speichern.
World Partition HLODs Builder
HLODs werden mit dem Commandlet World Partition HLODs Builder erzeugt. Wenn du dieses Commandlet ausführst, werden die HLOD-Actors für deine World Partition-Zellen gemäß den Generierungseinstellungen erstellt, die du in deinen HLOD-Ebenen angegeben hast.
Befehl: UnrealEditor.exe "C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest" -run=WorldPartitionBuilderCommandlet -AllowCommandletRendering -builder=WorldPartitionHLODsBuilder
Weitere Informationen zur Verwendung von Hierarchischen Detaillierungsgraden (HLODs) in World Partition und zur Verwendung des World Partition HLODs Builder Commandlet findest du in der Dokumentation World Partition - Hierarchischer Detaillierungsgrad.
World Partition Minimap Builder
Das Commandlet World Partition MiniMap Builder erzeugt oder aktualisiert die Minimap, die im WorldPartition Editor-Fenster angezeigt wird.
Befehl: UnrealEditor.exe "C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest" -run=WorldPartitionBuilderCommandlet -AllowCommandletRendering -builder=WorldPartitionMiniMapBuilder
World Partition Rename Duplicate Builder
Das World Partition Rename Duplicate Builder Commandlet automatisiert den Prozess des Umbenennens oder Duplizierens eines bestehenden World Partition-Levels und aller ihrer Actors.
Befehl: UnrealEditor.exe "C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest" -run=WorldPartitionBuilderCommandlet -SCCProvider=None -builder=WorldPartitionRenameDuplicateBuilder -NewPackage=/Game/ThirdPersonBP/Maps/NewPackage
Dies erstellt ein Duplikat des World Partition-Levels der Karte OpenWorldTest mit dem Namen NewPackage und lässt die ursprüngliche Karte unangetastet.
Um deine World Partition-Karte umzubenennen, anstatt eine Kopie zu erstellen, füge das Argument Rename hinzu.
World Partition Resave Actors Builder
Das Commandlet World Partition Resave Actors Builder speichert alle Actors eines World Partition-Levels und unterstützt einen Klassenfilter, um nur eine Teilmenge von Actors zu speichern.
Befehl: UnrealEditor.exe "C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest" -run=WorldPartitionBuilderCommandlet -SCCProvider=None -builder=WorldPartitionResaveActorsBuilder
Wenn du das obige Beispiel ausführst, werden alle Pakete des Actors im OpenWorldTest-Level neu gespeichert.
Du kannst das Argument „ActorClass" verwenden, um nur eine Untergruppe von Actors zu spezifizieren, die neu gespeichert werden sollen. Wenn du zum Beispiel -ActorClass=StaticMeshActor hinzufügst, werden nur die Statisches-Gitter-Actors im angegebenen Level neu gespeichert.
World Partition Foliage Builder
In einer World Partition-Karte beträgt die Standardrastergröße für Laub-Instanzen 256 Meter. Das Commandlet World Partition Foliage Builder wird verwendet, um die instanzierte Laubrastergröße für einen bestehenden World Partition-Level zu ändern.
Befehl: UnrealEditor.exe QAGame Playground.umap -run=WorldPartitionBuilderCommandlet -Builder=WorldPartitionFoliageBuilder -NewGridSize=Value
Weitere Informationen zur Verwendung des Laubmodus mit World Partition findest du in der Dokumentation Laubmodus.
World Partition Navigation Data Builder
Das Commandlet World Partition Navigation Data Builder baut den Navmesh in deinem World Partition-Level neu auf.
Befehl: UnrealEditor.exe "C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest" -run=WorldPartitionBuilderCommandlet -AllowCommandletRendering -builder=WorldPartitionNavigationDataBuilder -SCCProvider=None
Dieses Commandlet nimmt die folgenden Argumente an:
| Optionales Argument | Beschreibung |
|---|---|
| -SCCProvider | Gibt an, welcher Versionskontrollanbieter verwendet werden soll. Um ohne Versionskontrolle zu arbeiten, gib -SCCProvider=None an. |
| -Verbose | Zeigt eine ausführliche Protokollierung an. |
| -Log | Gibt das Protokoll in eine bestimmte Datei aus. |
| -CleanPackages | Löscht alle Navigationsdatenpakete, anstatt sie zu erstellen. |
World Partition Smart Object Collection Builder
Das Commandlet „World Partition Smart Object Collection Builder" baut die Smart-Objekt-Sammlung aus allen Smart-Objekt-Komponenten in deinem World Partition-Level neu auf.
Befehl: UnrealEditor.exe "C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest" -run=WorldPartitionBuilderCommandlet -builder=WorldPartitionSmartObjectCollectionBuilder
Wenn du das obige Beispiel ausführst, wird die gesamte Smart-Objekt-Sammlung im OpenWorldTest-Level neu erstellt. Du kannst das Argument -SCCProvider mit diesem Commandlet verwenden, um den zu verwendenden Versionskontrollanbieter anzugeben.