texm3x2tex — ps
Выполняет последнюю строку умножения матрицы 3x2 и использует результат для поиска текстуры. texm3x2tex необходимо использовать вместе с инструкцией texm3x2pad - ps .
Синтаксис
texm3x2tex dst, src |
---|
where
- dst — регистр назначения.
- src — это регистр источника.
Комментарии
Версии шейдера пикселей | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
texm3x2tex | x | x | x |
Инструкция используется в качестве одной из двух инструкций, представляющих операцию умножения матрицы 3x2. Эту инструкцию необходимо использовать с инструкцией texm3x2pad - ps .
При использовании этих двух инструкций регистры текстур должны использовать следующую последовательность.
tex t(n) // Define tn as a standard 3-vector (tn must
// be defined in some way before it is used)
texm3x2pad t(m), t(n) // where m > n
// Perform first row of matrix multiply
texm3x2tex t(m+1), t(n) // Perform second row of matrix multiply
// to get (u,v) to sample texture
// associated with stage m+1
Ниже приведены более подробные сведения о том, как выполняется умножение 3x2.
Инструкция texm3x2pad выполняет первую строку умножения, чтобы найти u'.
u' = t(n)RGB * TextureCoordinates(stage m)UVW
Инструкция texm3x2tex выполняет вторую строку умножения для поиска v'.
v' = t(n)RGB * TextureCoordinates(stage m+1)UVW
Инструкция texm3x2tex образцы текстуры на сцене (m+1) с помощью (u',v') и сохраняет результат в t(m+1).
t(m+1)RGB = TextureSample(stage m+1)RGB с использованием (u', v' ) в качестве координат
Примеры
Ниже приведен пример шейдера с картами текстур и определенными этапами текстуры.
ps_1_1
tex t0 // Bind texture in stage 0 to register t0
texm3x2pad t1, t0 // First row of matrix multiply
texm3x2tex t2, t0 // Second row of matrix multiply to get (u,v)
// with which to sample texture in stage 2
mov r0, t2 // Output result
В этом примере требуются следующие текстуры на следующих этапах текстуры.
- Этап 0 принимает карту с данными о возмущении (x, y, z).
- Этап 1 содержит координаты текстуры. Текстура не требуется на этапе текстуры.
- Этап 2 содержит как координаты текстуры, так и двухd текстуры, заданные на этом этапе текстуры.
Связанные темы