Trabalhar com o Função SDF

Na versão 16.0.0, o Substance 3D Designer introduziu um poderoso conjunto de nós para criar Funções SDF, que podem ser usadas para criar e manipular formas 3D de procedimentos.

Função SDF são gráficos de função de Substance que combinam nós SDF disponíveis no conjunto de ferramentas e são aplicados a parâmetros dedicados em nós que suportam Função SDF.

Como ponto de partida, lembre-se de que o fluxo de trabalho básico se parece com isso:

  1. Crie uma Função SDF em um nó do visualizador 3D para visualizar o resultado.
  2. Copie o gráfico de função final (ou crie uma instância dele) no parâmetro de Função SDF de um nó que ofereça suporte a Função SDF, como o respingo de forma v2.

Gráfico do recurso de nós do Função SDF 3D no Substance 3D Designer

O que é uma Função SDF?

Assim como funções matemáticas podem ser plotadas em 2D como curvas, elas podem ser plotadas em 3D como superfícies.

Um campo de distância com sinal é uma função matemática que define uma superfície no espaço 3D calculando a distância de qualquer ponto no espaço até o ponto mais próximo na superfície.

Vamos detalhar o nome “campo de distância assinado” para entendê-lo melhor:

  • Signed significa que a função retorna um valor positivo se o ponto estiver fora/na frente da superfície, um valor negativo se o ponto estiver dentro/atrás da superfície e zero se o ponto estiver exatamente na superfície.
  • Distância refere-se ao fato de que a função calcula a distância de qualquer ponto no espaço até o ponto *mais próximo* na superfície.
  • Campo significa que a função descreve um campo de valores, pois cada ponto no espaço tem um valor correspondente que representa sua distância até a superfície mais próxima.
Visualização da forma produzida por uma Função SDF, com isolados arrebatadores.

Essas funções têm muitas aplicações em computação gráfica, como superfícies de desenho, projeção de sombras, máscara de contorno, detecção de colisão e muito mais.

No Substance 3D Designer, as Funções SDF são usadas para criar e manipular formas 3D de maneira processual.

A saída e o uso pretendido de uma Função SDF

Os nós de Função SDF geram um único valor de flutuação: a distância assinada até a superfície mais próxima.

No entanto, há mais para eles: eles obtêm internamente e definem os valores das variáveis que os nós host precisam definir e/ou saber sobre para manipular e desenhar as formas resultantes.

Isso significa que esses nós precisam ser usados no contexto de nós que suportam Função SDF porque ele conhece essas variáveis e as integra nativamente.

Os nós incluem respingo de forma v2 e visualizador 3D.

O gráfico da função Substance

Os nós de Função SDF devem ser usados em gráficos de função de Substance dedicados e, portanto, estão disponíveis apenas nesse tipo de gráfico.
Os parâmetros de nó que devem ser expressos como uma função usam um botão ‘Editar função’.

O que você precisa saber sobre gráficos de função Substance:

  • Da mesma forma que os gráficos de Substance, os conectores de nós são especializados, o que significa que só podem ser conectados a outros conectores de cor correspondente representando seu tipo.
  • Os nós não têm parâmetros, eles só podem ter entradas. (Com algumas exceções específicas)
  • O gráfico tem um único nó de saída. Clique com o botão direito do mouse em um nó e selecione Set as output para designá-lo como o nó de saída.
  • Da mesma forma que os gráficos de Substance, existem nós atômicos - os blocos de construção de base - e nós de instância que representam outros gráficos de função de Substance.
  • Há operadores separados (algébricos, lógicos e de comparação) que permitem executar operações nos valores do gráfico, mas os nós SDF têm seus próprios operadores
Exemplo de um gráfico de função definindo uma Função SDF
trabalhando-com-função-sdf-gráfico.png

Introdução

Para criar Funções SDF, primeiro precisamos visualizá-las para que possamos entender o efeito dos nós e parâmetros que estamos ajustando.

