ps_1_1, ps_1_2, ps_1_3, ps_1_4
Сборщик пиксельных шейдеров состоит из набора инструкций, которые работают с пиксельными данными, содержащимися в регистрах. Операции выражаются в виде инструкций, состоящих из оператора и одного или нескольких операндов. Инструкции используют регистры для передачи данных в ALU шейдера пикселей и из него. Регистры также можно использовать в некоторых инструкциях для хранения временных результатов.
Примечание
Поддержка HLSL для шейдера пикселей 1.x является устаревшей.
Инструкции
Существует две main категории инструкций шейдера пикселей: арифметические инструкции и инструкции по адресации текстур. Арифметические инструкции изменяют цветовые данные. Операции адресации текстуры обрабатывают данные координат текстуры и в большинстве случаев— выборку текстуры. Инструкции по шейдеру пикселей выполняются по пикселям; то есть они не знают о других пикселях в конвейере.
Инструкции для адресации текстур используют один слот, но арифметические инструкции можно связать, чтобы включить оба компонента цвета (RGB) и инструкции альфа-компонента в одном слоте.
ps_1_1, ps_1_2, ps_1_3 ps_1_4 Содержит список доступных инструкций.
Если включена многомерная выборка, пиксельные шейдеры запускаются только один раз на пиксель, а не один раз для каждого подпикселя. Multisampling только увеличивает разрешение ребер многоугольников, а также тесты глубины и набора элементов. Например, если включена многомерная выборка 3x3 и найден растрированный треугольник, охватывающий пять из девяти вложенных пикселей для определенного пикселя, то шейдер пикселей запускается один раз, и ко всем пяти вложенным пикселям применяется тот же результат цвета.
Регистры
ps_1_1__ps_1_2__ps_1_3__ps_1_4 Registers содержит список различных регистров, используемых ALU шейдера.
Модификаторы
Модификаторы для ps_1_X можно использовать для изменения функциональных возможностей инструкции или данных, считываемых из регистра или записываемых в нее.
Direct3D 9 требует промежуточных вычислений для поддержания по крайней мере 8-разрядной точности для всех форматов поверхности. Рекомендуется использовать как более высокую точность (12 бит) для математики в стадии, так и насыщенность до 8 бит между этапами текстуры. Изменяемые режимы округления или исключения не поддерживаются. Умножение должно поддерживаться с точностью округления до ближайшего, чтобы свести к минимуму потери точности.
Число выборок
Доступное количество выборок текстур:
- Для ps_1_0 — ps_1_3 максимальное значение равно 4.
- Для ps_1_4 максимальное значение равно 6.
Связанные темы