Cursos e Bibliotecas Ver Mais

Galeria 3D1 Ver Mais

Jomar Machado   Rio de Janeiro - RJ
ViniciusInacio   Goiás-Goiânia - GO
waltergms   Belo Horizonte - MG
Jean Carlos Flores   SC - Florianópolis - SC
Grasiano   Campo bom - RS - RS

Portfólios Ver Mais

Bremer   Recife - PE
kaiosuzuki   Londrina-PR
carlosfelipe   Florianópolis - AC

Grupo de Estudo Substance Designer

Por: Andre Vieira  

Em: 10/02/2018 14:55

Estamos abrindo este grupo de estudo para abordar o Substance Designer por incentivo do artista Marcelo Beglione, onde pretendemos compartilhar conhecimentos e técnicas sobre este programa fantástico.

Para auxiliar a iniciação no Substance Designer, estou postando um tutorial descrevendo a interface, mostrando como compor padrões e materiais, como misturar materiais e como utilizar o sistema de Bake para obter informações dos Meshes e criar materiais adaptativos.

Qualquer dúvida que tiver sobre o tutorial pode ser postada aqui mesmo no grupo de estudo, também me coloco à disposição para responder outras dúvidas dos leitores que estão estudando o Substance Designer, se eu souber a resposta obviamente.

Espero que o grupo seja útil e ajude as pessoas a criar seus materiais e recursos no Substance Designer.
INTERFACE

A interface do Substance Designer é dividida em 6 partes principais e você pode mover as janelas para estacioná-las em qualquer outra posição, portanto, a sua interface pode estar com as janelas em posições diferentes da mostrada na imagem em anexo.

* A janela do Explorer, marcado em azul na imagem em anexo, lista os arquivos abertos no Substance Designer (SBS) e seus respectivos gráficos e recursos, cada gráfico é um material, filtro ou padrão procedural, que pode ser usado dentro do próprio SDesigner para compor outros materiais, filtros e padrões, mas também pode ser exportado no formato SBSAR para ser usado em diversos programas 3D e Engines de Games, entre eles o 3ds max, Unreal e Unity.

Você pode ter vários gráficos no mesmo arquivo SBS e cada um será tratado como uma entidade independente dentro do SBSAR quando exportar o arquivo, por exemplo, é possível ter um arquivo Substance com todos os materiais de um determinado tipo ou de um determinado objeto, pois cada gráfico será exibido como um item independente com o nome que definiu em qualquer programa que importar o SBSAR.

A pasta Resources é gerada automaticamente pelo programa quando você faz o Bake de mapas como Curvature, Position, World Space Normals, entre outros, e também quando linca imagens e Meshes no arquivo.

* A janela 3D View, marcada em laranja na imagem em anexo, exibe o Mesh de exemplo ou o Mesh que licou no Explorer se der dois cliques nele, também exibe os materiais criados com os gráficos, inclusive respeitando os IDs aplicados nas faces do objeto no 3ds max.

Você pode trocar a visualização OpenGL em Real-Time para Iray com Raytracing interativo, também pode adicionar luzes, trocar a imagem HDR que gera a iluminação do ambiente, configurar as propriedades da câmera, a exibição dos elementos do Mesh 3D e a visualização em Wireframe, como vou mostrar em seguida.

* A janela Library exibe os recursos disponíveis no Substance Designer, a maior parte foi produzido com o próprio SDesigner, apenas uma minoria foi programado nativamente com o Software e você pode abrir estes recursos para ver como foram feitos porque são arquivos SBS.

* A janela do gráfico na parte central da tela, marcada em amarelo e rosa na imagem em anexo, é dividida em duas partes, na área em amarelo estão os ícones com as opções de visualização dos elementos do gráfico e os ícoens dos Atomic Nodes, ou seja, os Nodes que foram realmente programados nativamente com o SDesigner.

Na área rosa fica o gráfico em si, onde você arrasta os Nodes para dentro ou tecla barra de espaço para abrir o Browser, onde poderá escolher um Atomic Node ou digitar o Nome do Node que desejar para filtrar tudo que estiver na janela do Library, inclusive os Nodes que você mesmo criar.