O nó visualizador 3D tem um modo dedicado para visualizar formas criadas com o Função SDF: defina o parâmetro Tipo de cena do nó como SDF function e clique no botão Editar função para abrir o gráfico de função que hospedará a própria Função SDF.

O nó oferece recursos dedicados para visualizar aspectos da Função SDF que nos permitirão criá-los de forma mais intuitiva e eficiente, como um quadro delimitador e isolines.

O nó Sol/céu físico pode ser usado para configurar rapidamente a iluminação do ambiente no visualizador 3D.

Configurar o nó do visualizador 3D para visualização de Função SDF.

TIP
table 0-row-2 0-border-none 1-border-none 2-border-none html-authored no-header

Todos os nós de Função SDF, bem como seus conectores de entrada, têm dicas de ferramentas que permitirão que você saiba mais sobre seu propósito e como usá-los.

Não se esqueça de conferi-los!

Dica de ferramenta para o conector de entrada no nó de Função SDF.

Configuração de valores de nó

Como com todos os nós em gráficos de função Substance, os nós de Função SDF não têm parâmetros, mas apenas conectores de entrada que são usados como parâmetros.

Para definir o valor dessas entradas, você pode usar nós de constante como Flutuante, Flutuante3 e Inteiro3.
Você pode criá-los da maneira usual através do menu nó, ou pode arrastar uma nova conexão dos conectores para se beneficiar de uma lista filtrada de nós de tipos correspondentes.

A maioria dos conectores de entrada dos nós de Função SDF tem um valor padrão, que é revelado na dica de ferramenta.

Nós constantes usados para editar primitiva SDF.

TIP
table 0-row-2 0-border-none 1-border-none 2-border-none html-authored no-header

Se você não precisa manter alguns valores sempre visíveis, encaixe os nós usando a tecla D para economizar espaço e reorganizar o gráfico.

Também é possível usar comentários para controlar os valores.

Dica de ferramenta para o conector de entrada no nó de Função SDF.

O quadro delimitador

O quadro delimitador é uma caixa no espaço 3D que define os limites em que a Função SDF é avaliada e desenhada no nó respingo de forma v2.

Se o quadro delimitador for muito pequeno, partes da forma poderão ser cortadas. Se for muito grande, pode levar a cálculos desnecessários e tempos de processamento mais longos.

O parâmetro Quadro delimitador permite habilitar a visualização do quadro delimitador. Você pode ajustar o tamanho do quadro delimitador alterando os valores do parâmetro Tamanho do quadro delimitador.

Use o parâmetro Colorir fora do quadro para visualizar as áreas fora do quadro delimitador em vermelho vivo para que você possa ajustar o quadro adequadamente.

Recurso de quadro delimitador do nó do visualizador 3D, para Função SDF.

Isolines

Como a transformação de formas envolve realmente a *transformação do espaço* no qual são desenhadas, o resultado dos nós usados após algumas transformações pode ser surpreendente.
Nesses casos, é útil visualizar o próprio espaço, o que pode ser feito visualizando o campo de distância da forma.

Para isso, o nó do visualizador 3D usa isolines, que são linhas de contorno repetidas que representam uma determinada distância da superfície da forma. O parâmetro Isolines do SDF habilita essa visualização.
As isolinhas são desenhadas em um plano horizontal colocado no height especificado pelo parâmetro Posição de isolinhas SDF.

Ver como as isolinhas são deformadas pelas transformações aplicadas à forma pode ajudar a entender como a própria forma é transformada e ajustar os parâmetros dos nós de acordo.

Recurso de quadro delimitador do nó do visualizador 3D, para Função SDF.

Função SDF categorias de nós

Os nós do Função SDF são categorizados na Biblioteca com base em sua função e finalidade.

É possível criar quantas exibições de biblioteca forem necessárias para organizar seu espaço de trabalho de modo que o conjunto de ferramentas do Função SDF seja organizado por categoria, mantendo tudo à mão. Vá para a exibição Janelas > Nova biblioteca para adicionar exibições separadas e independentes da biblioteca.

