Compartilhar via


Dimensionamento assinado do registro de origem

Subtrai 0,5 de cada canal e dimensiona o resultado em 2,0. O nome bx2 vem de bias e scale-times-two, que é a operação que ele executa.

Sintaxe

source register_bx2

Registre-se

Registro de Origem. Para obter mais informações sobre tipos de registro, consulte Ps_1_1__ps_1_2__ps_1_3__ps_1_4 Registros.

Comentários

Essa operação é comumente usada para expandir dados de [0.0 para 1.0] para [-1.0 a 1.0]. Esse modificador foi projetado para uso com as instruções aritméticas. Esse modificador é comumente usado em entradas para a instrução do produto de ponto (dp3 – ps). Usar _bx2 em dados fora do intervalo de 0 a 1 pode produzir resultados indefinidos.

A operação de dimensionamento assinada é aplicada aos dados lidos do registro antes que a próxima instrução seja executada. A operação é aplicada a todos os quatro canais de cores (RGBA) da seguinte maneira:

y = 2(x - 0.5)

O conteúdo do registro não é alterado. O modificador é aplicado somente aos dados lidos do registro.

Esse modificador é mutuamente exclusivo com o Source Register Invert , portanto, ele não pode ser aplicado ao mesmo registro.

Informações de versão:

  • Para ps_1_0 e ps_1_1, você pode usar _bx2 em qualquer registro de origem para obter instruções de textura do formulário texm3x2* e texm3x3*. _bx2 não pode ser usado em nenhuma das outras instruções de textura, como texreg2ar - ps ou texreg2gb - ps.
  • Para ps_1_2 e ps_1_3, você pode usar _bx2 em qualquer registro de origem para qualquer instrução tex*, exceto: texreg2ar - ps, texreg2gb - ps, texbem - ps ou texbeml - ps.

Exemplo

Este exemplo amostra uma textura, converte dados no intervalo de -1 para +1 e calcula um produto de ponto.

tex t0                        ; Read a texture color.
dp3_sat r0, t0_bx2, v0_bx2    ; Calculate a dot product.

Modificadores de registro de origem do sombreador de pixel