* A janela 2D View, marcada em verde na imagem em anexo, exibe a imagem do Node que estiver ativado, ou seja, quando der dois cliques no Node, pois você pode selecionar outro Node com apenas 1 clique para exibir seus parâmetros no painel da lateral direita sem modificar a imagem do Node exibida no 2D View, permitindo visualizar o resultado da alteração dos parâmetros do outro Node na imagem final, por exemplo.

O 2D View também exibe o Wireframe do mapeamento UV, oferece recursos de visualização e salva a imagem exibida na HD.

* A janela Parameters, marcada em vermelho na imagem em anexo, exibe na parte superior os Basic Parameters, que são comuns à todos os Nodes, na parte inferior exibe os Instance Parameters, que são parâmetros disponíveis no Node selecionado, é nesta área que aparecem os parâmetros criados por você num determinado recurso.
EXPLORER

A janela do Explorer contém tudo que você criar, lincar ou importar no arquivo SBS.

Como disse no início, você pode ter vários gráficos no mesmo arquivo SBS e cada um será tratado como um recurso independente quando exportar em SBSAR.

O exemplo da imagem em anexo mostra um arquivo SBS com 3 gráficos.

* A setinha na frente de cada gráfico exibe os Outputs do gráfico (marcado em laranja), ou seja, as imagens que serão geradas por ele como Diffuse, Base Color (Albedo), Specular, Metalic, Roughness, Glossiness, Ambient Occlusion, Normal Map, Reflection, Refraction, Opacity, Mask, entre vários outros que você pode escolher.

A pasta Resources foi criada automaticamente quando linquei o Mesh "heli_fuselagem", assim como a subpasta "heli_fuselagem_Resources" (marcada em rosa), que foi criada pelo SDesigner quando fiz o Bake para gerar imagens com informações sobre a geometria do objeto como Curvature, Position e World Space Normals.

Essas pastas respeitam o nome do Mesh ao qual os mapas se referem, assim como o nome dos mapas gerados pelo Bake também são criados automaticamente conforme o nome do Mesh, portanto, é muito importante adicionar nome em todos os Meshes que importar.

A pasta Resources também é criada quando linca ou importa imagens para dentro do arquivo, como você pode ver no item "heli_fuselagem_NormalsMap" (marcado em amarelo), que foi criado no 3ds max com o Render To Texture.

* Você importa e linca imagens e Meshes clicando com o botão direito no nome do arquivo SBS, assim, aparecem as opções Import e Link, além da opção New para criar novos gráficos.
É também neste menu que está a opção para exportar em SBSAR.

Não é possível importar Meshes para dentro do arquivo Substance, pois o objetivo é justamente ter um arquivo minúsculo que contenha as informações de diversas texturas imensas com até 4K e 32 bit float point, portanto, um conjunto de texturas que poderia ocupar facilmente mais de 100 MB, fica apenas com alguns MB, as vezes alguns KB.

Sendo assim, quando for usar o SDesigner para texturizar um objeto específico em vez de criar um material, mapa procedural, filtro, gerador ou recurso genérico, você vai apenas lincar o Mesh no arquivo.

Imagens podem ser importadas como Normal Map e Height Map gerados no Z-Brush ou no 3ds max, por exemplo, além de qualquer Bitmap ou imagens vetoriais no formato SVG.

Entretanto, como expliquei acima, o ideal é não importar imagens para dentro do arquivo e apenas lincá-las se necessário, no final, quando for exportar o SBSAR você pode adicionar um Input de imagem no lugar da imagem lincada e desta forma poderá aplicar qualquer imagem diretamente no SBSAR dentro dos programas 3D e Engines de Games.

Isso permite que um determinado material, mapa procedural, filtro ou recurso seja adaptativo, respeitando qualquer geometria em vez de apenas aquela específica que usou na criação do SBSAR ou processando qualquer imagem em vez de apenas aquela que importou.

Claro que se for um material específico para um objeto específico, pode importar as imagens necessárias diretamente para o arquivo porque não vai usar com mais nada, só com aquele objeto.

* Dando dois clique no nome de um gráfico aparece o menu com todos os materiais do Mesh exibido na Viewport, os nomes são os mesmos que você adicionou em cada material no Multi/Sub-Object no 3ds max, portanto, também é muito importante colocar nome em todos os materiais que aplicar para poder identificá-los dentro do SDesigner.

