texm3x3 - ps
Esegue una moltiplicazione di matrice 3x3 se usata in combinazione con due texm3x3pad - istruzioni ps .
Sintassi
texm3x3 dst, src |
---|
dove
- dst è il registro di destinazione.
- src è un registro di origine.
Commenti
Versioni del pixel shader | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
texm3x3 | x | x |
Questa istruzione è uguale all'istruzione texm3x3tex - ps , senza la ricerca della trama.
Questa istruzione viene usata come ultima di tre istruzioni che rappresentano un'operazione di moltiplicazione di matrice 3x3. La matrice 3x3 è costituita dalle coordinate della trama della terza fase della trama e dalle due fasi precedenti della trama. Qualsiasi trama assegnata a una delle tre fasi della trama viene ignorata.
Questa istruzione deve essere usata con due istruzioni texm3x3pad. I registri delle trame devono seguire la sequenza seguente.
tex t(n) // Define tn as a standard 3-vector (tn must
// be defined in some way before it is used)
texm3x3pad t(m), t(n) // where m > n
// Perform first row of matrix multiply
texm3x3pad t(m+1), t(n) // Perform second row of matrix multiply
texm3x3 t(m+2), t(n) // Perform third row of matrix multiply to get a
// 3-vector result
Ecco altri dettagli su come viene eseguita la moltiplicazione 3x3.
La prima istruzione texm3x3pad esegue la prima riga della moltiplicazione per trovare u'.
u' = TextureCoordinates(stage m)UVW * t(n)RGB
La seconda istruzione texm3x3pad esegue la seconda riga della moltiplicazione per trovare v'.
v' = TextureCoordinates(stage m+1)UVW * t(n)RGB
L'istruzione texm3x3tex esegue la terza riga della moltiplicazione per trovare w'.
w' = TextureCoordinates(stage m+2)UVW * t(n)RGB
Posizionare il risultato della matrice moltiplicato nel registro di destinazione.
t(m+2)RGBA = (u' , v' , w' , 1)
Argomenti correlati