A World Partition apresenta um framework de commandlets de compilador por meio das classes-base UWorldPartitionBuilderCommandlet e UWorldPartitionBuilder
Esses commandlets são usados para automatizar processos em lote e gerar ou modificar dados em Níveis do World Partition. Mundos grandes não precisarão ser carregados de uma só vez para gerar HLODs, dados de navegação de AI ou salvar novamente um grande número de atores.
Compilador de HLODs de World Partition
HLODs são gerados usando o commandlet Compilador de HLODs de World Partition. A execução desse commandlet cria atores de HLOD para as células do World Partition de acordo com as configurações de geração especificadas nas camadas HLOD.
Comando: UnrealEditor.exe "C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest" -run=WorldPartitionBuilderCommandlet -AllowCommandletRendering -builder=WorldPartitionHLODsBuilder
Para obter mais informações sobre como usar os Níveis de Detalhe Hierarquizados (HLODs) no World Partition e usar o commandlet do Construtor de HLODs do World Partition, consulte a documentação World Partition - Níveis de Detalhe Hierarquizados.
Compilador de Minimapa de World Partition
O commandlet Compilador de Minimapa de World Partition gera ou atualiza o minimapa que é exibido na janela Editor de World Partition.
Comando: UnrealEditor.exe "C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest" -run=WorldPartitionBuilderCommandlet -AllowCommandletRendering -builder=WorldPartitionMiniMapBuilder
Compilador Duplicado de Renomeação de World Partition
O commandlet Compilador Duplicado de Renomeação de World Partition automatiza o processo de renomeação ou duplicação de um nível existente da World Partition e todos os seus atores.
Comando: 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
Isso criará um nível de World Partition duplicado do mapa OpenWorldTest chamado NewPackage e deixará o mapa original intacto.
Para renomear o mapa da World Partition em vez de fazer uma cópia, adicione o argumento -Rename.
Compilador de Ator de Novo Salvamento de World Partition
O commandlet Compilador de Ator de Novo Salvamento de World Partition salva novamente todos os atores do nível da World Partition e suporta um filtro de classe para salvar novamente apenas um subconjunto de atores.
Comando: UnrealEditor.exe "C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest" -run=WorldPartitionBuilderCommandlet -SCCProvider=None -builder=WorldPartitionResaveActorsBuilder
Ao executar o exemplo acima, todos os pacotes do ator no nível OpenWorldTest são salvos novamente.
Você pode usar o argumento -ActorClass para especificar apenas um subconjunto de atores a serem salvos novamente. Por exemplo, adicionar -ActorClass=StaticMeshActor salvará novamente apenas os atores de malha estática no nível especificado.
Compilador de Folhagem de World Partition
Em um mapa do World Partition, o Tamanho da Grade de Folhagem Instanciada padrão para Instâncias de Folhagem é de 256 metros. O commandlet Compilador de Folhagem de World Partition é usado para alterar o tamanho da grade de folhagem instanciada para o nível da World Partition existente.
Comando: UnrealEditor.exe QAGame Playground.umap -run=WorldPartitionBuilderCommandlet -Builder=WorldPartitionFoliageBuilder -NewGridSize=Value
Para obter mais informações sobre como usar o Modo Folhagem com a World Partition, consulte a documentação do Modo de Folhagem.
Construtor de Dados de Navegação de World Partition
O commandlet Construtor de Dados de Navegação de World Partition recompila a navmesh seu Nível de World Partition.
Comando: UnrealEditor.exe "C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest" -run=WorldPartitionBuilderCommandlet -AllowCommandletRendering -builder=WorldPartitionNavigationDataBuilder -SCCProvider=None
Este commandlet aceita os seguintes argumentos:
| Argumento opcional | Descrição |
|---|---|
-SCCProvider | Especifica qual provedor de controle da fonte usar. Para executar sem o controle de origem, especifique |
-Verbose | Exibe o registro em log detalhado. |
-Log | Saídas de registro para um arquivo específico. |
-CleanPackages | Limpa todos os pacotes de dados de navegação em vez de compilá-los. |
Compilador de Coleção de Objetos Inteligentes de World Partition
O commandlet Compilador de Coleção de Objetos Inteligentes do World Partition recompila a coleção de objetos inteligentes de todos os componentes de objetos inteligenteets que estão no nível do seu World Partition.
Comando: UnrealEditor.exe "C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest" -run=WorldPartitionBuilderCommandlet -builder=WorldPartitionSmartObjectCollectionBuilder
Ao executar o exemplo acima, toda a Coleção de Objetos Inteligentes no nível OpenWorldTest é recompilada. Você pode usar o argumento -SCCProvider com este commandlet para especificar qual provedor de controle do código-fonte usar.
Compilador de PCG de World Partition
O commandlet Compilador de PCG de World Partition carrega o nível completamente, aguarda a conclusão de processos assíncronos, como compilações de malhas estáticas, e agenda a geração nos componentes PCG correspondentes. Quando a geração estiver concluída, o processo salvará o nível do World Partition e sairá.
Linha de comando: 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
Comando de console: pcg.BuildComponents -IncludeGraphNames=PCG_GraphA;PCG_GraphB
Este commandlet aceita os seguintes argumentos:
| Argumento opcional | Descrição |
|---|---|
-IncludeGraphNames | Inclui uma lista de nomes de gráficos na geração, separados por |
-GenerateComponentEditingModeLoadAsPreview | Os componentes salvos com Carregar como visualização do modo de editor serão considerados para geração quando este argumento for usado. |
-GenerateComponentEditingModeNormal | Gera componentes com o modo de edição definido como Normal. Por padrão, somente componentes salvos com o modo de edição Carregar como pré-visualização são gerados. |
-GenerateComponentEditingModePreview | Gera componentes com o modo de edição definido como Pré-visualização. Por padrão, somente componentes salvos com o modo de edição Carregar como pré-visualização são gerados. |
-IgnoreGenerationErrors | Envia o resultado aos controles da fonte, independentemente dos erros (mas os erros ainda são relatados e o status do trabalho ainda será "Failed"). Pode ser usado para manter o trabalho funcionando mesmo na presença de erros, mas deve ser usado com cuidado. Por padrão, qualquer erro que ocorrer durante a geração de um componente será registrado no compilador, a compilação irá fracassar e os resultados não serão enviados. |
-IncludeActorIDs | Inclui uma lista de ID de atores exclusivos separados por |
-OneComponentAtATime | Programa a geração de um componente por vez e aguarda a conclusão de cada geração antes de programar um novo componente. Útil durante a depuração para garantir que os processos assíncronos não interfiram entre si. |
-PCGBuilderSettings | Especifica um ativo PCGBuilderSettings a ser usado ao configurar o commandlet do compilador. Todos os argumentos do commandlet substituem os argumentos definidos no ativo PCGBuilderSettings. |
-IterativeCellLoading | Processa o mundo usando um tamanho de célula específico para evitar carregar tudo de uma vez. Os componentes carregados são gerados e salvos. Eles são descarregados e o construtor se move para uma célula diferente. Isso é útil para mundos grandes, em que carregar o mundo inteiro causa problemas de memória. |
-IterativeCellSize | Substitui o tamanho de célula padrão ao usar IterativeCellLoading. O padrão é |
-Unattended | Evita inicializar a interface do usuário do editor, é executado no console. |
-AllowCommandletRendering | Inicializa o subsistema de renderização. Útil porque o PCG tem algumas funcionalidades que utilizam a GPU. |
-AutoSubmit | Tenta enviar o resultado ao controle da fonte, se disponível. |
-AssetGatherAll | Compila o registro completo de ativos para todos os ativos do projeto. Obrigatório se o compilador precisar acessar ativos não referenciados no nível. |