Partilhar via


Registro inteiro constante (referência HLSL PS)

Registros inteiros constantes são usados apenas por loop - ps e rep - ps.

Eles podem ser definidos usando defi - ps ou SetPixelShaderConstantI.

Quando usado como um argumento para o loop de - ps instrução:

  • .x é a contagem de iteração. (rep - ps usa apenas este componente).
  • .y é o valor inicial para o contador de loop.
  • .z é a etapa de incremento para o contador de loop.
Versões de sombreador de pixel 1_1 1_2 1_3 1_4 2_0 2_sw 2_x 3_0 3_sw
Registro de inteiro constante x x x

 

O comportamento das constantes de sombreador foi alterado entre o Direct3D 8 e o Direct3D 9.

  • Para o Direct3D 9, as constantes definidas com defx atribuem valores ao espaço constante do sombreador. O tempo de vida de uma constante declarada com defx é limitado apenas à execução desse sombreador. Por outro lado, as constantes definidas usando as APIs SetXXXShaderConstantX inicializam constantes no espaço global. As constantes no espaço global não são copiadas para o espaço local (visível para o sombreador) até que SetxxxShaderConstants seja chamado.
  • Para o Direct3D 8, as constantes definidas com defx ou as APIs atribuem valores ao espaço constante do sombreador. Cada vez que o sombreador é executado, as constantes são usadas pelo sombreador atual, independentemente da técnica usada para defini-los.

Registos