OBS: Basta aplicar materiais Standard sem nenhum textura ou configuração no 3ds max para poder acessá-los no SDesigner, só é importante colocar nome.

O material do gráfico clicado será aplicado no lugar do material selecionado no menu.

Os dois cliques no gráfico também abre ele na janela de edição de gráficos na área central da tela.

* Clicando com o botão direito sobre o gráfico, aparece o menu com opções de Copy, Paste, Remove, Rename, o Open para abrir o gráfico na área de edição no centro da tela, o View Outputs in 3D View para aplicar o material no Mesh que estiver na Viewport, o Compute Outputs para recalcular todos os Outputs e o Export Outputs As Bitmaps para exportar todas as imagens dos Outputs de acordo com a resolução definida atualmente no gráfico.
3D VIEW

A janela do 3D View exibe o Mesh lincado e os materiais dos gráficos aplicados nele.

No menu superior tem diversos itens para configurar todas as propriedades de exibição, iluminação, Render e Shaders usados nos materiais, pois o gráfico não é realmente um material (Shader), já que ele gera as imagens para configurar os diversos canais de um material, mas não possui a programação destes canais, a não ser que crie um material MDL, mas isso é um assunto para tratar bem mais adiante.

Sendo assim, seja no SDesigner ou em qualquer outro programa onde importar o SBSAR, você terá as texturas para aplicar no material disponível no programa que está usando.

Portanto, clicando no item Materials do menu, aparecem todos os materiais que estão aplicados no objeto na Viewport, os mesmos materiais que criou no 3ds max com os nomes que definiu lá.

Caso não tenha um Mesh específico na Viewport e esteja usando uma primitiva disponível no menu Geometry apenas como exemplo, aparecerá apenas um material com o nome Default.

Clicando no nome de um material aparecerá os outros submenus como mostra a primeira imagem em anexo.

* Clicando no Edit os parâmetros do material são exibidos no painel Parameters na lateral direita.
São nestes parâmetros que estão as configurações do Tessellation para configurar o Displacement do Mesh.

* Clicando no Definitions aparece o submenu com as definições básicas do Shader.
Você pode escolher Blinn e Lambert para renderização com Raytracing através do Iray, mas para renderização Real-Time em OpenGL precisa escolher entre o Pysically Metalic Roughness ou Physically Specular Glossiness.

Você deve escolher o Shader de acordo com o padrão de material que estiver criando, por exemplo, se estiver criando um material que gera os mapas Roughness e Metalic tem que escolher o Physically Metalic Roughness para poder visualizar o material corretamente na Viewport e vice-versa.

Dentro de cada um deles tem as opções Parallax Occlusion, que simular o Displacement sem distorcer a malha de verdade e o Tessellation, que realmente distorce a malha em 3D, portanto, para visualizar o resultado do Height Map na Viewport tem que marcar essa opção e ajustar a subdivisão e a intensidade do Tessellation clicando no item Edit como disse acima.

* O Mesh Info exibe o Mesh na Viewport com mapas contendo informações da geometria como Normals, UV e Vertex Color.

* O Channels define quais tipos de mapas serão exibidos no Shader como Diffuse, Normal, AO, Roughness e tal, similar a aba Maps dos materiais no 3ds max.

* Clicando no Lights > Edit aparecem os parâmetros da iluminação no painel Parameters na lateral direita, em primeiro está a luz ambiente gerada pela imagem HDR e em seguida tem duas luzes artificiais que pode habilitar ou desabilitar, assim como alterar a intensidade e coloração delas.

* Clicando no Camera você encontra as opções de vistas ortográficas como Front e Top, salvamento da imagem da Viewport e da renderização quando estiver usando o Iray, como mostra a segunda imagem em anexo.
 
No Edit você acessa os parâmetros da câmera, que aparecem no painel na lateral direita, como mostra a segunda imagem em anexo.
Entre os recursos estão os efeitos de pós-produção como Glare, Flares, Vignette, Difraction, Color Correction, exposição, Gamma e Depht of Field (DOF).

* Clicando no Environment > Edit você acessa os parâmetros dele no painel da lateral direita, onde poderá definir se a imagem HDR de fundo ficará visível ou não, a exposição e a orientação dela.

* Clicando no Scene > Edit você acessa todos os elementos dentro do Mesh que estiver na Viewport e pode habilitar ou desabilitar a exibição deles no 3D View.

