Introdução ao fluxo de trabalho de amostra ShaderFX

Este exemplo demonstra como criar dois nós de textura e fazer a mesclagem deles.

Ele demonstra como:

Exemplo: Criar um sombreador ShaderFX e abrir o editor ShaderFX:

  1. No viewport em perspectiva, crie um Objeto plano.
  2. Abra o Editor de materiais e aplique um Material de sombreador DirectX para o plano.

    Se você usar o Editor de materiais Slate, clique duas vezes no nó de sombreador DirectX de maneira que seja possível ver seus parâmetros.

  3. Sobre a implementação DirectX Shader, escolha ShaderFX na lista suspensa e clique em Abrir ShaderFX.

    3ds Max abre o editor ShaderFX.

Continuação do exemplo: criar duas texturas e fazer a mesclagem delas usando um nó flutuante:

  1. Clique com o botão direito do mouse na área de trabalho ShaderFX. No menu de contexto, escolha Hw Shader Nodes Textures Texture Map.

    O ShaderFX adiciona um nó Texture Map para o gráfico.

  2. Clique no nó Texture Map para exibir suas propriedades no painel Propriedades à direita da área de trabalho.
  3. No painel Propriedades, clique no botão Procurar ao lado de MyTexture / Path.

    Na caixa de diálogo que é exibida, escolha um arquivo de textura. Neste exemplo, uma textura de concreto é utilizada.

  4. Repita os passos 1 e 2 para a segunda textura. Neste exemplo, uma textura de grama é utilizada.

    Cortesia de texturas em www.cgtextures.com.

  5. Clique com o botão direito do mouse na área de trabalho e escolha Hw Shader Nodes Matemática Linear Interpolate Mix para criar um nó LerpOp para combinar duas texturas.
  6. Clique com o botão direito do mouse e escolha Hw Shader Nodes Valores flutuantes para criar um nó Val que contenha um valor flutuante.
  7. Conecte o atributo de cor do primeiro mapa de textura para o primeiro atributo de valor de LerpOp.
  8. Conecte o atributo de cor do segundo mapa de textura para o segundo atributo de valor de LerpOp.
  9. Conecte o atributo flutuante do nó Val para o atributo mix de LerpOp.

    O valor flutuante controla a quantidade que cada textura contribui para o resultado mesclado. Por exemplo, se for definido 0,2, a textura resultante será dominada pela textura de concreto. Se for definido 0,8, a textura resultante será dominada pela textura da grama. Se for definido 0,5, será um mix equivalente das duas texturas.

  10. Para visualizar uma amostra dos resultados, clique no ícone Amostra de renderização, na parte superior do nó de interpolação linear, até que uma visualização maior apareça.

    Flutuação definida como 0,2

    .

    A amostra de visualização do mix de interpolação linear mostra que a textura de concreto é dominante.

    Flutuação definida como 0,5

    .

    As texturas de concreto e grama são igualmente misturadas.

    Flutuação definida como 0,8

    .

    A textura da grama é dominante.

  11. Conecte o atributo Resultado de LerpOp para o atributo Cor difusa do nó TraditionalGameSurfaceShader.

    Agora é possível visualizar o seu sombreador em viewports sombreados ou efeitos realistas.

Continuação do exemplo: fazer a mesclagem das texturas usando um nó de cores de vértice:

  1. Clique com o botão direito do mouse e escolha Hw Shader Nodes Inputs Common Vertex Color.

    Em vez de usar o nó flutuante, será utilizada a cor de vértice para mesclar as texturas.

  2. Clique para realçar o arame que conecta o nó flutuante da interpolação linear e, a seguir, pressione Excluir.
  3. Conecte o atributo de cor vermelha de VertexColor para o atributo de mix LerpOp. Desta forma, é possível usar o canal vermelho para mesclar suas texturas.
  4. No viewport, assegure-se de que o objeto plano foi selecionado. No painel Modificar, aumente o valor de comprimento e largura das pernas para 20. Isto adiciona mais vértices ao seu plano para aumentar a definição de pintura do vértice.
  5. Também no painel Modificar, aplique um modificador de VertexPaint para o plano.

    3ds Max abre o VertexPaint Paintbox.

    Agora você pintará alguns de seus vértices em vermelho. Os vértices pintados em vermelho serão exibidos em sua textura de grama.

  6. No Paintbox, clique para ativar (Desativar a exibição da cor de vértice).
  7. A cor padrão de amostra será o preto. (Se não aparecer a cor preta, clique e use o seletor de cores para alterar para preto). Clique em (Pintar tudo) para o plano ficar preto.

    Com vértices atribuídas ao canal preto, o plano mostra a textura de concreto.

  8. Clique na amostra de cores e altere a cor para um vermelho mais brilhante.
  9. Clique em (Pintar) e pinte o seu plano. Os vértices que você pintar em vermelho assumirão os valores da textura de grama. Agora você mesclou suas texturas, pintando seus vértices.

Continuação do exemplo: multiplicar sua textura para repetir em um padrão de quadro e criar um efeito diferente e mais denso:

  1. Na pilha de modificadores, clique para realçar o modificador VertexPaint e, a seguir, clique em (Remover modificador da pilha).
  2. No Editor ShaderFX, desconecte o nó VertexColor clicando em seu arame e pressionando Excluire, a seguir, volte a conectar o valor flutuante do nó Val para o atributo de mix de LerpOp.
  3. Clique para realçar o nó VertexColor e pressione Excluir.
  4. Clique com o botão direito do mouse e escolha Hw Shader Nodes Inputs Common UV Set para criar um nó conjunto de UV.
  5. Clique com o botão direito do mouse e escolha Hw Shader Nodes Matemática Multiplicar para criar um nó de MulOp.
  6. Clique com o botão direito do mouse e escolha Hw Shader Nodes Valores flutuantes para criar outro nó Val.
  7. Conecte o atributo de UV do nó UV Set para o primeiro atributo de valor de MulOp.
  8. Conecte o atributo flutuante do novo nó Val para o segundo atributo de valor de MulOp.
  9. Conecte o atributo Resultado do nó MulOp para o atributo de UV do TextureMap cujo padrão você gostaria de ladrilhar.
  10. Clique para selecionar o novo nó Val e, no painel Propriedades, altere seu valor flutuante. Defina Flutuação como um valor maior, para que o padrão se repita com mais frequência e densidade, e como um valor menor, para que o padrão não se repita com frequência. É possível visualizar o padrão resultante, clicando no ícone de amostra de renderização do nó TextureMap.

    Valor = 0,5

    Valor = 2,0