Unreal: configurações e funções

Por: Abilio  

Em: 02/08/2023 18:04

Oi Abílio, tudo bem?
 
Para que serve o Texel é simples, serve para uma equipe de artistas manter a mesma resolução relativa das texturas nos objetos para evitar defeitos, principalmente na geração dos Lightmaps, mas não serve para nada quando a pessoa trabalha sozinha se ela não tiver problemas cognitivos. rsrsrsrs
 
Veja só, a textura é feita de Pixels e tem um tamanho finito, limitado, então, conforme você aplica a textura numa superfície 3D, essa superfície não terá exatamente o mesmo tamanho "real" que a textura para que cada Pixel caia exatamente em cada ponto da superfície, os Pixels serão esticados e deformados conforme o mapeamento e tamanho da superfície.
Portanto, se aplicar a mesma textura em dois Planes, um com 10 x 10 cm e outro com 5 x 5 cm, a mesma textura terá a metade da densidade de Pixels no Plane de 10 em relação ao Plane de 5 e o Plane de 5 terá o dobro da densidade de Pixels do que o Plane de 10, entende isso?
No Plane de 10 os Pixels terão o dobro do tamanho!
 
Então, se você está produzindo um Game em equipe e cada pessoa vai fazer alguns objetos do cenário, sendo que tem objetos próximos que precisam de alta resolução e objetos distantes que podem ter baixa resolução nas texturas, porque nunca serão vistos de perto, você precisa definir qual densidade deve ter os objetos conforme a distância para que todos possuam a mesma resolução conforme o tamanho de cada um.
Caso contrário, se um artista fizer um objeto com mais resolução do que outro artista e os dois objetos ficarem próximos um do outro no Game, o espectador vai perceber a diferença, uma textura ficará mais pixada que a outra.

Isso é mais importante e mais visível nos Shadow Maps, como mostram as imagens em anexo, porque em Games as sombras são feitas com texturas através do sistema de Bake, então, as sombras ficarão com qualidade diferente em objetos próximos chamando muito a atenção.
 
Não dá para simplesmente definir que os objetos distantes usem uma determinada resolução como 256 e os objetos próximos usem outra como 1024, porque depende do tamanho do objeto, um objeto pequeno pode usar 256 e ter a mesma densidade do que um objeto grande com 1024, entende?
Por isso inventaram o Texel, para em vez de definir uma resolução, definir um valor de densidade de Pixels para todos os artistas da equipe tentarem fazer as texturas e mapeamentos do Lightmap o mais próximo possível deste valor conforme a distância, assim, o espectador não vai perceber diferença entre eles.
 
Veja a primeira imagem em anexo, eu fiz o Bake da iluminação no 3ds max em dois Planes, mas usando 512 x 512 num deles e 256 x 256 em outro, ambos com o mesmo tamanho e próximos, então, fica nítida a diferença de qualidade da sombra em cada um deles.
 
Agora, veja a segunda imagem em anexo, eles continuam com a mesma resolução no Lightmap, mas diminui o Plane com mapeamento de 256 pela metade e refiz o Bake, então, sem mudar a resolução das texturas, os dois mantiveram a mesma qualidade na sombra, porque agora ambos tem a mesma densidade de Pixels, ou seja, o mesmo Texel.
 
Entende porque não precisa disso para nada se trabalha sozinho?
Pois basta perceber que a textura está com resolução diferente ou que o Ligtmap está com resolução diferente, já que é só você que está fazendo todos os objetos.
Até mesmo numa equipe de 2 ou 3 não precisa disso, é só todo mundo ter o mínimo de noção, porém, numa equipe gigante onde o artista faz um objeto que nem sabe onde vão colocar, é importante que ele use a resolução definida pela direção.
 
Abração e tudo de bom.
 
André Vieira
quanto ao edgedetect/curvature . voce possue um para me dar ?


eu ja usei os texels para melhorar a qualidade de bakes de mapas procedurais no blender .
se usa os texels para isso tambem ?



obrigado novamente
Oi Abílio, tudo bem?
 
Aquele tutorial de Edge Wear que te indiquei ensina como fazer a detecção das Edges, está neste link: https://umbra.ai/how-to-create-procedural-edge-wear-in-unreal-engine-5-from-just-a-static-mesh/

Agora, se quiser na cena toda é muito melhor fazer com Post Process, como mostra este outro exemplo: https://umbra.ai/how-to-create-procedural-edge-wear-in-unreal-engine-5-from-just-a-static-mesh/

Sobre Texel, é como eu mostrei, se configurou o tamanho da textura muito pequeno para o tamanho do objeto, vai ter baixa densidade e ficará ruim, ficará pixado, aumentando a resolução vai resolver, é o mesmo que aumentar o Texel, mas inventaram este nome só para complicar.
 
Abração e tudo de bom.
 
André Vieira
oi


este  tutorial de Edge Wear que voce mandou não aceita mapas procedurais no lugar da textura .

é possivel fazer alguma alteração nesta arvore para passar a aceitar os mapas procedurais como o noise?


obrigado novamente
Oi Abílio, tudo bem?
 
