Выражения (Direct3D 9)
Выражения — это математические или логические операторы, которые используются справа от знака равенства. Существует множество типов выражений.
Выражения
Справочник по переменным
( variable ) or<variable >
Числовые скалярные
scalar
Числовое выражение
( numeric expression )
Здесь поддерживаются все стандартные числовые выражения HLL.
Конструктор
type ( constructor arguments )
Список инициализаторов
{ scalar value [, scalar value ... ] }
Скаляры должны быть литеральными скалярными значениями.
Количество инициализаторов должно быть совместимо с переменной (состоянием) в левой части знака равенства.
Выражение OR
token [ | token ... ]
Маркеры должны быть совместимы с переменной (состоянием) в левой части знака равенства.
В маркерах регистр не учитывается.
NULL
NULL
Значение NULL может быть присвоено только шейдеру, выборке или объекту текстуры.
Блок сборок
asm { code }
Блоки сборок PS должны быть назначены состоянию PIXELSHADER.
Блоки сборок VS должны быть назначены состоянию VERTEXSHADER.
Блок состояния sampler
sampler_state { [ state = expression ; [ state = ... ] ] }
Блоки состояний выборки — это последовательности неиндексированного состояния этапа выборки или назначений текстур.
Блоки состояний sampler должны быть назначены состоянию эффекта SAMPLER.
Блок состояний состояния эффекта
stateblock_state { [ state [ [index] ] = expression; [ state [ [index] ] = ... ] ] }
Блоки состояний — это последовательности общего состояния. Блоки состояний могут быть вложенными, но не могут содержать циклические ссылки.
Блоки состояний должны быть назначены состоянию эффекта STATEBLOCK.
Компиляция HLSL
compile target entrypoint ( [ arguments ] )
Вершинный шейдер vs_m_n целевой объект указывает версию вершинного шейдера D3DVS_VERSION(m, n). Пиксельный шейдер ps_m_n целевой объект указывает версию шейдера пикселей D3DPS_VERSION(m, n).
Высокоуровневые выражения компиляции языка вершинного шейдера можно назначить только состоянию эффекта VERTEXSHADER. Выражения компиляции высокоуровневого языка пиксельного шейдера можно назначить только состоянию эффекта PIXELSHADER.
Связанные темы