Condividi tramite


Registro intero costante (riferimento PS HLSL)

I registri interi costanti vengono usati solo dal ciclo - ps e rep - ps.

Possono essere impostati usando defi - ps o SetPixelShaderConstantI.

Se usato come argomento per il ciclo - ps istruzione:

  • .x è il numero di iterazioni. (rep - ps usa solo questo componente).
  • .y è il valore iniziale per il contatore del ciclo.
  • .z è il passaggio di incremento per il contatore del ciclo.
Versioni del pixel shader 1_1 1_2 1_3 1_4 2_0 2_sw 2_x 3_0 3_sw
Registro intero costante x x x

 

Il comportamento delle costanti shader è cambiato tra Direct3D 8 e Direct3D 9.

  • Per Direct3D 9, le costanti impostate con defx assegnano valori allo spazio costante dello shader. La durata di una costante dichiarata con defx è limitata solo all'esecuzione di tale shader. Al contrario, le costanti impostate usando le API SetXXXShaderConstantX inizializzano le costanti nello spazio globale. Le costanti nello spazio globale non vengono copiate nello spazio locale (visibile allo shader) finché non viene chiamato SetxxxShaderConstants.
  • Per Direct3D 8, le costanti impostate con defx o le API assegnano entrambi i valori allo spazio costante dello shader. Ogni volta che viene eseguito lo shader, le costanti vengono usate dallo shader corrente indipendentemente dalla tecnica usata per impostarle.

registri