Eu não sei, teria que testar, pois não fiz o tutorial para ver como ele funciona, porém, olhando os Nodes ele usa Texure Object, que não vai aceitar Noise e outros mapas procedurais, você poderá entrar com uma textura de Noise no Texture Object, mas não com o mapa procedural de Noise.
Isso será comum neste tipo de Shader, tem que trabalhar com imagens em vez de mapas procedurais, porque ele precisa da imagem inteira de uma só vez para poder calcular, que é o Texture Object.
É diferente do Texture Sample, que aceita qualquer imagem, permite trocar no material e tal, porque o Texture Sample envia um Pixel por vez para o cálculo e dai não serve, o mesmo vai acontecer com o mapa procedural Noise, ele envia um Pixel por vez.
 
Eu dei uma pesquisada no Google e encontrei um Shader de Edge Wear que funciona com texturas usando o Texture Sampler em vez do Texture Object, mas não testei para ver se funciona e acredito que não vai dar certo com o mapa Noise, só imagens, mas tem que testar para ter certeza.
 
 
OBS: Segure o CTRL e use a rodinha do mouse para controlar o Zoom e ver todos os Nodes, também pode usar o botão direito para mover.
 
Abração e tudo de bom.
 
André Vieira
ola
Andre Vieira:
Oi Abílio, tudo bem?
 
Aquele tutorial de Edge Wear que te indiquei ensina como fazer a detecção das Edges, está neste link: https://umbra.ai/how-to-create-procedural-edge-wear-in-unreal-engine-5-from-just-a-static-mesh/

Agora, se quiser na cena toda é muito melhor fazer com Post Process, como mostra este outro exemplo: https://umbra.ai/how-to-create-procedural-edge-wear-in-unreal-engine-5-from-just-a-static-mesh/

Sobre Texel, é como eu mostrei, se configurou o tamanho da textura muito pequeno para o tamanho do objeto, vai ter baixa densidade e ficará ruim, ficará pixado, aumentando a resolução vai resolver, é o mesmo que aumentar o Texel, mas inventaram este nome só para complicar.
 
Abração e tudo de bom.
 
André Vieira
ola


fiz o edge detect e não funcionou .

voce tem arquivo ?

É  possivel ao inves de ter uma textura  aplicada ao edge , ter um gradient para misturar uma textura depois com o LERP ?


obrigado
Oi Abílio, tudo bem?
 
Eu não testei este tutorial, mas assim que sobrar um tempinho eu testo ele para ver se consigo fazer funcionar.
Não tenho nenhum material de Edge Detect para te enviar, mas se encontrar algum eu te falo.
 
Sobre colocar um gradiente nas quinas para usar com o Lerp, é possível, mas tudo vai depender do mapeamento do objeto e não será fácil calcular proceduralmente em objetos complexos, só em Boxes.
Para usar um gradiente tem que fazer aquela fita de polígonos para cobrir as quinas igual mostrou nos vídeos, porque dai fica fácil mapear corretamente e colocar o gradiente bem na quina.
 
Abração e tudo de bom.
 
André Vieira
 
 
 
ola


por que a imagem no unreal engine fica cintilando mesmo quando esta tudo estatico ?

é alguma configuração ?


obrigado
Oi Abílio, tudo bem?
 
Se estiver falando da Viewport, é normal cintilar para ter mais performance, mas você pode aumentar as configurações do Lumen no Post Process Volume para estabilizar, só que não vale a pena, é melhor aumentar apenas na renderização.

Se estiver falando da renderização da animação, além de aumentar as configurações do Lumen no Post Process, também tem que aumentar o Anti-Aliasing no Movie Render Queue e dai depende da situação, cenas com muitos reflexos e sombras suaves exigem bem mais Samples do que cenas bem difusas e com sombras nítidas.
 
OBS: O Lumen vai cintilar bastante se estiver no modo Software, para ele ficar estável tem que mudar para o modo Hardware Ray Tracing no Project Settings.
 
As configurações do Lumen são bem simples como mostram as imagens em anexo.
 
No Project Settings > Rendering você encontra as opções para habilitar o Hardware Ray Tracing, como mostra a primeira imagem em anexo.
 
Depois, tem que colocar o PostProcessVolume na cena e habilitar a opção Infinite Extent na parte de baixo do menu dele, como mostra a segunda imagem em anexo.
 
Dai você tem acesso as configurações do Lumen, é só aumentar os valores que ele estabiliza, mas tem que ter luz direta na cena, se a cena for iluminada apenas por luz indireta não vai parar de cintilar. 
 
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: 710575.

Total de membros registrados: 138039

Últimos membros registrados: dflk, Vitinhop4, AEDFA, MrDrifs, Kleberbj, kainã, VictóriaSS, je042.

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

Membro(s) on-line na última hora: Duda, Moura, Frederico Wagner N. R., Max Idalgo, Reinaldo Silva, Saraaaaahhhhhhcriisi, AlexTerra, Gabriel.C, Lucas Reis, Nuno, tsmodelagem3d, Eduardo Ramos, marcelo de moraes, Renatto, Carla Franco, Thiago Couto, Ronaldo.

Legenda: Administrador, Especial, Moderador, Parceiro .

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