texm3x3 - ps
Executa uma multiplicação de matriz 3x3 quando usada em conjunto com duas instruções texm3x3pad – ps .
Sintaxe
texm3x3 dst, src |
---|
onde
- dst é o registro de destino.
- src é um registro de origem.
Comentários
Versões do sombreador de pixel | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
texm3x3 | x | x |
Esta instrução é a mesma que a instrução texm3x3tex - ps , sem a pesquisa de textura.
Esta instrução é usada como a final de três instruções que representam uma operação de multiplicação de matriz 3x3. A matriz 3x3 é composta pelas coordenadas de textura do terceiro estágio de textura e pelos dois estágios de textura anteriores. Qualquer textura atribuída a qualquer um dos três estágios de textura é ignorada.
Esta instrução deve ser usada com duas instruções texm3x3pad. Os registros de textura devem seguir a sequência a seguir.
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
Veja mais detalhes sobre como a multiplicação 3x3 é realizada.
A primeira instrução texm3x3pad executa a primeira linha da multiplicação para localizar u'.
u' = TextureCoordinates(stage m)UVW * t(n)RGB
A segunda instrução texm3x3pad executa a segunda linha da multiplicação para localizar v'.
v' = TextureCoordinates(stage m+1)UVW * t(n)RGB
A instrução texm3x3tex executa a terceira linha da multiplicação para localizar w'.
w' = TextureCoordinates(stage m+2)UVW * t(n)RGB
Coloque o resultado da multiplicação de matriz no registro de destino.
t(m+2)RGBA = (u' , v' , w' , 1)
Tópicos relacionados