Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Семплер — это входной псевдорегистр для пиксельного шейдера, который используется для идентификации этапа семплирования. Существует 16 регистров этапов выборки пиксельного шейдера: от s0 до s15. Поэтому до 16 поверхностей текстур можно считывать в одном проходе шейдера. Инструкции, использующие регистр выборки, это texld и texldp.
Образец должен быть объявлен перед использованием с dcl_samplerType (sm2, sm3 - ps asm) инструкции.
| Версии шейдера пикселей | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_sw | 2_x | 3_0 | 3_sw |
|---|---|---|---|---|---|---|---|---|---|
| Пробоотборник | x | x | x | x | x |
Сэмплеры — это псевдорегистры, так как вы не можете напрямую читать из них или записывать в них.
Единица выборки соответствует стадии выборки текстуры, инкапсулируя специфическое для выборки состояние, предоставленное SetSamplerState. Каждый сэмплер однозначно идентифицирует одну поверхность текстуры, которая задается соответствующему сэмплеру с помощью SetTexture. Однако одна и та же поверхность текстуры может быть задана в нескольких образцах.
Во время рисования текстура не может быть одновременно задана как предназначение рендеринга и в качестве текстуры на этапе.
В качестве единственного аргумента в команде загрузки текстуры может отображаться сэмплер: texldl - ps.
В ps_3_0, если используется образец, его необходимо объявить в начале программы шейдера с помощью инструкции dcl_samplerType (sm2, sm3 - ps asm).
Выборка текстуры с более высокой размерностью, чем присутствует в координатах текстуры, является недопустимой. Выборка текстуры с меньшим измерением, чем присутствует в координатах текстуры, будет игнорировать дополнительные координаты текстуры.
Связанные разделы