Unreal Engine 3D Ocean Material

Por: Harley  

Em: 25/11/2017 10:11

Olá andré.

Umas dúvidas...
A densidade da malha altera o peso do nanite ?
Se eu botar densidade nas folhas vai precisar gerar DistanceField ?
A malha precisa ser fechada ou podem ter aberturas ?
Nesse tutorial o cara linkou Metalness...essa foi novidade pra mim https://3d1.com.br/noticia/72385
Oi Harley, tudo bem?

Então, antes de tudo, eu te falei que o Lumen não aceitava máscaras nas vegetações, pois li isso na própria documentação do Unreal 5, mas não testei este ponto específico por falta de tempo.
Dai vi vários vídeos na internet de projetos com vegetações e fui ler a documentação do Unreal novamente para saber exatamente as limitações.
O Lumen aceita a máscara da transparência no material, mas não reconhece no cálculo do GI, ele usa o Plane da folha como se não tivesse a máscara, causando um sombreamento secundário mais escuro do que deveria.
Já o problema do Distance Field de Planes, se aumentar a densidade do mapa de Distance Field, gastando mais tempo para calcular e mais espaço em disco no projeto, você consegue reproduzir o Plane.

Sobre a sua pergunta das folhas com espessura, eu acredito que o mapa de Distance Field ficará melhor do que usando apenas Planes.
Sobre precisar gerar Distance Field, agora não é mais igual o Unreal 4 que você podia escolher gerar ou não o Distance Field, agora ele vem habilitado por padrão porque o Lumen não funciona sem ele.

O Lumen é um Ray Trace super otimizado de baixa qualidade, mas bem borrado para não perceber, tanto que não pode criar paredes com menos de 10 cm de espessura para não vazar luz de um lado para o outro.
Então, além de ser super otimizado para rodar em tempo real, ele não traça os raios contra os Meshes dos objetos, ele traça contra o Distance Field, que é uma representação bem pobre do Mesh.
Por isso que ele não reproduz facilmente as coisas finas, mas se aumentar a densidade consegue reproduzir gastando mais.

Sobre o Nanite, eu vi o Webinar inteiro da Epic, li toda a documentação e fiz alguns testes, mas não compilei projeto com ele nem nada para ver a diferença.
A Epic mostra que um Mesh com a mesma quantidade de triangulos fica menor no Nanite do que como Static Mesh, então, a encodagem do Nanite é bem melhor.
Só que se você carregar um objeto muito mais denso, ele vai ocupar bem mais espaço em Nanite do que a versão Low Poly em Static Mesh, porém, a versão Low Poly precisa do mapa de Normal em alta resolução, que ocupa muito mais do que o Mesh.

Então, comparando o objeto Low Poly com mapa de Normal de 4K e o objeto High em Nanite sem mapa de Normal, o Nanite fica um pouco menor.
Entretanto, o objeto High Poly não chega no nível de detalhes finos que um bom Normal Map permite, mas não há necessidade de fazer o Normal Map de 4K com o Bake, pois já tem o High Poly.
Portanto, a solução que eles propõe é aplicar um mapa de Normal pequeno e ladrilhável para reproduzir os detalhes finos, ou seja, muda bastante o Workflow, pois exige a criação de Normal Map baseado em outra coisa e não o próprio Mesh como acontece no sistema de Bake.

Por exemplo, se vai fazer um tronco de madeira, precisa modelar o tronco com alta qualidade e ainda criar mapas de Normal para as cascas e para os veios no corte do tronco, que não são obtidos por Bake, mas criados a partir de texturas procedurais ladrilháveis que reproduzem o padrão mais refinado da casca e dos veios.
Em alguns casos é fácil, como as rochas que eles usaram nos exemplos, pois basta fazer um Noise qualquer que fica bom em rochas, mas e nas outras coisas?

Sobre a malha com aberturas, eu não testei, mas acredito que ter densidade é importante para a geração dos Distance Field sem gastar muito.

