Cursos e Bibliotecas Ver Mais

Galeria 3D1 Ver Mais

lhmaciel   rio de janeiro - RJ
bobnewsjr   Curitiba - PR
mse   Novo Hamburgo
DigoCG   Valinhos - São Paulo - AC

Portfólios Ver Mais

Joao   Itapetininga-SP - SP
tiago fortes   Florianopolis - SC
Angel dragon   Russas Ceara
pauloreis2000   Goiânia - GO

Script para atribuir Color IDs

O Color ID For Polygons é um novo Script gratuito oferecido pelo artista Savas Cetin para o 3ds max 2014 ou superior, ele permite atribuir Color IDs facilmente nas partes dos objetos para usar nos programas Substance e Quixel Suite.

Ver notícia

Por: Adminin  

Em: 17/01/2018 08:00

Oi Marcelo, tudo bem?

Sobre os mapas gerados pelo Substance Designer, vou fazer uma breve descrição de cada um a seguir:

Ambiente Occlusion - É o mesmo AO que estamos acostumados no 3ds max, aquele que calcula a visibilidade de um ponto na malha 3D até uma esfera que envolve o objeto (OBS: Na verdade é apenas um hemisfério da esfera, pois no lado oposto está a superfície do objeto), os raios que atingem a esfera perpendicularmente recebem a cor branca e os que não atingem recebem a cor preta, os demais recebem os tons de cinza entre o preto e o branco conforme o seu ângulo de incidência. É o mesmo mapa que você pode criar com o Render To Texture do 3ds max usando o V-Ray ou Mental Ray, pois o Arnold não tem suporte para isso, porém, no Max vai levar vários minutos para renderizar o mapa e no Substance Designer é imediato.

Ambiente Occlusion Map from Mesh - É o mesmo AO que descrevi acima, porém, em vez de usar a malha do objeto, ele aceita definir outra malha, então, é usado para gerar o AO da malha em High Poly para pegar todos os detalhes do objeto, mas projetando estes detalhes nas faces do objeto em Low Poly, assim, ele recebe o mesmo sombreamento dos detalhes que tem no High Poly, ou seja, é muito parecido com a projeção de Normal Map para transferir os detalhes do High Poly para o Low Poly, mas neste caso transfere o sombreado do AO.

Bent Normals Map from Mesh - É uma técnica de geração de Normal Map antigamente usada apenas em composição e pós-produção, criando aquele Normal Map da imagem completa e não de cada objeto, assim, a luz é dividida em R, G e B para ser modificada na pós-produção de acordo com este mapa de Normal, portanto, passaram a usar em 3D também para refinar a estimativa de iluminação em cada ponto do objeto, ajudando a melhorar o realismo de objetos com iluminação Real-Time baseada em imagem HDR, pois usando apenas Normal Map acontecem alguns vazamentos da iluminação do ambiente clareando partes que não deveria clarear, mas o Bent Normals corrige isso quando usado em conjunto com o Ambient Occlusion nas Engines.
Você pode ver um exemplo legal nesta página da documentação do Unreal: https://docs.unrealengine.com/latest/INT/Engine/Rendering/LightingAndShadows/BentNormalMaps/

Color Map from Mesh - Gera o mapa de Color ID para separar as texturas, ele tem várias opções, então, pode criar as cores de acordo com as cores do Mesh, de acordo com as cores que definir, usar cores aleatórias e tal.

Convert UV to SVG - Cria uma imagem do mapeamento igual ao Color ID, mas ela é formada por traços vetoriais igual o Path do Photoshop ou os traços do Illustrator, essa imagem pode ser aberta e editada no Photoshop e Illustrator, também pode criar este tipo de imagem nestes programas e exportar em SVG para o SDesigner. (OBS: Essa é a única ferramenta do PS que sinto falta por usar uma versão antiga)

Curvature - Cria o mapa de curvatura, ele é similar ao AO, mas aplica preto, branco ou tons de cinza conforma a diferença entre os ângulos de duas faces adjacentes, então, quanto maior a curvatura, mais branco fica, facilitando a aplicação de efeitos de desgaste nas quinas dos objetos, por exemplo.

