Константный целочисленный регистр (справочник по HLSL VS)
Регистры целочисленных констант используются только циклом — и и rep — и.
Их можно задать с помощью дефи — vs или SetVertexShaderConstantI.
При использовании в качестве аргумента в цикле — в инструкции:
- .x — это число итерации. (rep - vs использует только этот компонент.
- .y — это начальное значение счетчика цикла.
- .z — это шаг увеличения счетчика цикла.
Поведение констант шейдера изменилось между Direct3D 8 и Direct3D 9.
- Для Direct3D 9 константы, заданные с дефксом, присваивают значения констант шейдеру. Время существования константы, объявленной с дефксом, ограничивается только выполнением этого шейдера. И наоборот, константы, заданные с помощью API SetXXXShaderConstantX инициализировать константы в глобальном пространстве. Константы в глобальном пространстве не копируются в локальное пространство (видимое для шейдера) до вызова SetxShaderConstants.
- Для Direct3D 8 константы, заданные с дефксом или API, назначают значения констант шейдеру. Каждый раз при выполнении шейдера константы используются текущим шейдером независимо от метода, используемого для их задания.
Связанные разделы