Registro entero constante (referencia de VS de HLSL)

Los registros enteros constantes solo se usan en bucle - vs y rep - vs.

Se pueden establecer mediante defi - vs o SetVertexShaderConstantI.

Cuando se usa como argumento para el bucle : frente a la instrucción:

  • .x es el recuento de iteraciones. (rep - vs usa solo este componente).
  • .y es el valor inicial del contador de bucle.
  • .z es el paso de incremento del contador de bucle.

El comportamiento de las constantes de sombreador ha cambiado entre Direct3D 8 y Direct3D 9.

  • Para Direct3D 9, las constantes establecidas con defx asignan valores al espacio constante del sombreador. La duración de una constante declarada con defx se limita solo a la ejecución de ese sombreador. Por el contrario, las constantes establecidas mediante las API SetXXXShaderConstantX inicializan constantes en el espacio global. Las constantes del espacio global no se copian en el espacio local (visible para el sombreador) hasta que se llama a SetxxxShaderConstants.
  • Para Direct3D 8, las constantes establecidas con defx o las API asignan valores al espacio constante del sombreador. Cada vez que se ejecuta el sombreador, el sombreador actual usa las constantes independientemente de la técnica utilizada para establecerlas.

Registros de sombreador de vértices