Curvature Map from Mesh - Faz o mesmo mapa de curvatura que descrevi acima, porém, usa a malha em High Poly e projeta o resultado na malha em Low Poly para transferir os detalhes de um para o outro, igual acontece com o AO From Mesh e o Normal From Mesh.

Height Map from Mesh - Cria o mapa de altura (Displacement) baseado no Mesh em High Poly e projeta o resultado no Mesh em Low Poly para poder reproduzir os detalhes no Low Poly através de Tessellation, bem similar ao sistema de Displacement do 3ds max, por exemplo, e você pode criar Heigh Map no Render To Texture do Max, mas não vale a pena porque no SDesigner é imeditado.

Normal Map from Mesh - Gera o mapa de Normal usando como base o objeto em High Poly e projeta o resultado no Low Poly para transferir os detalhes para o Low Poly, é o mesmo mapa de Normal que pode criar com o Render To Texture do 3ds max, mas como disse, não vale a pena devido ao tempo de renderização.

Opacity Mask from Mesh - Cria o mapa de opacidade de acordo com um Mesh, que normalmente é o Mesh em High Poly, mas também pode ser em Low Poly, onde for transparente o mapa ficará preto e onde for opaco o mapa ficará branco, também aceita diversos níveis de transparência aplicando tons de cinza nas transparências intermediárias.

Position -  Cria uma espécia de Normal Map onde as faces do objeto são coloridas de acordo com as suas posições em X, Y e Z, assim, o programa consegue saber onde é a parte de cima ou de baixo, por exemplo, para aplicar efeitos como poeira e neve apenas na parte superior do objeto.

Position Map from Mesh - Cria o mesmo mapa de posição que descrevi acima, porém, usa uma malha em High Poly para produzir o mapa e projeta o resultado na malha em Low Poly para obter os mesmos detalhes que conseguiria com a malha em High Poly.

Thickness Map from Mesh - Cria um mapa que define a espessura do objeto a partir do Mesh em High Poly e projeta o resultado no Low Poly, áreas mais finas ficam brancas e áreas mais espessas ficam pretas, é usado para simular efeitos de translucência e SSS em Engines de Games e até mesmo em renderização off-line nos Softs 3D convencionais.

Transferred Texture from Mesh - É um ótimo recurso do Substance Designer que permite transferir facilmente toda a texturização de um mapeamento para outro, por exemplo, se já tiver texturizado um objeto e precisou modificar o mapeamento dele ou então, tem outro objeto diferente que deve ser texturizado da mesma forma que o primeiro, você pode projetar a texturização de um Mesh no outro com este mapa, é similar ao recurso de UV Mapping disponível no Render To texture do 3ds max, mas não tem que esperar renderização.

World Sapce Direction - É similar ao Position, mas em vez de colorir as faces do objeto conforme a posição delas no mundo 3D, este mapa aplica as cores conforme a orientação (rotação) das faces no mundo 3D, normalmente é usado em conjunto com outros mapas para compor efeitos na superfície dos objetos, por exemplo, permite indetificar quando uma face está na parte de cima do objeto, mas é inclinada, então, não precisa receber o efeito de poeira ou neve.

World Space Normal - É um mapa de Normal que define a direção da Normal das faces do objeto em relação ao mundo 3D em vez de ser em relação a outro Mesh ou ao próprio objeto como acontece com o Normal Map convencional, ele é usado em conjunto com outros mapas como AO, Curvature, Direction e Position para compor efeitos na geometria dos objetos igual o exemplo de poeira e neve que descrevi acima, pois se a face estiver na parte de cima do objeto e com a inclinação correta, mas com a Normal invertida, também não precisa receber o efeito.

Espero ter ajudado.

Abração e tudo de bom.

André Vieira
Andre, bom dia,