Exemplo de espaço de trabalho
working-with-sdf-workspace.png

Primitivos

Os blocos de construção básicos das Funções SDF, que permitem criar formas básicas, como esferas, caixas, cilindros e muito mais.

Operadores

Estes nós permitem combinar e modificar formas criadas com primitivas. Eles incluem:

  • Operadores booleanos diretos, como União, Interseção e Subtração, que permitem combinar formas de várias maneiras.
  • Deformando operadores booleanos, como Arredondamento e Morph, que permitem combinar formas com um efeito de mesclagem.
  • Outros operadores especializados, como Shell e Simetria, que permitem modificar e/ou duplicar uma forma.

Transformações

As formas podem ser transformadas de várias maneiras, como sendo traduzidas, giradas, dimensionadas, torcidas e muito mais.
Esses nós permitem que você execute essas transformações transformando o próprio espaço no qual as superfícies são definidas.

Esse espaço é chamado de P. Vá para a próxima seção para saber mais sobre o que isso significa e como a transformação do espaço funciona.

Material

O gerenciamento básico de materiais está disponível para formas criadas com o Função SDF.

Você pode definir atributos básicos de material: cor, aspereza e metalidade, a serem usados para visualização direta no nó do visualizador 3D ou como base para o trabalho de material nos nós Shape splatter v2.
Você também pode atribuir IDs de material a diferentes partes de uma forma para separá-las.

Saiba mais sobre os aplicativos destes nós abaixo.

A entrada ‘P’

Quando aplicamos uma transformação a uma forma, como um deslocamento ou uma rotação, nós transformamos o espaço no qual a forma é definida.

Se quisermos que uma transformação se propague para outras formas — por exemplo, se quisermos girar várias formas da mesma forma — precisamos ter certeza de que todas estão usando o mesmo espaço transformado.

Um espaço transformado é compartilhado entre os nós usando a entrada P dedicada, que pode ser encontrada na maioria dos nós SDF.
O ‘P’ significa espaço mundial P posição: um vetor 3D que representa as coordenadas de um ponto no espaço mundial.

Os nós Deslocamento P e Girar P transformam o espaço e permitem propagar essa transformação para todos os nós que devem herdá-la.
Por exemplo, várias formas podem ser giradas juntas conectando sua entrada P ao mesmo nó Girar página.

Isso não é apenas uma questão de conveniência, é garantir que os nós SDF funcionem com as mesmas posições no espaço.

Veja um exemplo:

trabalhando-com-sdf-p-entrada.gif

Uma esfera é repetida para visualizar espaço como uma grade 3D. É repetido repetindo o espaço.
Sem um P compartilhado, o cilindro curvo usa o espaço de repetição usado pela esfera.
Com um P compartilhado, as formas podem ser definidas corretamente em um espaço girado compartilhado.

Usar o Função SDF nos nós “Shape splatter v2”

Depois de concluir uma Função SDF no contexto do nó do visualizador 3D, você pode copiar a função inteira e colá-la no nó Respingo de forma v2 para usá-la como um gerador de formas para esse nó.

Defina o parâmetro Tipo de forma como SDF function, vá para o parâmetro Função SDF de padrão e clique no botão Editar função para abrir o gráfico de função do parâmetro.
Em seguida, é possível colar a função copiada do nó do visualizador 3D nesse gráfico. (Não se esqueça de definir o nó de saída do gráfico de função novamente!)

Certifique-se de ajustar o parâmetro Tamanho do quadro delimitador SDF para corresponder ao quadro delimitador que você estava usando no nó do visualizador 3D e certifique-se de que a forma foi desenhada corretamente.

trabalhando-com-sdf-shape-splatter-v2.png
respingo de forma v2 com um tipo de forma​definido como SDF function. Observe que o tamanho do quadro delimitador do SDF​foi ajustado para se ajustar à forma.