Sobre o tutorial que o cara lincou o Metalness, eu não assisti, então, não sei o que ele fez, mas vou dar uma olhada e te falo.

Abração e tudo de bom.

André Vieira
Olá andré.
Eu testei a sua Maquete interativa. Ficou ótima. Nesse exemplo q vc mandou é só a sala mesmo ?
O render ficou muito bom, muito melhor q no render padrão e olha q é no EU4 ainda... Imagina no UE5 a qualidade q teria. A iluminação da sala ficou ótima as texturas também. Voce está de parabéns !!!

Em breve vou passar pra voce um arquivo novo de vegetação q criei sem opacidade e com total densidade interna.
Mas é aquilo q eu falei...Teve q ser tridimensionalizado manualmente, mas uma vez q a base é feita posso criar centenas de outras. Se voce quizer pode botar o download desse arquivo no site gratuitamente. É só pra teste mesmo. É uma Sunflower completa, leve e com densidade até nas flores e folhas. Deu um trabalhão pra fazer...
Esses novos trabalhos estão sendo feitos pra  Nanites por isso q tem densidade internamente.

Em breve vou passar uma imagem pra voce ver, essa primeira é só pra testar mesmo(amostra gratis). Conforme esses testes forem feitos e dependendo da aprovação da galera criarei dezenas de outras plantas.
A galera pode deletar a densidade com 1 clique...Só selecionar SmootinghGroup 2 e deletar. Digo isso se por acaso não forem usar na Unreal porque o arquivo fica com a metade do peso.
Oi Harley, tudo bem?

Fico feliz de saber que testou a maquete e mais ainda por ter gostado.
Eu fiz só a sala porque tenho que explicar tudo em detalhes no curso e os outros cômodos seriam repetições da mesma coisa, mas na verdade, no curso eu fiz um cômodo sem nada atrás de uma das portas para ensinar como programar a abertura e fechamento dela.

O Render é do Unreal 4.19, pois fiz em 2018, antes de ter as luzes Area e o novo sistema de exposição, eu fiz a luz da janela igual a gente fazia lá na época do Max 4 com o primeiro Plug-in do Mental Ray, colocando uma luz Spot apontada para um Plane branco próximo da janela para rebater a iluminação difusa para dentro. rsrsrsrsrs
Agora está bem mais fácil com a luz Area e tudo mais.

Você viu como a sua orquídea ficou boa?

Sobre a Sun Flower que fez, claro que vou adorar ver e testar, também será ótimo colocar para download no site se tiver menos de 50 MB, pois o site só aceita carregar arquivos até esse limite, porém, se for maior você pode colocar no Mega ou em qualquer outro lugar que eu divulgo o download nas notícias.

Agora, sobre preparar vegetações para o Lumen e Nanite, é bom esperar mais um pouco, pois na documentação do Unreal está falando que vão resolver os problemas que ainda restam, está escrito que o Lumen vai aceitar transparência e máscaras normalmente, também vão solucionar o problema das faces sem espessura, é só na versão Early Access que tem estas limitações porque ainda não terminaram.

Eu vou lendo a sua mensagem e respondendo, então, vi agora no último parágrafo que você já resolveu o problema que apontei acima, deixando pronto para deletar a espessura se quiser, é outra coisa falar com quem tem experiência como você!

Abração e tudo de bom.

André Vieira

Olá André.
Instalei a UE5 e testei o Lumen, pelo menos enquanto eu pude...

Esse HD q ganhei já veio com problema e corrompeu o UE5 muito rapidamente, minha alegria não durou muito.
Tive q instalar em HD por falta de espaço no SSD. Mas fiz vários testes.
O render sem o Lumen estando ativo teve uma imensa melhora de qualidade. Finalmente melhoraram o NormalMap q está com o dobro de qualidade se comparado a versão 4.25. Comparado as outras 3 Engines o NormalMap da Unreal era super nerfado. E melhoraram a qualidade do ColorMap também. Criei uma cópia dos arquivos antigos e testei e posso confirmar essa grande melhoria. Depois perdi essa cópia da versão 5 porque corrompeu o arquivo.

