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


Sampler (Direct3D 9 asm-vs)

Семплер — это входной псевдорегистр для вершинного шейдера, используемый для идентификации этапа выборки. Существует четыре самплера вершинного шейдера: s0 по s3. Четыре поверхности текстуры можно считывать за один проход шейдера.

Sampler (Direct3D 9 asm-vs)s — это псевдорегистры, так как вы не можете напрямую читать или записывать в них.

Единица выборки соответствует этапу семплирования текстуры, инкапсулируя состояние, специфичное для выборки, предоставленное SetSamplerState. Каждый образец однозначно идентифицирует одну поверхность текстуры, которая устанавливается на соответствующий образец с помощью SetTexture. Однако одна и та же поверхность текстуры может быть задана в нескольких образцах.

Во время рисования текстура не может быть одновременно задана как цель рендеринга и текстура на стадии.

Поскольку существует четыре семплера, до четырех текстурных поверхностей может считываться за один проход шейдера. Пример может отображаться в качестве единственного аргумента в инструкции загрузки текстуры: texldl - vs.

В vs_3_0, если используется семплер, его необходимо объявить в начале программы шейдера с помощью инструкции dcl_samplerType (sm3 - vs asm).

Версии шейдера вершин 1_1 2_0 2_sw 2_x 3_0 3_sw
Пробоотборник x x

 

Регистры Шейдера Вершин

Вершинные текстуры в vs_3_0 (DirectX HLSL)