TIP
Para reutilizar facilmente uma Função SDF, copie-a para um novo gráfico de função Substance e use esse gráfico como um nó de instância no visualizador 3D e nos nós Shape splatter v2.
Isso oferece vários benefícios:
  • Qualquer atualização feita na função será refletida em ambos os nós sem precisar copiar e colar novamente. Esta é uma excelente melhoria na qualidade de vida das formas complexas.
  • O gráfico pode ter um nome descritivo que ficará visível nos nós de instância, o que tornará o uso da sua própria biblioteca de formas SDF muito mais gerenciável e os seus gráficos mais legíveis.
  • Você pode criar entradas para o gráfico de função que pode ser usado com os nós Get. Essas entradas serão expostas como conectores de entrada no nó da instância e permitirão que você faça variações facilmente nas formas.

ID do material

Uma forma SDF pode ter uma ID de material atribuída a ela, que é um valor inteiro que pode ser usado para diferenciar partes da forma e atribuir diferentes materiais a elas no visualizador 3D e nos nós respingo de forma v2.

Observe que superfícies com diferentes IDs de material são divididas com uma borda rígida em formas mescladas, como é visível no exemplo abaixo.

Use o nó Definir ID de material após a parte de uma forma que você deseja marcar com uma ID de material específica e use um nó de constante Inteiro para definir o valor de ID de material desejado.
No nó do visualizador 3D, defina o parâmetro Saída como Material ID para visualizar as IDs de material das formas.

trabalhando-com-sdf-material-id.png
À direita, a saída de dois nós do visualizador 3D é composta para mostrar a forma (à esquerda) e suas IDs de material (à direita) para ilustrar como, em formas mescladas, os materiais são interpolados enquanto as IDs de material são divididas.

As IDs de material podem ser aproveitadas pelos nós complementares do Shape splatter v2:

IDs de material SDF para mapeamento de cores no nó de cores do mapeador Shape splatter v2. IDs de material usadas para mapeamento de cores
na cor do mapeador do respingo de forma v2
IDs de material SDF para mapeamento triplanar no nó de cores do mapeador Shape splatter v2. IDs de material usadas para mapeamento triplanar
na cor do mapeador do respingo de forma v2
IDs de material SDF para mascaramento no respingo de forma v2 para nó de máscara.
IDs de material usadas para mascaramento
no respingo de forma v2 para mascarar

Cor, rugosidade e metalidade

Os nós Definir cor, Definir aspereza e Definir metalidade permitem definir esses atributos de material para formas na Função SDF.

Em seguida, ao usar essa Função SDF como um tipo de forma no nó respingo de forma v2, esses atributos de material estarão disponíveis como mapas nas saídas de cor SDF, aspereza SDF e metalidade SDF do nó. Esses mapas podem servir de base para trabalhos de materiais mais complexos usando outros nós.

Observe que, distintamente das IDs de material, os valores são interpolados entre formas mescladas como um gradiente, como é visível nos exemplos abaixo.

Saída de cor SDF do nó Shape splatter v2. Saída de cores SDF
Rugosidade do SDF do nó Shape splatter v2.
Saída de aspereza SDF
Metalidade do SDF do nó Shape splatter v2. Saída de metalidade SDF

Amostra de material

A amostra de material de parafusos enferrujados está disponível para saltar para as Funções SDF aplicadas no contexto do nó Shape splatter v2.

O gráfico é organizado e anotado para guiá-lo através de sua estrutura, configurações de nó e configurações de Função SDF.

Ele também é totalmente editável. Portanto, pode ser usado como uma sandbox para obter uma compreensão mais prática do respingo de Forma v2 e dos conjuntos de ferramentas do Função SDF. Você pode criar quantos gráficos de amostra quiser, portanto, fique à vontade para brincar.

Recurso de quadro delimitador do nó do visualizador 3D, para Função SDF.
recommendation-more-help
substance-3d-designer-help-guide