gather4_po_c (sm5 – asm)

Ведет себя так же, как gather4_po, за исключением выполнения сравнения по текселям, аналогично sample_c.

gather4_po_c dest[.mask], srcAddress[.swizzle], srcOffset[.swizzle], srcResource[.swizzle], srcSampler[.r], srcReferenceValue
Элемент Описание
Dest
[in] Адрес результата операции.
srcAddress
[in] Набор координат текстуры.
srcOffset
[in] Смещение.
srcResource
[in] Регистр текстуры.
srcSampler
[in] Регистр выборки.
srcReferenceValue
[in] Выбран один компонент.

Комментарии

Сведения о сравнении srcReferenceValue с каждым текселем, извлекаемого текселя, см. в разделе sample_c. В отличие от sample_c, gather4_po_c возвращает каждый результат сравнения, а не фильтрует их.

Эта инструкция, как и gather4_po, работает только с двухd текстурами. Это отличается от gather4_c, которая также работает с TextureCubes.

Для форматов с компонентами float32, если извлекаемое значение нормализовано или +-INF, оно используется в операции сравнения без изменений. NaN используется в операции сравнения как NaN, но точное битовое представление NaN может быть изменено. Денормы сбрасываются до нуля в сравнении. Для TextureCube некоторый синтез отсутствующих 4-го текселя должен происходить по углам, поэтому понятие возврата битов без изменений для синтезированного текселя не применяется.

Форматы, поддерживаемые для gather4_po_c , совпадают с форматами, поддерживаемыми для sample_c. Это однокомпонентные форматы, то есть . R на srcSampler, а не произвольный swizzle.

gather4_po_c для несвязанного ресурса возвращает значение 0.

Используйте этот метод для фильтрации теневых карт.

Эта инструкция применяется к следующим этапам шейдера:

Вершина Корпуса Домен Geometry Пиксель Вычисления
X X X X X X

Минимальная модель шейдера

Эта инструкция поддерживается в следующих моделях шейдеров:

Модель шейдера Поддерживается
Модель шейдера 5 да
Модель шейдера 4.1 нет
Модель шейдера 4 нет
Модель шейдера 3 (DirectX HLSL) нет
Модель шейдера 2 (DirectX HLSL) нет
Модель шейдера 1 (DirectX HLSL) нет

Сборка модели шейдера 5 (DirectX HLSL)