Eu instalei o Driver da placa de vídeo na versão q eles pedem. Muita gente reclama q não consegue achar a versão correta no site da NVidia, e realmente não consegue. Pra encontrar tem q ir no Google e digitar o modelo da placa junto com o número da versão q a UE5 demanda q irá direto no download correto.

Nesse arquivo antigo q testei o Lumen funcionou sem problema quando habilitei o Render no PostProcessing. Também habilitei o Mesh Distance Field na área Render / RayTracing. Converti um objeto em Nanite e sem problemas até essa hora. As vezes os FPS caem drasticamente sem eu ter feito nada. Mas poderia ser algo corrompido no arquivo anterior da versão 4.25 desse projeto. Porque sumiram alguns materiais e Shaders.
Criei um projeto novo em terceira pessoa e o Lumen não funcionava quando ativado. E os FPS também estavam muito instáveis sem nenhuma razão.
Converti pra Nanite uma planta sem Opacity e com densidade interna completa e funcionou, não testei a sem densidade até agora. O Roughness ficou estranho, mas acho q a causa foi a melhoria do NormalMap porque trabalhando integrados os 2 materiais ainda não devem estar bem ajustados. Pode ser por isso q naquele tutorial o cara lincou o Roughness em Metalness.
Vou passar Scandisk nesse HD e reinstalar a UE5, mas com o tempo o problema vai persistir. Odeio HD's....

Esqueci de mostrar as imagens... KKKKKKK.

Essa imagem foi tirada antes de eu converter em Nanite. A sombra do Nanite é melhor o resto se manteve identico. Detalhe... Não aumentou o peso do projeto.
Oi Harley, tudo bem?

Eu fico feliz de saber que testou o UE5.
Realmente faz diferença instalar um Engine na HD e no SSD, pois para rodar em Real-Time precisa de velocidade, na documentação do Unreal diz que para usar Nanite com eficiência precisa estar em SSD, porém, acho que para testes simples não tem problema.
Pode ser por isso que as vezes você sentiu a queda drástica dos FPS, era quando ele tinha que ler da HD.

O lance de sumir alguns materiais e Shaders é normal, pois mudou algumas coisas importantes, por exemplo, não tem mais o Displacement e o Tessellation, o Lumen também ainda não aceita alguns materiais.

Sobre habilitar o Lumen e Mesh Distance Field nos projetos antigos, também precisa habilitar o Virtual Shadow Map, você encontra lá no Project Settings, ele que gera as sombras detalhadas, mas ainda tem algumas restrições.

Mais legal ainda é saber que conseguiu fazer estes testes de Render, Normal Map e Color Map para comparar com a versão anterior.

