Compartir a través de


dcl_indexRange (sm4 - asm)

Declara un intervalo de registros al que se tendrá acceso por índice (un entero calculado en el sombreador).

dcl_indexRange minRegisterM, maxRegisterN
Elemento Descripción
minRegisterM
[in] Primer registro al que se va a acceder por índice.
  • minRegister es v para un registro de entrada de sombreador de vértices o píxeles , o para un registro de salida del sombreador de vértices.
  • M es un entero que denota el número de registro.
maxRegisterN
[in] Último registro al que se va a acceder por índice. El mismo formulario que minRegister , excepto N , es el número de registro.

Las restricciones siguientes se aplican a todos los registros:

  • Los registros min y max deben ser del mismo tipo y tienen las mismas máscaras de componente (si se declaran máscaras).
  • Un registro puede tener varios intervalos de índices, siempre y cuando no se superpongan.
  • El número de registro mínimo debe ser menor que el número máximo de registro.
  • Un registro de índice no puede contener un valor del sistema.
  • La indexación de un registro fuera de la declaración de índice máxima genera resultados indefinidos.

Los registros de entrada del sombreador de píxeles deben usar el mismo modo de interpolación; Los registros de salida del sombreador de píxeles no son indizables.

Un registro de entrada del sombreador de geometría tiene dos dimensiones (eje de vértices, eje de atributos); el intervalo de índices solo se aplica al eje de atributos porque el eje de vértices siempre es totalmente indizable.

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

Esta instrucción se incluye para ayudar a depurar un sombreador en el ensamblado; No se puede crear un sombreador en el lenguaje de ensamblado mediante el modelo 4 del sombreador.

Ejemplo

A continuación se muestra un ejemplo:

dcl_indexRange v1, v3
dcl_indexRange v4, v9

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
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)