Compartir a través de


gather4 (sm4.1 - asm)

Recopila los cuatro elementos de textura que se usarían en una operación de filtrado bi lineal y los empaqueta en un único registro.

gather4[_aoffimmi(u,v)] dest[.mask], srcAddress[.swizzle], srcResource[.swizzle], srcSampler.r
Elemento Descripción
Dest
[in] Dirección del resultado de la operación.
srcAddress
[in] Contiene las coordenadas de textura.
srcResource
[in] Un registro de recursos.
El swizzle permite que los valores devueltos se desenreden arbitrariamente antes de que se escriban en dest.
srcSampler
[in] Un registro de sampler.
Este parámetro debe tener un swizzle .r (rojo), que indica que el valor del canal de R se copia en dest.

Comentarios

Esta operación solo funciona con texturas 2D o CubeMap de un solo canal. En el caso de las texturas 2D, solo se usan los modos de direccionamiento del muestreador y se usa el nivel superior de cualquier pirámide mip.

Esta instrucción se comporta como la instrucción de ejemplo , pero no se genera un ejemplo filtrado. Las cuatro muestras que contribuirían al filtrado se colocan en xyzw en orden en sentido contrario a las agujas del reloj, empezando por la muestra a la parte inferior izquierda de la ubicación consultada. Esto es lo mismo que el muestreo de puntos con las diferencias de coordenadas de textura (u,v) en las siguientes ubicaciones: (-,+),(+,+),(+,-),(-,-), donde la magnitud de los deltas siempre es la mitad de un elemento de textura.

En el caso de las texturas CubeMap cuando una superficie bi-lineal abarca elementos de textura de borde de la cara vecina se usan. Las esquinas usan las mismas reglas que la instrucción de ejemplo ; que es la esquina inconfundada se considera el promedio de las tres esquinas de la cara que se impeden.

Las restricciones de formato de textura que se aplican a las instrucciones de ejemplo también se aplican a la instrucción gather4 .

En el caso de las implementaciones de hardware, las optimizaciones en el filtrado bilineal tradicional que detectan muestras directamente en elementos de textura y omiten la lectura de elementos de textura que tendrían un peso 0 no se pueden aprovechar con gather4. gather4 siempre devuelve todos los elementos de textura solicitados.

Esta instrucción se aplica a las siguientes fases del sombreador:

Sombreador de vértices Sombreador de geometría Sombreador de píxeles
x x x

Modelo de sombreador mínimo

Esta función se admite en los siguientes modelos de sombreador.

Modelo de sombreador Compatible
Modelo de sombreador 5
Modelo de sombreador 4.1
Modelo de sombreador 4 No
Modelo de sombreador 3 (DirectX HLSL) No
Modelo de sombreador 2 (DirectX HLSL) No
Modelo de sombreador 1 (DirectX HLSL) No

Ensamblado del modelo de sombreador 4 (DirectX HLSL)