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