Sobre Drivers e tal, eu não mudei nada aqui, estou com um Driver super antigo da placa de vídeo e rodando Windows 7 SP1, que nem tem DirectX 12, mas funcionou numa boa!!!! rsrsrsrsrs
Eu vou reinstalar tudo na semana que vem, infelizmente vou ter que migrar para o Windows 10 porque tem alguns detalhes que precisa do DX12 e quero explicar no curso.
Só espero que não passe canseira com Drivers e tal, pois já estou me preparando psicologicamente para passar nervoso com o Windows 10 desabilitando tudo que ele faz automaticamente na internet, é com dor no coração que abandono o W7!!!! :( :( :( :(
Então, a sua dica para encontrar o Driver certo já vai me servir! Obrigado.

Agora, sobre o tutorial, eu assisti e pelo que vi ele conectou o Roughness no Roughness mesmo, mas exportou do Substance Painter com o Preset do Unreal que cria o mapa Metalic, dai ele conectou este mapa no Metalic e não o Roughness, olha lá.

Adorei ver o girassol, ficou ótimo, você aplicou um material Foliage com SSS?
Ele não tem recorte com Opacity, é tudo Mesh de verdade?

Abração e tudo de bom.

André Vieira
Olá André. Faz tempo q a gente não se fala.
Tirei umas férias, fiquei meio longe do computador.

Trocou o sistema operacional ?
Fez a instalação da versão do Driver específico q eles demandam? Porque eu acho q a lentidão da minha placa pode ter sido esse Driver.

Reinstalei no SSD desabilitando um monte de coisa do UE5 e o programa ficou com 1/3 de peso, muito melhor.
Só fica lento quando ativo o Lumen. Pode ser o Render q ficou muito mais forte e pra minha placa já não funcione tão bem. O Roughness ficou bem mais sensível.

Sobre o Sunflower é geometria pura igual as novas q vou mostrar, mas infelizmente não posso mandar o download pro site por serem todas integradas, só se eu apagar o resto das texturas ou realocar o mapeamento.
Mais detalhes.
Oi Harley, tudo bem?

Senti mesmo que você deu uma sumida, mas se não tirar férias de vez em quando a gente endoida! rsrsrsrs

Cara, adorei as plantas que você modelou, as folhas ficaram excelentes e podem ser usada para criar diversas outras plantas.

Você tem que estudar Blueprint PORRA!!!!!

Sei que parece chato, mas você pensa proceduralmente e vai arrebentar quando dominar o negócio!

Por exemplo esta planta modular que você criou, poderia colocar todos os elementos num Blueprint para compor conforme quiser trocando um elemento por outro, multiplicar instâncias ao redor, trocar materiais automaticamente, variar materiais, etc.

Entendi perfeitamente a descrição que fez da modelagem, realmente ficaram ótimas com os detalhes nas bordas, mas otimizadas no centro.

Agora, sobre a criação do material, pelo menos no Unreal é bom usar o TwoSided Foliage, mas sem habilitar o Two Sided na configuração do material, já que tem densidade na modelagem, assim, vai obter o efeito de translucência e o material ficará bem leve.

Também achei ótimo o Atlas de textura que você fez, bem reduzido e otimizado, pois o que mais ocupa memória são as texturas e não o Mesh, ainda mais em Nanite.

Parabéns mesmo, ótimo trabalho.

Sobre o sistema operacional, nem fala que começo a chorar e tremer, pois estou traumatizado. rsrsrsrs

Eu troquei para o W10 e fiquei com ele só 10 dias, pois o Unreal virou uma carroça a ponto de eu não conseguir gravar direito os vídeos.
Testei os outros programas e todos rodaram normalmente, mas o Unreal ficou bem mais lento.
Além disso, testei os recursos gráficos dele para ver a diferença em DirectX 12 e tal, mas não mudou nada.
Não sei se você reparou, mas o Anisotropic não está funcionando no UE5, eu achei que era por causa do Windows e do DX11, mas no W10 continuou sem funcionar.
Então, voltei para o Windows 7 passando toda aquela canseira de converter o SSD para MBR novamente porque o W10 transforma em GPT, mas pelo menos consegui voltar a gravar normalmente.

Eu instalei o Driver de vídeo mais novo que tinha lá na Nvidia, será que foi ele que deixou tudo tão lento no Unreal?
Eu nem perdi tempo procurando o problema, pois tenho muita coisa para gravar ainda, então, migrei de volta para o W7 o mais rápido que consegui.

Você desabilitou Plug-ins do UE para ele ficar mais leve ai?
Vou tentar desabilitar alguns que sei que não uso para ver se sinto diferença, valeu pela dica!!!

Abração e tudo de bom.

André Vieira

Faça o login para poder comentar

Usuários conectados

Total de mensagens publicadas pelos membros da comunidade: 710588.

Total de membros registrados: 138049

Últimos membros registrados: MossTrimGummiesRezension, Diatea, Ashuran026, wmlink2step, LeoGuedes3D, barwardbarber, brunluck, felippemarquessss.

Usuário(s) on-line na última hora: 710, sendo nenhum membro e 710 visitante(s).

Membro(s) on-line na última hora: Nenhum.

Legenda: Administrador, Especial, Moderador, Parceiro .

3D1 © Três D1 © 1999-2024. Todos direitos reservados.