gather4 (sm4.1 — asm)
Собирает четыре текселя, которые будут использоваться в операции билинейной фильтрации, и упаковывает их в один регистр.
gather4[_aoffimmi(u,v)] dest[.mask], srcAddress[.swizzle], srcResource[.swizzle], srcSampler.r |
---|
Элемент | Описание |
---|---|
Dest |
[in] Адрес результата операции. |
srcAddress |
[in] Содержит координаты текстуры. |
srcResource |
[in] Регистр ресурса. Swizzle позволяет произвольно свертывать возвращаемые значения, прежде чем они будут записаны в dest. |
srcSampler |
[in] Регистр выборки. Этот параметр должен иметь R(красный) swizzle, который указывает, что значение канала R копируется в dest. |
Комментарии
Эта операция работает только с одноканальные текстуры 2D или CubeMap. Для двухмерных текстур используются только режимы адресации выборки и используется верхний уровень любой пирамиды MIP.
Эта инструкция ведет себя как пример инструкции, но отфильтрованный пример не создается. Четыре образца, которые будут способствовать фильтрации, помещаются в xyzw в порядке счетчика по часовой стрелке, начиная с выборки в нижнем левом крае запрашиваемого расположения. Это то же самое, что выборка точек с координатами текстур (u,v) в следующих местах: (-,+),(+,+),(+,-)(-,-), где величина дельт всегда составляет половину текселя.
Для текстур CubeMap, когда двулинейный след охватывает тексели края от соседней грани. В углах используются те же правила, что и в примере инструкции; то есть неуязвимый угол считается средним из трех углов лицевой стороны.
Ограничения формата текстуры, применяемые к примерам инструкций, также применяются к инструкции сбора4 .
Для аппаратных реализаций оптимизации традиционной билинейной фильтрации, которая обнаруживает образцы непосредственно в текселях и пропускает чтение текселей, имеющих вес 0, нельзя использовать с сбором 4. функция gather4 всегда возвращает все запрошенные тексели.
Эта инструкция применяется к следующим этапам шейдера:
Вершинный построитель текстуры | Шейдер геометрии | Построитель текстуры |
---|---|---|
x | x | x |
Минимальная модель шейдера
Эта функция поддерживается в следующих моделях шейдеров.
Модель шейдера | Поддерживается |
---|---|
Модель шейдера 5 | да |
Модель шейдера 4.1 | да |
Модель шейдера 4 | нет |
Модель шейдера 3 (DirectX HLSL) | нет |
Модель шейдера 2 (DirectX HLSL) | нет |
Модель шейдера 1 (DirectX HLSL) | нет |
Связанные темы
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по