Поделиться через


texm3x3 — ps

Выполняет умножение матрицы 3x3 при использовании в сочетании с двумя инструкциями texm3x3pad — ps .

Синтаксис

texm3x3 dst, src

 

where

  • dst — регистр назначения.
  • src — это регистр источника.

Комментарии

Версии шейдера пикселей 1_1 1_2 1_3 1_4 2_0 2_x 2_sw 3_0 3_sw
texm3x3 x x

 

Эта инструкция аналогична инструкции texm3x3tex — ps без поиска текстуры.

Эта инструкция используется в качестве заключительной из трех инструкций, представляющих операцию умножения матрицы 3x3. Матрица 3x3 состоит из координат текстуры третьего этапа текстуры и двух предыдущих этапов текстуры. Любая текстура, назначенная любому из трех этапов текстуры, игнорируется.

Эта инструкция должна использоваться с двумя инструкциями texm3x3pad. Регистры текстуры должны соответствовать следующей последовательности.

 
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

Ниже приведены дополнительные сведения о том, как выполняется умножение 3x3.

Первая инструкция texm3x3pad выполняет первую строку умножения, чтобы найти u'.

u' = TextureCoordinates(stage m)UVW * t(n)RGB

Вторая инструкция texm3x3pad выполняет вторую строку умножения для поиска v'.

v' = TextureCoordinates(stage m+1)UVW * t(n)RGB

Инструкция texm3x3tex выполняет третью строку умножения для поиска w'.

w' = TextureCoordinates(stage m+2)UVW * t(n)RGB

Поместите результат умножения матрицы в регистр назначения.

t(m+2)RGBA = (u' , v' , w' , 1)

Инструкции по шейдеру пикселей