Konstant booleskt register (HLSL PS-referens)

Det här registret är en samling bitar som används i instruktioner för statisk flödeskontroll (till exempel om bool – ps - else – ps - endif – ps). Det finns 16 av dem, därför kan en skuggning ha 16 oberoende grenvillkor. De kan anges med hjälp av defb – ps eller SetPixelShaderConstantB.

Beteendet för skuggningskonstanter har ändrats mellan Direct3D 8 och Direct3D 9.

  • För Direct3D 9 anges konstanter med defx-tilldela värden till skuggningskonstantutrymmet. Livslängden för en konstant som deklareras med defx är begränsad till körningen av den skuggningen. Omvänt anges konstanter med API:erna SetXXXShaderConstantX som initierar konstanter i globalt utrymme. Konstanter i globalt utrymme kopieras inte till lokalt utrymme (synligt för skuggningen) förrän SetxxxShaderConstants anropas.
  • För Direct3D 8 tilldelar konstanterna med defx eller API:erna båda värden till skuggningskonstantutrymmet. Varje gång skuggningen körs används konstanterna av den aktuella skuggningen oavsett vilken teknik som används för att ange dem.
Pixelskuggningsversioner 1_1 1_2 1_3 1_4 2_0 2_sw 2_x 3_0 3_sw
Konstant booleskt register x x x

 

registrerar