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.
Argomenti correlati