O sistema de geração automática de LODs permite que você reduza automaticamente a contagem de polígonos das suas malhas estáticas para criar LODs com o editor da Unreal Engine 5 (UE5). A geração automática de LODs usa a simplificação de malha quadrática para ajudar a gerar os LODs para malhas estáticas. A simplificação de malhas quadráticas funciona por meio do cálculo da quantidade de diferença visual que seria gerada ao recolher uma aresta (ao mesclar dois vértices). Em seguida, recolhe a aresta com o menor impacto visual. Quando isso acontece, a ferramenta escolherá o melhor lugar para colocar o vértice recém-mesclado, removendo todos os triângulos que também tenham sido recolhidos junto com a aresta. As arestas continuarão a ser recolhidas até que se atinja o número desejado de triângulos. No guia a seguir, mostraremos como configurar e usar o sistema de geração automática de LODs nos projetos da UE5.
Configuração
Na seção a seguir, criaremos um projeto com Conteúdo Inicial e abriremos um ativo de malha estática com o qual trabalharemos.
Para esta parte do tutorial, usaremos a malha estática SM_Rock que acompanha o Conteúdo Inicial. No entanto, fique à vontade para usar qualquer malha estática que preferir.
-
Se ainda não tiver feito isso, abra ou crie um projeto na UE5, verificando se a configuração With Starter Contet (Com Conteúdo Inicial) está habilitada.
Clique na imagem para ampliá-la.
-
Após carregar o projeto, procure a malha estática SM_Rock e clique duas vezes nela para abri-la no Editor de Malha Estática.
Clique na imagem para ampliá-la.
Como criar LODs
Os LODs podem ser gerados de duas maneiras. O primeiro método, que é o método que a Epic recomenda, é usar as predefinições de LOD Group, que criam LODs automaticamente com base nas definições pré-configuradas. O segundo método envolve configurar os LODs por conta própria. Abaixo, você encontrará descrições detalhadas sobre como usar cada método de criação de LODs.
Como usar grupos de LODs
O uso de grupos de LODs é a melhor maneira de criar LODs dentro da UE5 com a ferramenta Automatic LOD. Na seção a seguir, veremos como configurar e usar grupos de LODs nos projetos da UE5.
-
Primeiro, encontre o arquivo BaseEngine.ini do projeto e abra-o em um editor de texto. Agora procure a seção
[StaticMeshLODSettings]. Se essa entrada não estiver no arquivo "BaseEngine.ini", copie e cole o código a seguir no seu arquivo "BaseEngine.ini".[StaticMeshLODSettings] LevelArchitecture=(NumLODs=4,LightMapResolution=32,LODPercentTriangles=50,PixelError=12,SilhouetteImportance=4,Name=LOCTEXT("LevelArchitectureLOD","Level Architecture")) SmallProp=(NumLODs=4,LODPercentTriangles=50,PixelError=10,Name=LOCTEXT("SmallPropLOD","Small Prop")) LargeProp=(NumLODs=4,LODPercentTriangles=50,PixelError=10,Name=LOCTEXT("LargePropLOD","Large Prop")) Deco=(NumLODs=4,LODPercentTriangles=50,PixelError=10,Name=LOCTEXT("DecoLOD","Deco")) Vista=(NumLODs=1,Name=LOCTEXT("VistaLOD","Vista")) Foliage=(NumLODs=1,Name=LOCTEXT("FoliageLOD","Foliage")) HighDetail=(NumLODs=6,LODPercentTriangles=50,PixelError=6,Name=LOCTEXT("HighDetailLOD","High Detail"))Adicionar, remover ou ajustar as entradas nesta seção adicionará, removerá ou ajustará como os grupos de LODs funcionam quando são usados.
-
Abra o Editor da UE5 e, em seguida, a malha estática para a qual você deseja gerar LODs ao clicar duas vezes nela no Navegador de Conteúdo. Neste exemplo, usaremos SM_Rock, que vem com o Conteúdo Inicial.
-
Com a malha estática aberta no editor de malha estática, vá para o painel Details e expanda a seção LOD Settings.
Clique na imagem para ampliá-la.
-
Na seção LOD Settings, clique no botão LOD Group e, na lista exibida, selecione a opção SmallProp.
Clique na imagem para ampliá-la.
-
Você receberá uma notificação de que suas configurações atuais serão substituídas pelas novas configurações de SmallProp. Pressione o botão Yes para continuar.
Clique na imagem para ampliá-la.
-
Agora o editor de malha estática tem quatro entradas novas de LOD (LOD0, LOD1, LOD2 e LOD3), adicionadas ao painel Details. Se você clicar em cada entrada de LOD, perceberá que as configurações correspondem às que foram definidas em StaticMeshLODSettings, no arquivo BaseEngine.ini do projeto.
Clique na imagem para ampliá-la.
Clique na imagem para ampliá-la.
Certifique-se de que Auto Compute LOD Distances esteja marcado, pois isso ajudará a determinar qual tamanho de tela usar para o LOD. Como o algoritmo sabe a diferença visual que cada borda recolhida adiciona, ele pode usar essa informação para determinar a distância aceitável para essa quantidade de erro. Se essa opção for desativada, o tamanho da tela para cada LOD precisará ser definido manualmente, o que pode levar a erros.
Agora experimente diferentes configurações de grupo de LOD para ver como elas criarão LODs para seus objetos. Na próxima seção, veremos como criar LODs de forma manual.
Como criar LOD manualmente
Nesta seção, mostraremos como configurar e criar LODs manualmente para os ativos do seu projeto.
Embora o seguinte procedimento crie LODs para você, a Epic recomenda usar o método LOD Groups descrito na seção anterior.
-
No painel Details do editor de malha estática, expanda a seção LOD Settings e procure a opção Number of LODs.
Clique na imagem para ampliá-la.
O Grupo de LOD fornece uma lista de predefinições para escolher rapidamente as configurações de LOD corretas para o projeto. Elas podem ser alteradas a cada projeto, em BaseEngine.ini, [StaticMeshLODSettings]. Incentivamos a definir categorias adequadas para o projeto, usando principalmente grupos de LOD, em vez de controlar os detalhes de cada LOD.
-
Defina o Number of LODs para four e pressione o botão Apply Changes para adicionar os quatro (novos) LODs à malha.
Clique na imagem para ampliá-la.
Certifique-se de que Auto Compute LOD Distances esteja marcado, pois isso ajudará a determinar qual tamanho de tela usar para o LOD. Como o algoritmo sabe a diferença visual que cada borda recolhida adiciona, ele pode usar essa informação para determinar a distância aceitável para essa quantidade de erro. Se essa opção for desativada, o tamanho da tela para cada LOD precisará ser definido manualmente, o que pode levar a erros.
-
Pressione o triângulo pequeno branco ao lado de LOD1 para expandir essa seção e o triângulo pequeno branco ao lado de Reduction Settings.
Clique na imagem para ampliá-la.
-
Em Reduction Settings, localize a seção Percent Triangle e defina um valor de 75 antes de pressionar o botão Apply Changes.
Clique na imagem para ampliá-la.
-
Agora expanda LOD2 e LOD3, definindo Percent Triangles de LOD2 como 25 por cento e Percent Triangle de LOD3 como 12 por cento. Ao concluir, você verá vários triângulos que cada LOD usa ao lado do nome do LOD (como na imagem abaixo).
Clique na imagem para ampliá-la.
Clique na imagem para ampliá-la.
-
Agora, conforme aproxima ou afasta a câmera do objeto no editor de malha estática, você poderá ver os LODs mudarem. Se a mudança visual nos LODs for muito difícil de perceber, as informações sobre a mudança de LOD serão exibidas no lado esquerdo da tela.
Clique na imagem para ampliá-la.
Com os LODs configurados para esta malha estática, ela escolherá automaticamente qual LOD exibir com base na distância da câmera ao ser posicionada em um nível.
Resultado final
No documento a seguir, analisamos duas maneiras diferentes de usar as ferramentas de geração automática de LOD que a UE5 tem a oferecer. Lembre-se de que, ao usar as ferramentas automáticas de LOD, é melhor configurar e definir diferentes grupos de LOD que atendam às necessidades do projeto e, em seguida, selecionar essas configurações usando o menu suspenso LOD Group nas configurações do LOD.