Usar um nó para contorno
Você também precisa estar no modo avançado para criar um nó de contorno.
O exemplo a seguir demonstra como utilizar um para contorno para a amostra de uma textura três vezes com diferentes deslocamentos de UV. As valores de amostras são adicionados, o total dividido por três e o valor médio aplicado ao canal de cor difusa do TraditionalGameSurfaceShader.
Configure o contorno:
- Na área de trabalho do ShaderFX, clique com o botão direito do mouse e selecione Ferramentas
Alternar modo avançado para assegurar-se de que o modo avançado está ativo.
- Clique com o botão direito do mouse e escolha nós de HW Shader
Controle de fluxo
Para o contorno criar um nó de ForOp.
Dica: Uma porta quadrada significa que a porta pode aceitar mais de uma entrada.
- Escolha nós de sombreador HW
Valores
Int para criar um nó Inteiro. No painel Propriedades, defina o valor como 3. Conecta-o ao atributo B do nó de contorno. - O atributo A representa o início do contorno.
- O atributo B representa o fim do ciclo.
- O atributo C representa o intervalo do contorno.
Por padrão, o valor de A é 0 e o valor de C é 1. Se você utilizar estes valores padrão para o contorno, não será necessário conectar esses atributos.
Nesse exemplo, podemos definir para i = 0; i < 3, i++; portanto, não é necessário definir explicitamente os valores de C e A.
- Escolha nós de sombreador HW nós
Vários
Sequência de caracteres para criar uma sequência de caracteres que será utilizada como um iterador. No painel Propriedades, selecione i da lista suspensa Opções padrão (você tem que rolar para baixo para ver essa opção). Conecte a porta de Saída do nó Sequência de caracteres ao atributo Iterador do nó Para contorno.
- Escolha nós de sombreador HW
Valores
Float3 para criar uma variável para armazenar os valores que são calculados dentro do contorno. Dica: Utilize Float3 ou Float4 para armazenar os valores. Não use um nó de cor.
- No painel Propriedades, renomeie o nó Float3 para LoopResult e verifique se os três valores são iniciados como 1.0.
- Conecte o nó LoopResult ao atributo Variáveis do nó Para contorno. Como este é um contorno simples onde somente uma variável é utilizada, conecte LoopResult ao atributo de Para contorno também.
Configure as amostras de textura:
- Escolha nós de sombreador HW
Texturas
Mapa de textura para criar um nó TextureMap. No painel Propriedades, utilize os controles MyTexture/Caminho para atribuir um arquivo de textura a esse nó. Também no painel Propriedades, verifique se os atributos da amostra/coordenada U e da amostra/coordenadas V estão definidos como EMPACOTAR.
Como a amostra da textura será apresentadas com um deslocamento, a amostragem poderá exceder a faixa de UV de 0 - 1. Definir esses atributos com EMPACOTAR garante que os pixels sejam apresentados no início da textura quando o intervalo de UV exceder 1.0.
- Escolha nós de sombreador HW
Valores
Matriz para criar um nó Matriz. Os três conjuntos de valores de deslocamento são armazenados na matriz.
- Escolha nós de sombreador HW
Valores
Float2 três vezes para criar três nós Float2 para armazenar três conjuntos de valores de deslocamento. Use o painel Propriedades para definir os três atributos Float2, como segue: - Nome: Deslocamento1, X: 0,1, Y: 0,3
- Nome: Deslocamento2, X: 0,2, Y: -0.4
- Nome: Deslocamento3, X: 0,3, Y: 0,2Y:
- Conecta todos os três nós Float2 ao atributo Valores do nó Matriz.
- Escolha nós de sombreador HW
Entradas comuns
Nós de conjunto UV e sombreador HW
Matemática
Adicione para criar um nó de conjunto de UV e Adicionar nó.
- Conectar os nós como segue:
- Conecte o atributo valor de Matriz ao atributo Valor de Adicionar.
- Conecte o atributo UV de Conjunto de UV ao atributo Outro valor de Adicionar.
- Conecte o atributo Resultado de Adicionar ao atributo UV de TextureMap.
- Conecte o atributo de Saída do interador (nó de sequência de caracteres) ao atributo Índice da Matriz. Isso permite que a opção Para contorno para obtenha os valores de deslocamento.
- Conecte o atributo Cor do Mapa de textura ao atributo Cálculos de Para contorno. Isso define os cálculos na opção para contorno, que cria amostras do mapa de textura três vezes.
Calcular a média dos resultados da amostra:
- Escolha nós de sombreador HW
Vários
Sequência de caracteres para criar um nó de sequência de caracteres. No painel Propriedades, selecione += da lista suspensa Opções padrão.
- Conecte o valor de Saída ao novo nó da Sequência de caracteres ao atributo Operadores do nó Para contorno.
Para contorno adiciona os resultados das amostras de textura à variável de resultado do contorno.
- Escolha nós de sombreador HW
Matemática
Dividir para criar um nó de divisão. Conecte o atributo Saída de Para contorno ao primeiro Valor do atributo Dividir. Como o resultado do contorno é a soma de três valores de amostra, ele deve ser dividido por três para obter sua média.
- Escolha nós de sombreador HW
Valores
Flutuante para criar um nó flutuante. No painel Propriedades, defina o valor como 3. Conecte o seu atributo Flutuar ao outro atributo Valor de Dividir para dividir a soma dos resultados da amostra por três.
- Conecte o atributo Resultado de Dividir ao atributo Cor difusa de TraditionalGamesSurfaceShader.

Resultado de iteração um padrão xadrez (renderizado com o renderizador Quicksilver)
Você pode exportar o material do ShaderFX para um sombreador de arquivo e examine o sombreador código para ver o para contorno que você acabou de criar:
float3 LoopResult = float3(1.0, 1.0, 1.0);
for(int i=0; i<3; i+=1)
{
float2 AddOp = (Array_bphdfiwhhj[i] + IN.map1.xy);
float4 Sampler = chessboard_woodjpg.Sample(MMMLWWWSampler, AddOp);
LoopResult += Sampler.xyz;
}
Para obter mais informações sobre como exportar para um arquivo de sombreador, consulte Exportar para HLSL, CgFX e GLSL.