Масштабирование со знаком регистра источника
Вычитает 0,5 из каждого канала и масштабирует результат на 2,0. Имя bx2 происходит от смещения и scale-times-two, что является операцией, которую он выполняет.
Синтаксис
source register_bx2
Регистрация
Регистр источника. Дополнительные сведения о типах регистров см. в разделе Ps_1_1__ps_1_2__ps_1_3__ps_1_4 Registers.
Комментарии
Эта операция обычно используется для расширения данных с [0,0 до 1,0] до [-1,0–1,0]. Этот модификатор предназначен для использования с арифметическими инструкциями. Этот модификатор обычно используется для входных данных в инструкцию по продукту точки (dp3 - ps). Использование _bx2 для данных за пределами диапазона от 0 до 1 может привести к неопределенным результатам.
Подписанная операция масштабирования применяется к данным, считываемым из регистра перед выполнением следующей инструкции. Операция применяется ко всем четырем цветовым каналам (RGBA) следующим образом:
y = 2(x - 0.5)
Содержимое регистра не изменяется. Модификатор применяется только к данным, считываемым из регистра.
Этот модификатор является взаимоисключающим с инвертом регистра источника , поэтому его нельзя применить к одному и тому же регистру.
Сведения о версии:
- Для ps_1_0 и ps_1_1 можно использовать _bx2 в любом регистре источника для инструкций по текстуре формы texm3x2* и texm3x3*. _bx2 нельзя использовать в других инструкциях текстуры, таких как texreg2ar - ps или texreg2gb - ps.
- Для ps_1_2 и ps_1_3 можно использовать _bx2 в любом регистре источника для любой инструкции tex*, кроме: texreg2ar - ps, texreg2gb - ps, texbem - ps или texbeml - ps.
Пример
В этом примере выполняется выборка текстуры, преобразование данных в диапазон от -1 до +1 и вычисление точечного изделия.
tex t0 ; Read a texture color.
dp3_sat r0, t0_bx2, v0_bx2 ; Calculate a dot product.
Связанные темы