Cara, nem sei como te agradecer em se apresentar, se propor a abrir um tópico exclusivo do Substance Designer. Como você conhece bastante o programa que realmente é excelente e fundamental, acho que tem tudo para ser uma seção de grande valia didática para todos os interessados - como eu. Bem, eu sou totalmente a favor desta tua fraterna iniciativa, Andre e, desde já, agraço por dividir o pão com os famintos que tanto precisam de alimento. MUITO OBRIGADO.

Muito obrigado, também, pelo esforço de síntese e rapidez prestativa em descrever, sinteticamente, todos estes maps. Legal você ter compreendido a razão de eu ter colocado a imagem das páginas deste livro do Max. VOCÊ FEZ MUITO - E MELHOR! Claro que já li, Andre, mas vou copiar para ler, com mais calma, fora daqui, pois quero compreender estes outros que são comumente "puxados" a todo momento pelos smart materials das formas e combinações mais distintas. Estou muito, muito agradecido por você ter atendido esta minha solicitação que, para mim, é muito importante porque sempre quis saber a razão ou como rola a parada. Você explicou a parada, rs.

Claro que você deve ter reparado que naqule vídeo do Glauco, cada parte que ele mostra do seu trabalho, todo o acervo de maps são alterados, já de acordo com a textura. Daí a minha necessidade conhecer e saber mais a respeito e não somente utilizar - e pronto. Não!

Para completar o que estava dizendo, estou mostrando uma imagem, onde você, Andre, pode ver as outras quatro formas de seleção da sua textura no Substance Painter. Veja, à direita, a coluna Properties-Polygon Fill, no Fill mode:

