Share via


Função EvaluateAttributeSnapped

Avalia no centroide de pixel com um deslocamento.

Sintaxe

numeric EvaluateAttributeSnapped(
  in attrib numeric value,
  in 
            int2 offset
);

Parâmetros

value [in]

Tipo: attrib numeric

O valor de entrada.

offset [in]

Tipo: int2

Um deslocamento 2D do centro de pixels usando uma grade 16x16.

Comentários

O intervalo para o parâmetro de deslocamento deve ser definido pelo código de byte a seguir.

Somente os 4 bits menos significativos dos dois primeiros componentes (U, V) do deslocamento de pixel são usados. A conversão do ponto fixo de 4 bits para float é a seguinte (MSB... LSB), em que o MSB faz parte da fração e determina o sinal:

  • 1000 = -0,5f (-8 /16)
  • 1001 = -0,4375f (-7 /16)
  • 1010 = -0,375f (-6 /16)
  • 1011 = -0,3125f (-5 /16)
  • 1100 = -0,25f (-4 /16)
  • 1101 = -0,1875f (-3 /16)
  • 1110 = -0,125f (-2 /16)
  • 1111 = -0,0625f (-1 /16)
  • 0000 = 0,0f ( 0 / 16)
  • 0001 = 0,0625f ( 1 /16)
  • 0010 = 0,125f ( 2 /16)
  • 0011 = 0,1875f ( 3 /16)
  • 0100 = 0,25f ( 4 / 16)
  • 0101 = 0,3125f ( 5 / 16)
  • 0110 = 0,375f ( 6 /16)
  • 0111 = 0,4375f ( 7 /16)

Observação

As bordas esquerda e superior de um pixel são incluídas no deslocamento; no entanto, as bordas inferior e direita não estão incluídas. Todos os outros bits no inteiro de 32 bits que você e os valores de deslocamento V são ignorados.

 

Uma implementação pode usar o deslocamento fornecido pelo sombreador e obter um valor de ponto fixo completo de 32 bits (28,4), que abrange o intervalo válido, executando o seguinte cálculo:

iU = (iU<<28)>>28  // keep lowest 4 bits and sign extend, which yields [-8..7]

Se uma implementação precisar mapear o deslocamento para um deslocamento de ponto flutuante, ela executará o seguinte cálculo:

fU = ((float)iU)/16

Modelo de sombreador mínimo

Essa função tem suporte nos seguintes modelos de sombreador.

Modelo de Sombreador Com suporte
Modelo de sombreador 5 e modelos de sombreador superior sim

 

Essa função tem suporte nos seguintes tipos de sombreadores:

Vértice Casco Domínio Geometry Pixel Computação
x

 

Confira também

Funções intrínsecas

Modelo de sombreador 5