* Clicando no Display aparece o menu com opções de visualização da Viewport como Wireframe, eixos, Bounding Box e Grid.

* Clicando no Renderer aparecem as opções de renderização como OpenGL e Iray.
Quando escolhe o Iray também aparecem as opções Rendering Method, opção para pausar a renderização, opções de Cluster (render em rede através da internet) e clicando no Edit aparecem os parâmetros do Iray no painel da lateral direita, como mostra a terceira imagem em anexo.
O Scene Browser é uma outra maneira de visualizar e selecionar os parâmetros dos objetos disponíveis na Viewport como luzes, Environment, câmera, geometria e materiais aplicados no Mesh.

Ele se abre na lateral do 3D View clicando clica no ícone que está na parte inferior esqueda da janela, como mostra a imagem em anexo.

Clicando nos elementos da Viewport, marcados com quadradinho azul, os parâmetros dele ficam acessíveis no painel da lateral direita.

Clicando na setinha na frente do Mesh, marcado com quadradinho verde, aparecem os materiais aplicados nele, marcados com quadradinhos amarelos.

Clicando em qualquer material abre a lista com todos os materiais disponíveis na cena e você pode trocar um pelo outro.
LIBRARY

A janela do Library exibe diversos recursos que estão prontos para você usar na sua composição como mapas procedurais na aba Generators, filtros de imagens na aba Filters, filtros para mesclar materiais na aba Material Filters, geradores de máscaras de acordo com a geometria dos objetos na aba Mesh Adaptive, funções pré-configuradas na aba Functions e materiais fisicamente corretos na aba PBR Materials.

Todos estes Nodes que você pode aplicar no seu gráfico foram criados com o próprio Substance Designer e você pode criar os seus da forma que desejar.

Apenas os itens disponíveis nas abas Atomic Nodes, FXMap Nodes, Function Nodes e MDL foram programados nativamente no Core do SDesigner e com eles todos os demais recursos foram criados.

Na aba 3D View estão imagens panorâmicas para aplicar na iluminação e reflexão da Viewport e você pode adicionar novas.

Depois que você fica conhecendo os Generators, Filters e Mesh Adaptive, normalmente não utiliza mais o Library para acessários, pois faz isso através da barra de espaço, que abre um menu diretamente no gráfico onde pode digitar o nome do Node que deseja ou mesmo o nome aproximado para listar todos que usam as mesma sequencia de letras, como mostra a segunda imagem em anexo, onde digitei Normal e listou todos os Nodes relacionados com Normal Map.
GRAPH

Na área central da tela está o gráfico do material, que você cria clicando com o botão direito no nome do arquivo SBS na janela do Explorer e escolhendo New > Substance Graph.
Também pode alterar entre vários gráficos clicando duas vezes sobre ele na janela do Explorer.

O gráfico é composto por Nodes que são conectadas entre si para produzir um determinado efeito.
O resultado desta composição são conectados nos Nodes de Output que aparecem logo na criação do gráfico usando um dos Presets disponíveis ou também criados por você, pois é possível iniciar um gráfico sem nada e criar todos os Nodes de Output manualmente.

É importante notar que o Node de Output apenas entrega a imagem processada, não faz mais nada.
Ele usa um nome e uma Tag como Ambient Occlusion ou Normal Map, por exemplo, para que o Shader identifique automaticamente onde a imagem deste Node deve ser aplicada quando usa o gráfico no próprio Substance Designer ou em Engines de Games.

Os Nodes podem receber conexões de outros Nodes pelo lado esquerdo (Inputs) e se conectar a  outros Nodes pelo lado direito (Outputs), não confundir com os Nodes de Outputs que entregam as imagens finais ou os Nodes de Inputs que permitem adicionar imagens para serem processadas, estes são os Inputs e Outputs de cada Node.

As conexões podem ser coloridas possuindo canais RGBA (laranjas) ou em tons de cinza com apenas um canal (cinzas).

Alguns Nodes possuem conexões metade laranja e metade cinza, pois aceitam receber os dois tipos de conexão, porém, as vezes não é permitido misturar imagens coloridas com tons de cinza, ambas precisam estar com os canais RGBA ou todas com apenas um canal, neste tem os Atomic Nodes Gradient Map e Grayscale Conversion para passar de cinza para colorido e vice-versa, na maioria dos casos o Substance Designer cria estes Nodes automaticamente quando tentar conectar tipos diferentes.

