World Partition führt mit dem UWorldPartitionBuilderCommandlet und der Basis-Klasse 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 finden Sie 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 Umbenennen Duplizieren Builder
Das Commandlet World Partition Umbenennen Duplizieren Builder 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 die ursprüngliche Karte bleibt unberührt.
Um Ihre World Partition-Karte umzubenennen, anstatt eine Kopie zu erstellen, fügen Sie das Argument -Rename hinzu.
World Partition Neuspechern Actor Builder
Das Commandlet World Partition Neuspeichern 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.
Sie können das Argument -ActorClass verwenden, um nur eine Untergruppe von Actors zu spezifizieren, die neu gespeichert werden sollen. Wenn Sie zum Beispiel -ActorClass=StaticMeshActor hinzufügen, werden nur die Statisches-Mesh-Actors im angegebenen Level neu gespeichert.
World Partition Vegetations-Builder
In einer World Partition-Karte beträgt die Standardrastergröße für Laub-Instanzen 256 Meter. Das Commandlet World Partition Vegetations-Builder wird verwendet, um die instanziierte Vegetationsgröß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 Vegetationsmodus mit World Partition finden Sie in der Dokumentation Vegetationsmodus.
World Partition Navigation Daten Builder
Das Commandlet World Partition Navigation Daten Builder baut den NavMesh in Ihrem 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 Quellkontrollanbieter verwendet werden soll. Zur Ausführung ohne Quellkontrolle geben Sie |
-Verbose | Zeigt die ausführliche Protokollierung an. |
-Log | Gibt das Log in eine bestimmte Datei aus. |
- CleanPackages | Löscht alle Navigationsdatenpakete, anstatt sie zu erstellen. |
World Partition Smart Objekt Sammlungs 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. Sie können das Argument -SCCProvider mit diesem Commandlet verwenden, um den zu verwendenden Quellkontrollanbieter anzugeben.
World Partition PCG Builder
Das Commandlet World Partition PCG Builder lädt vollständig den Level, wartet auf das Abschließen von asynchronen Prozessen, wie z. B. das Erstellen von statischen Meshs, und plant dann die Generierung der passenden PCG-Komponenten. Wenn die Generierung abgeschlossen ist, speichert der Prozess das World Partition-Level und beendet sich.
Befehlszeile: UnrealEditor.exe „C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest“ -Unattended -AllowCommandletRendering -run=WorldPartitionBuilderCommandlet -Builder=PCGWorldPartitionBuilder -IncludeGraphNames=PCG_GraphA;PCG_GraphB
Konsolenbefehl: pcg.BuildComponents -IncludeGraphNames=PCG_GraphA;PCG_GraphB
Dieses Commandlet nimmt die folgenden Argumente an:
| Optionales Argument | Beschreibung |
|---|---|
-IncludeGraphNames | Enthält eine Liste von Diagrammnamen in der Generierung, die durch |
-GenerateComponentEditingModeLoadAsPreview | Komponenten, die mit dem Editor-Modus Als Vorschau laden gespeichert wurden, werden bei Verwendung dieses Arguments für die Generierung berücksichtigt. |
-GenerateComponentEditingModeNormal | Generiert Komponenten, wobei der Bearbeitungsmodus auf Normal eingestellt ist. Standardmäßig werden nur Komponenten erzeugt, die mit dem Bearbeitungsmodus Als Vorschau laden gespeichert wurden. |
-GenerateComponentEditingModePreview | Generiert Komponenten, wobei der Bearbeitungsmodus auf Vorschau eingestellt ist. Standardmäßig werden nur Komponenten erzeugt, die mit dem Bearbeitungsmodus Als Vorschau laden gespeichert wurden. |
-IgnoreGenerationErrors | Sendet das Ergebnis an die Quellkontrolle, unabhängig von Fehlern (aber die Fehler werden weiterhin gemeldet und der Job-Status ist weiterhin Fehlgeschlagen). Dies kann verwendet werden, um den Job auch bei Auftreten von Fehlern online zu halten, sollte aber mit Vorsicht verwendet werden. Standardmäßig wird jeder Fehler, der während der Generierung einer Komponente auftritt, beim Builder registriert und führt dazu, dass der Build-Job fehlschlägt und die Ergebnisse nicht abgesendet werden. |
-IncludeActorIDs | Enthält eine Liste von eindeutigen Actor-IDs, die durch |
-OneComponentAtATime | Plant die Generierung einer Komponente nach der anderen und wartet, bis jede Generierung abgeschlossen ist, bevor eine neue Komponente geplant wird. Nützlich beim Debuggen, um sicherzustellen, dass sich die asynchronen Prozesse nicht gegenseitig stören. |
-PCGBuilderSettings | Gibt ein PCGBuilderSettings -Asset an, das beim Einrichten des Builder Commandlets verwendet werden soll. Alle Commandlet-Argumente überschreiben die im Asset PCGBuilderSettings festgelegten Argumente. |
-IterativeCellLoading | Verarbeitet die Welt mit einer bestimmten Zellengröße, damit nicht alles auf einmal geladen wird. Geladene Komponenten generieren und speichern. Dann werden sie entladen und der Builder wechselt in eine andere Zelle. Dies ist nützlich für große Welten, bei denen das Laden der gesamten Welt Speicherprobleme verursacht. |
-IterativeCellSize | Überschreibt die Standardzellengröße bei Verwendung von IterativeCellLoading. Standard ist |
-Unbeaufsichtigt | Vermeidet die Initialisierung der Editor-UI, läuft stattdessen in der Konsole. |
-AllowCommandletRendering | Initialisiert das Rendering Subsystem. Nützlich, weil PCG Funktionalität besitzt, die die GPU nutzt. |
-AutoSubmit | Versucht, die Ergebnisse an die Quellkontrolle zu senden, wenn verfügbar. |
-AssetGatherAll | Erstellen Sie das vollständige Asset-Registry für alle Assets im Projekt. Erforderlich, wenn der Builder Zugang zu Assets haben muss, die nicht im Level referenziert sind. |