Condividi tramite


Scalatura firmata del registro sorgente

Sottrae 0,5 da ogni canale e ridimensiona il risultato di 2,0. Il nome bx2 deriva da distorsione e scale-times-two, ovvero l'operazione eseguita.

Sintassi

source register_bx2

Registro

Registro di origine. Per ulteriori informazioni sui tipi di registro, vedere ps_1_1__ps_1_2__ps_1_3__ps_1_4 Registers.

Osservazioni

Questa operazione viene comunemente usata per espandere i dati da [0.0 a 1.0] a [-1.0 a 1.0]. Questo modificatore è progettato per l'uso con le istruzioni aritmetiche. Questo modificatore viene comunemente usato negli input per l'istruzione del prodotto punto (dp3 - ps). L'uso di _bx2 sui dati al di fuori dell'intervallo compreso tra 0 e 1 può produrre risultati non definiti.

L'operazione di ridimensionamento con segno viene applicata ai dati letti dal registro prima dell'esecuzione dell'istruzione successiva. L'operazione viene applicata a tutti e quattro i canali di colore (RGBA) come indicato di seguito:

y = 2(x - 0.5)

Il contenuto del registro non viene modificato. Il modificatore viene applicato solo ai dati letti dal registro.

Questo modificatore è mutuamente esclusivo con Inverti Registro Sorgente , quindi non può essere applicato allo stesso registro.

Informazioni sulla versione:

  • Per ps_1_0 e ps_1_1, è possibile usare _bx2 su qualsiasi registro di origine per istruzioni sulle trame del modulo texm3x2* e texm3x3*. _bx2 non può essere usato in alcuna delle altre istruzioni di trama, ad esempio texreg2ar - ps o texreg2gb - ps.
  • Per ps_1_2 e ps_1_3, è possibile usare _bx2 in qualsiasi registro di origine per qualsiasi istruzione tex* ad eccezione di: texreg2ar - ps, texreg2gb - ps, texbem - ps o texbeml - ps.

Esempio

Questo esempio illustra una trama, converte i dati nell'intervallo di -1 in +1 e calcola un prodotto punto.

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

Modificatori di registro sorgente Pixel Shader