Na barra de ícones superior do gráfico estão os recursos de visualização, como mostram as imagens em anexo.

A informação do tempo de processamento de um Node é importante quando está criando um material para Real-Time, pois os materiais Substance podem ter seus parâmetros alterados através de programação nas Engines de Games para criar efeitos incríveis.
É o mesmo que pode ser feito em animação no 3ds max, por exemplo, pois você consegue animar qualquer parâmetro que criar no material, mas nos Games e aplicações interativas 3D o cálculo dos Nodes para gerar as novas texturas pode comprometer o desempenho se for muito complexo.

A informação de resolução é importante para saber se está vendo a imagem com a qualidade correta, pois uma imagem que fica boa em 1024 x 1024 pode ficar bem diferente em 256 x 256 e uma das principais qualidades do Substance Designer é ser independente de resolução, você pode gerar as texturas com 256 ou 4096 a partir do mesmo gráfico.

Portanto, é bom trabalhar em 1024 ou 2048 para ver com qualidade nas vistas 2D e 3D.

A notação L8 - L16 - L32 - C8, C16 e C32 indicam se o Node gera uma imagem em tons de cinza linear (L) e quantos bits ela possui ou se é uma imagem colorida (C) e quantos bits por canal ela possui.

Outra coisa importante de entender logo no início é que criar um gráfico super complexo contendo diversos tipos de materiais misturados é muito mais difícil se resolver fazer tudo de uma vez só no mesmo gráfico do que se criar diversos gráficos, cada um com apenas um material e depois mesclar todos usando outro gráfico, pois no primeiro terá que mesclar corretamente todos os Outputs entre os materiais e o gráfico vai virar uma bagunça, enquanto que, no segundo caso basta usar um Node que mescla todos os Outputs para você.

Portanto, o SDesigner tem três formas de trabalhar com as conexões no gráfico, como mostra a terceira imagem em anexo.

Escolhendo a opção Standard, cada pino de conexão que clicar e arrastar vai criar uma linha apenas desta conexão e você poderá clicar no pino de conexão de outro node para fazer a ligação.
É o ideal para criar um gráfico usando os Nodes do programa ou mapas procedurais e filtros que você criou, pois estes Nodes possuem poucos Inputs e Outputs.

Quando estiver trabalhando com composição de materiais, que possuem diversos Outputs como Base Color, Normal, Roughness, Metalic e Height, por exemplo, você pode escolher a opção Material, fazendo todos os Outputs do Node gerar as linhas de conexão quando arrastar um deles, assim, todos serão conectados ao mesmo tempo se o Node de destino tiver os Inputs correspondentes.

A terceira opção, chamada Compact Material, colapsa todos os Inputs e Outputs do Node em apenas um, que passa a ter a cor verde clara, assim, vai funcionar igual na opção Material, ligando todos os Outputs nos Inputs como se fosse uma coisa só, porém, você não conseguirá ver se alguma conexão não foi correspondida e pode causar problema se não tiver certeza da compatibilidade entre os Nodes.
ATOMIC NODES

No topo da área do gráfico aparecem os Atomic Nodes, que normalmente são os mais utilizados e como já disse, foram programados com o Core do Substance Designer e são os responsáveis pela criação de todos os outros Nodes.

Não é necessário conhecer todos agora, pois com pouco tempo de prática no SDesigner você vai reconhecê-los até de ponta cabeça.

Mas na imagem em anexo tem uma descriação do que faz cada um.

Os mais importantes são o Blend para mesclar duas imagens igual o Layers no Photoshop, quando pode escolher Multiply ou Overlay para misturar com o Layer de baixo, o Gradient Map para aplicar cores numa imagem em tons de cinza e o Grayscale Conversion para converter imagens coloridas em tons de cinza, também o HSL para alterar a cor, saturação e claridade da imagem, o Levels para modificar o brilho e contraste da imagem, o Normal para criar mapa de Normal a partir de uma imagem, o Transform para aplicar transformações na imagem como rotação e escala, o Color para criar uma cor ou um tom de cinza e o Warp para distorcer uma imagem com base nos tons de cinza de outra.
2D VIEW