Você tem quatro possibilidade de seleção. triângulos (triangle fill); quads (Polygon fill); Mesh fill (que vai selecionar especificamente a parte que no Max é um sub mash, entendeu?) e a última UV chunk fill (onde você faz a seleção no UV map, bastanto para isso, tornar ele visível ao lado da textura, clicando F1.

Portanto, além destas quatro formas de preenchimento, de seleção de texturas, você tem, como já citei, o ID color map. Bastando apenas você clicar no seu layer (material, smart materials) com o botão direito do mouse e aparecerá a opção Add Mask with selection color. Surgirá, então, o painel Properties-Color Selection. Aí, Andre, é só deitar e rolar no botão Pick Color. Portanto, nada mais, nada menos do que uma outra forma de mascaramento (mask), onde você escolhe a cor, onde aparecerá o material (ou cor) que está oculto.

Estas são, portanto, as formas de seleção que você tem no SP. Por conseguinte, se você terá um TextureSetList com suas texturas em partes ou uma única textura, isso não será impedimento para seleção e consequente trabalho de pintura e texturização de trecho ou parte determinada pelo artista.
Espero ter ajudado você, meu amigo.
Abração fraterno,

Marcelo Baglione

P.S.: Os instrutores - alguns, e não todos! - dizem que devemos, lá dentro do Max (ou qualquer outro programa), colocar o sufixo _low ou _high no final do sub mesh. Por exemplo, tampa_low e tampa_high; portanto, para ser exportado assim. Sinceramente? Fiz todos os testes e não faz a mínima diferença - pelo menos no meu PC.
Oi Marcelo, tudo bem?

Eu que não sei como te agradecer pela sua participação aqui com a gente comentando notícias, trabalhos, ajudando nas dúvidas dos usuários, obrigado sinceramente.

Já estou preparando o material para o nosso grupo de estudo e pretendo começar a postar neste final de semana.

Vou ficar muito feliz de ver você se apaixonar por estes sistemas de Nodes que agora estão em todos os programas.

Sobre a descrição dos mapas, fico feliz que gostou e se ficou qualquer dúvida sobre algum deles é só falar.

É fácil entender porque estes mapas são exigidos no Substance Painter, pois os materiais procedurais usados nos Smart Materials ou mesmo o uso dos geradores de máscaras, chamados de Smart Masks no Substance Painter, precisam destes mapas para identificar a geometria do objeto e conseguir aplicar os efeitos nas quinas, reentrâncias e saliências do Mesh, sem estes mapas de Postion, World Space Normal, World Space Direction e curvature ele não consegue saber como é a geometria do objeto, graças a estes mapas que os efeitos do material conseguem ser reproduzidos igualmente em qualquer Mesh, o mapa de AO também é importante para vários destes efeitos, pois ajuda a identificar as partes partes convexas da malha, ou seja, o AO é quase o oposto do Curvature.

Se você for usar um Generator no Substance Designer para criar estes efeitos que dependem da geometria do objeto, ele vai pedir para conectar estes mapas, cada tipo de Generator pede uma combinação destes mapas, então, a combinação depende do Generator e no Substance Painter depende do Smart Mask ou do material procedural usado dentro do Smart Material.

Agradeço novamente por me explicar os tipos de seleções disponíveis no Substance Painter, vai ajudar muito nos meus estudos.
Este final de semana eu vou pegar para testar tudo que você me explicou nestas mensagens e qualquer problema eu te falo.

O lance de usar o Color ID como máscara eu acho que é a solução para a questão de unir várias texturas numa só, eu já dei uma pesquisada sobre isso e descobri uma tal de Project Tool, você conhece?
Parece que é essa ferramenta que permite juntar todas as texturas numa só.

Sobre os sulfixos, eu acho que é mais para você poder identificar direito qual é a malha High Poly e a Low Poly no projeto, não sei no Substance Painter, mas no Designer ele cria os Bakes com o nome da malha, então, também ajuda a identificar de que Mesh é cada Bake, já que normalmente geramos vários Bakes diferentes para cada Mesh.

Abração e tudo de bom.

André Vieira
Andre, boa tarde,

Vou retornar aqui, logo que ler, novamente e mais detidamente, a sua EXELENTE colaboração e gentileza em sintetizar o acervo de maps que existem no Substance Designer. Agora, não estou podendo, mas o farei, pois faz parte de uma disciplina muito sensível que é texturização.
Abração fraterno,

Marcelo Baglione
Oi Marcelo, tudo bem?

No grupo de estudo de SDesigner eu vou fazer um teste usando alguns destes mapas para mesclar materiais e dai você terá a representação visual do que eles fazem.

Acho que também vou copiar essa descrição dos mapas que postei aqui para colocar lá e ficar junto com o resto do material sobre o SD.

Obrigado novamente pelas ótimas dicas que me passou sobre os modos de seleção do SP.

Abração e tudo de bom.

André Vieira
Andre, boa tarde,

Eu não queria me iniciar no grupo do Substance Designer, sem antes concluir o papo aqui, até porque você perguntou uma parada muito legal. Embora eu já tenha iniciado a leitura do tutorial do SD que você publicou.

Caro Jak, vamos às partes.

Como você indicou, fui lá na documentação do Unreal e concluí o seguinte: no caso do normal map (Bent) é inegável que ele dará um ganho de qualidade da imagem que normal map comum não proporcionará. Isso fica claro, nítido, no exemplo que eles dispões na documentação, mostrando ao antes com o Normal (comum, vou dizer assim) e o Bent Normal, o que me faz compreender que a reação mais que evidente é na luz incidente no material e, por conseguinte, nos traços ou características de oclusão (AO). Estou dizendo isso, porque ele mostra o exemplo ou resultado  ou impacto de ambos os maps (AO x Normal Bent) no que diz respeito à difusão da iluminação indireta sobre a superfície do material.

Não sei se entendi, Andre, mas eu posso colocar o Normal Bent no channel do AO? Isso, ou compreendi errado? Por favor me corrija, caso esteja equivocado, mas acho que o que concluí no parágrafo anterior está de acordo - ou também, não?

O Substance Designer é complexo, embora você alegue (kkkkk) que depois que pega a manha, ele fica mais tranquilo - nossa, é o que espero, rs.

O SD tem um range de 16 maps, como mostra a imagem. Por que estes maps ou outra geração (possso me referir assim?) não é muito comum ou popular nos tutoriais?

De tudo o que compreendi deste primeiro contato com estes "outros" maps do SD é que tudo é uma questão de adequação, né?, mas os modos "map from mesh" fornecem mais qualidade e, por isso, detalhismo. Por qual motivo, então, não adota-los na rotina, Andre?

Em que canal do SP, o Opacity Mask from Mesh poderia ter ingresso?

Tenho um novo estudo para fazer. Vou testar estes maps nele. É a melhor forma de ver o resultado salientado pela documentação do Unreal.

Andre, eu não tenho o teu trânsito e fluência, mas sei que à medida que for sanando estas dúvidas, avançarei.
Abração fraterno,

Marcelo Baglion

P.S.: A seguir, vou falar um pouco sobre um questionamento que você fez a respeito do "uso" de shaders no Substance Painter, pois ele tem esta opção, mas só vi um cara usando: o instrutor autorizado da Allegorithmic que realmente é muito fera. Falta, ainda, eu te passar um parâmetro que cito lá em cima, mas que vou te passar após estes que vou comentar.


Andre, boa tarde,

Parte - I

Sinceramente, não sei onde, mas você perguntou algo sobre uso de shaders no Substance Painter, não foi?

Eu não tenho condições de te "ensinar" nada, Andre. Você é um artista pré-adâmico e antidiluviano no que diz respeito à evolução do 3D, especialmente do 3ds Max - sem falar de sua natural fluência para entender a desenvolvimento advindo de outros sofrtwares do mesmo segmento e com as mais diversas aplicações.

Não sou perito no SP! Mas tenho estudado um pouco ele, sempre que posso. A sua pergunta em relação à aplicação de shaders que não seja o padrão; portanto, "pbr-metal-rough" é chata, porque não encontro maiores subsídios ou informações que não seja a... p$@!%!! da linguagem de programação - órgão sexual masculino! Portanto, vou me esforçar ao máximo para te mostrar um pouco do que percebi através de escassas fontes, mas, especialmente, das fonte autorizada: a Allegorithmic e seus instrutores.

Como eu não tenho láaaa esta vivência e abissal compreensão do SP, eu acho - e apenas acho - que alguns shaders como o "pbr-material-layering" e o seguinte, o "pbr-material-layering-10-mat" seriam mais cabíveis em texturas únicas, em vez de um TextureSetList com várias texturas. Como já conversamos bastante sobre isso, não vou me estender mais a respeito. Digo isso, "ma non troppo", pois acho que pode até ser aplicado, sim, em projetos bem complexos.

Logo, neste imagem, você pode identificar a aba "Shader".

(Continua...)
Abração fraterno,

Marcelo Baglione
Andre, boa noite,

Parte - II

No retângulo amarelo, basta você clicar em "pbr-metal-rough" que vai abrir uma janela com os 14 shaders.

Andre, na mensagem anterior eu disse que seria mais simples você configurar uma exportação que gera uma única textura no TextureSetLista, certo? Por que?

Antes de usar o conhecido exemplo do seu cubo (seis faces), vamos super que o Andre queira fazer um personagem inspirado no sonho psicótico de Nabucodonosor, como descreve Daniel 2:37-38, no Velho Testamento. O seu personagem vai ter ferro, bronze, barro e toda uma meslca típica de um surto régio que foi magistralmente interpretado por C.G.Jung.

Imagino que este surto que você quer usar como inspiração, terá, obrigatoriamente, inúmeros e os mais variados tipos de materias, com cores e texturas bem exóticas para fazer jus a esta invasão do inconsciente coletivo, Andre.

Logo, você poderia usar ou escolher dois shaders: "pbr-material-layering" (que possui três máscaras) ou o seguinte o "pbr-material-layering-10-mats".

Caso você tenho no TextureSetList somente uma textura, esta terá, caso você adote o "pbr-material-layering", somente quatro layers. Aí você vem e me pergunta: "Marcelo, o Shader não possui três "masks"? Sim! "Por que, então, aparecem quatro (4) materiais? Simples! O primeiro é para o material base do seu personagem, sobrando, portanto, três (3) masks; por consegunte, você terá, em essência, quatro (4) layers para trabalhar. Sacou?

Você poderá constatar isso na sequência das três imagens, sendo que a terceira imagem mostra isso muito bem. À esquerda, no retângulo salmão, em TextureSetList, há três (3)  masks, Andre. No entanto, dentro do retângulo verdade, há o retângulo vermelho com quatro (4) materiais. O primeiro, sempre será o base material. Se fosse um shder padrão, este primeiro layer você daria o tom básico do seu personagem, podendo escolher um "material" ou mesmo "color".

Mas você assumiu que deseja fazer bonito com seu personagem de inspiração bíblico-psicótica e diz..."Eu não posso usar o shader "pbr-material-layering-10-mats", Marcelo? Sim, pode! E lógica seria a mesma: TextureSetList com 9 (nove) masks, porém com 10 (dez) materials.

Andre, tá dando para acompanhar e entender? Agora, farei o contrário, tá?

Antes de exportar o seu personagem psicótico, você determinou, atraves de IDs que ele teria ou seria divido em 12 partes; logo, dentro do SP, no TextureSetList, ele apresentará 12 texturas, perfeito?

Neste caso, de texturas múltiplas e de você adotar o shader "pbr-material-layering-10-mats", cada uma  destas 12 texturas terá, imperativamente, nove (9) masks, mantendo os 10 (dez) materials. Logo, Andre, você terá um total de 108 masks. Se a tua criatividade e o grau avançado de psicose do personagem exigir, use, sim, o "pbr-material-layering-10-mats".

Na postagem seguinte, mostrarei isso, Andre.
(Continua)
Abração fraterno,

Marcelo Baglione
Andre, boa noite,

Parte - III

Agora, veja nesta primeira imagem, o que citei acima, quando o TextureSetList contém uma única textura.

No entanto, observe como fica o mesmo TextureSetList com 12 texturas, mais o shader "pbr-material-layering-10-mats", olhando, à esquerda no retângulo azul.

À direita, no retângulo bege, o shader escolhido; abaixo, no retângulo azul, os 10 materials.

Mas por que eu pulei o retângulo verde? Lembra que eu te disse que é sugerido e muito interessante a gente adicionar o AO num Fill Layer, logo ao iniciar os trabalhos? Mas como estamos trabalhando com um shader, não há o canal "Material" (do shader padrão), com a opção "Color" para para você inserir o AO map. O padrão é 0.75, mas que pode ajustado com a "Quatlity", Andre.

Na minha opinião, neste caso é mais simples você exportar o "psicótico" com uma única textura, porque acho que facilitará toda a arte de configurar a texturização. No entanto, caso seja necessário, há o outro shader citado.

Como te disse, o chato é que não há maiores informações sobre os outros 12 shaders restantes, mas vou ver se encontro alguma coisa, Andre.

Espero que tenha sido útil, mesmo não sendo um expert em SP.
Abração fraterno,

Marcelo Baglione
Só mais uma coisa, Andre: lembra bastante o Multi/Sub-Object material do 3ds Max.
Abração fraterno,

Marcelo Baglione

P.S.: Você não acha que são poucos shaders? Não poderia haver mais shaders? Se bem que você, por exemplo, faz qualquer shader com os pés nas costas, rs.

Faça o login para poder comentar

Usuários conectados

Total de mensagens publicadas pelos membros da comunidade: 710568.

Total de membros registrados: 138010

Últimos membros registrados: Natbezerra, thomeparck, Jonathashk, hehetheh, dustongel, lipozemaustralia0, Wddeoweis, quicklyfitness.

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

Membro(s) on-line na última hora: Reinaldo Silva, Duda, Antonio, Henrique Ribeiro, Gabriel.C, Lucas Reis, Le_Andro, Rodrigosouza3D, Eduardo Ramos, billypaul, Jonathashk, DiogodaRosa, Augusto Peixoto, mandrade, Vlady.

Legenda: Administrador, Especial, Moderador, Parceiro .

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