Registro booliano constante (referência do HLSL PS)
Esse registro é uma coleção de bits usados em instruções de controle de fluxo estático (por exemplo, se bool - ps - else - ps - endif - ps). Há 16 deles, portanto, um sombreador pode ter 16 condições de ramificação independentes. Eles podem ser definidos usando defb - ps ou SetPixelShaderConstantB.
O comportamento das constantes de sombreador foi alterado entre o Direct3D 8 e o Direct3D 9.
- Para o Direct3D 9, 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, 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. Sempre que o sombreador é executado, as constantes são usadas pelo sombreador atual, independentemente da técnica usada para defini-las.
Versões do sombreador de pixel | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_sw | 2_x | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
Registro booliano constante | x | x | x |
Tópicos relacionados