A janela do 2D View exibe a imagem do Node ativado, ou seja, aquele que você deu dois cliques.

Como disse no início, você pode selecionar um Node com apenas um clique para os seus parâmetros apareceram no painel da lateral direita sem mostrar a imagem deste Node no 2D View, desta forma você consegue modificar os parâmetros deste Node selecionado vendo o resultado na imagem final ou na imagem de outro Node que é influenciado pelo Node selecionado, pois tudo no Substance Designer é procedural, ou seja, a qualquer momento você pode modificar qualquer parâmetro e todas as texturas se atualizam imediatamente.

Nos ícones da barra superior você pode salvar a imagem exibida no 2D View e alternar entre os vários Outputs disponíveis no gráfico selecionado, como mostra a imagem em anexo.

O 2D View também exibe o Wireframe do mapeamento UV, mas para isso precisa acessar o menu Geometry da janela 3D View, no final deste menu está a opção para exibir o UV no 2D View, depois que habilitar a exibição do UV você poderá ligá-lo e desligá-lo no icone UV do 2D View.

Na barra inferior você encontra os ícones para informações e visualização como exibição ou não do canal Alpha, Histogram e canais RGBA, do lado esquerdo, já do lado direito estão os ícones de escala da imagem, mas normalmente vai usar a rodinha do mouse para aproximar e afastar.
PARAMETERS

O painel Parameters exibe os parâmetros do gráfico, quando você clica em qualquer área vazia do gráfico ou no nome do gráfico na janela do Explorer, mas também exibe os parâmetros de cada Node que aplicar no gráfico quando clica nele.

Na área superior aparecem os parâmetros que são comuns à todos os Nodes e todos os gráficos.

O parâmetro realmente importante nesta área é o Output Size que define a resolução da imagem gerada pelo Node e o Output Size pode ser de 3 tipos diferentes, Relative To Input, Relative To Parent e Absolute.

* O Relative To Input faz o Node respeitar a resolução do Node conectado a ele, é o mais usado.

* O Relative To Parent faz o Node respeitar a resolução padrão do programa onde ele é usado, é isso que permite o arquivo SBSAR oferecer diversas resoluções no 3ds max e no Unreal, por exemplo.

* O Absolute é para trabalhar numa resolução fixa.

OBS: Quando o gráfico está selecionado aparecem apenas as opções Relative To Parent e Absolute.

Da metade para baixo do painel Parameters aparecem os parâmetros criados por você no gráfico, como mostra a imagem em anexo, também aparecem todos os Inputs de imagens que o gráfico aceita receber e todos os Outputs que ele produz, mas isso quando está com o gráfico selecionado.

Quando está com um Node selecionado, são os parâmetros deste Node que aparecem na parte de baixo do painel Parameters.

Faça o login para poder comentar

Usuários conectados

Total de mensagens publicadas pelos membros da comunidade: 668164.

Total de membros registrados: 107461

Últimos membros registrados: Felipe, EdiMax1989, Danmota, Vasni Jr, waldiney, renatinhagxpe, patriciamartins, Samaroni .

Usuário(s) on-line no momento: 695, sendo 62 membro(s) e 633 visitante(s).

Membro(s) on-line no momento: ands2kelly, Shal, powerslave_sp, Apdf, cadwillem, danielmroque, Pochette, vinicius falcao, Francisco, Gan, AllanP, Ramires, bio3d, EdiMax1989, Danmota, Leonardo, graffiart@hotmail.com, Kleber, Osmar Lira, fernando parreira, Vasni Jr, Fabio da Costa, brunotorres, waldiney, Pedroca, alex.p3d, alej0, EraldoPires, arq.sampaio, Antonio, Christoni, vnpublicidade, Simonek.Ferreira, bokdigamela, Felipe, denner20, João Von Rondow, wilsimar, layercero, Marcos MIchelato, Rafaello, luciano3d, Paulo, ferncastro, Daniel Chelles, coxinha, CassiusfxArtes, Wesley FDQ, Negreiroscg, alexandre182182, cllive, gilson antunes, mdpontes, Elis, Adminin, Fernando Cunha, Designer RS, Marco Rocha, Harley, JoaoFreitas, Diego Dneo, dallest91.

Legenda: Administrador, Especial, Moderador, Parceiro .

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