Инструкции — vs_2_x
В этом разделе содержатся справочные сведения о версии шейдера вершин, 2_x инструкции.
Существует несколько типов инструкций шейдера вершин, как показано в таблице. Столбцы справа означают следующее:
- Слоты инструкций — количество слотов инструкций, используемых каждой инструкцией.
- Настройка — арифметические инструкции. Каждый шейдер должен иметь инструкцию версии, и она должна быть первой инструкцией.
- Арифметика — эти инструкции предоставляют математические операции в шейдере.
- Управление потоком — эти инструкции добавляют возможности управления потоком, такие как цикл - vs...endloop - vs, , если bool - vs...else...endifи вызовы subroutine.
- Новые — эти инструкции являются новыми для этой версии.
Набор инструкций
Имя | Описание | Слоты инструкций | Настройка | Арифметика | Управление потоком | Новые функции |
---|---|---|---|---|---|---|
abs - vs | Абсолютная величина | 1 | x | |||
добавление — и | Добавление двух векторов | 1 | x | |||
перерыв - и | Разрыв из цикла - vs...endloop - vs или rep...endrep блок | 1 | x | x | ||
break_comp — vs | Условный разрыв из цикла - vs...endloop - vs или rep...endrep блок, с сравнением | 3 | x | x | ||
останова — и | Разрыв из цикла - vs...endloop - vs или rep...endrep блок, основанный на предикате | 3 | x | x | ||
вызов — vs | Вызов подпрограммы | 2 | x | |||
callnz bool - vs | Вызов подпрограммы, если логический регистр не равен нулю | 3 | x | |||
callnz pred - vs | Вызов подпрограммы, если регистр предиката не равен нулю | 3 | x | x | ||
crs - vs | Перекрестный продукт | 2 | x | |||
dcl_usage входные данные (sm1, sm2, sm3 - vs asm) | Объявление входных регистров вершин (см. раздел Registers - vs_2_x) | 0 | x | |||
def — и | Определение констант | 0 | x | |||
defb - vs | Определение логического константы | 0 | x | |||
дефи — vs | Определение целочисленной константы | 0 | x | |||
dp3 — vs | Трехкомпонентный продукт dot | 1 | x | |||
dp4 — vs | Продукт с четырьмя компонентами | 1 | x | |||
dst — vs | Вычисление вектора расстояния | 1 | x | |||
else - vs | Начало - и блок | 1 | x | |||
endif — vs | Завершение , если bool - vs...else - vs блок | 1 | x | |||
endloop - vs | Конец цикла — и блок | 2 | x | |||
endrep — vs | Конец блока повтора | 2 | x | |||
exp — и | Полная точность 2x | 1 | x | |||
expp - vs | Частичная точность 2x | 1 | x | |||
frc - vs | Дробный компонент | 1 | x | |||
если логическое значение — и | Начните , если логическое значение — и блок (с использованием логического условия) | 3 | x | |||
if_comp — и | Начните , если логическое значение — и блок, с сравнением | 3 | x | x | ||
, если предопределено — и | Начните , если логическое значение — и блок с условием предиката | 3 | x | x | ||
метка — и | Ярлык | 0 | x | |||
свет - и | Вычисление частичного освещения | 3 | x | |||
журнал — и | Полный журнал точности (x) | 1 | x | |||
logp — vs | Журнал частичной точности (x) | 1 | x | |||
цикл — и | Петля | 3 | x | |||
lrp - vs | Линейная интерполяция | 2 | x | |||
m3x2 — и | Умножение 3x2 | 2 | x | |||
m3x3 — vs | 3x3 умножение | 3 | x | |||
m3x4 — vs | Умножение 3x4 | 4 | x | |||
m4x3 — vs | Умножение 4x3 | 3 | x | |||
m4x4 — vs | Умножение 4x4 | 4 | x | |||
сумасшедший - vs | Умножение и добавление | 1 | x | |||
максимальное — и | Максимум | 1 | x | |||
мин - и | Минимум | 1 | x | |||
mov - vs | Двигаться | 1 | x | |||
mova - vs | Перемещение данных из регистра с плавающей запятой в регистр адресов (a0) | 1 | x | |||
mul - vs | Умножать | 1 | x | |||
nop - vs | Нет операции | 1 | x | |||
nrm — vs | Нормализация 4D-вектора | 3 | x | |||
pow - vs | xy | 3 | x | |||
rcp — vs | Взаимный | 1 | x | |||
rep - vs | Повторять | 3 | x | |||
ret - vs | Конец подпрограммы или основной | 1 | x | |||
rsq — vs | Корень взаимной квадратной площади | 1 | x | |||
setp_comp — vs | Настройка регистра предиката | 1 | x | x | ||
sge - vs | Больше или равное сравнение | 1 | x | |||
sgn - vs | Знак | 3 | x | |||
sincos - vs | Синус и косинус | 8 | x | |||
slt - vs | Меньше сравнения | 1 | x | |||
вложенная — и | Вычитать | 1 | x | |||
и | Версия | 0 | x |
Связанные разделы