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


Регистрация адресов

Регистр a0 — это регистр адресов. Один регистр доступен в vs_1_1 версии. Регистр адресов, назначенный как a0.x в vs_1_1, можно использовать в качестве смещения со знаком для относительного адресации в файл постоянного регистра. Для версий vs_2_0 и выше все четыре компонента (.x, y, .z, .w) доступны для относительной адресации.

c[a0.x + n]

Регистр адресов не может быть прочитан шейдером вершин, его можно использовать только для относительной адресации постоянного регистра. Значения чтения вне юридического диапазона возвращаются (0.0, 0.0, 0.0, 0.0, 0.0). Регистр адресов может быть только местом назначения для mov - и инструкции. Если число с плавающей запятой перемещается в целочисленный регистр, происходит циклический и ближайший преобразование.

Перед его использованием все шейдеры должны инициализировать регистр адресов. Для версии vs_2_0 и выше mova — инструкция vs может переместить значение с плавающей запятой в регистр адресов.

Версии шейдера вершин 1_1 2_0 2_sw 2_x 3_0 3_sw
Регистрация адресов x x x x x x

 

регистры шейдера вершин