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


Модель шейдера 6

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

В этом разделе

Раздел Описание
QuadReadAcrossDiagonal
Возвращает указанное локальное значение, которое считывается из диагонали противоположной полосы в этом четырехугольнике.
QuadReadLaneAt
Возвращает указанное исходное значение из полосы, определяемой идентификатором полосы в текущем четырехугольнике.
QuadReadAcrossX
Возвращает указанное локальное значение, считанное из другой полосы в этом четырехугольнике в направлении X.
QuadReadAcrossY
Возвращает указанное исходное значение, считанное из другой полосы в этом четырехугольнике в направлении Y.
WaveActiveAllEqual
Возвращает значение true, если выражение одинаково для каждой активной полосы в текущей волне (и, следовательно, равномерно по ней).
WaveActiveBitAnd
Возвращает побитовое значение AND всех значений выражения по всем активным полосам в текущей волне и реплицирует его обратно во все активные полосы.
WaveActiveBitOr
Возвращает побитовое ИЛИ всех значений выражения по всем активным полосам в текущей волне и реплицирует его обратно во все активные полосы.
WaveActiveBitXor
Возвращает побитовое XOR всех значений выражения по всем активным полосам в текущей волне и реплицирует его обратно во все активные полосы.
WaveActiveCountBits
Подсчитывает количество логических переменных, которые оцениваются как true по всем активным полосам в текущей волне, и реплицирует результат на все полосы движения в волне.
WaveActiveMax
Возвращает максимальное значение выражения по всем активным полосам в текущей волне и реплицирует его обратно во все активные полосы.
WaveActiveMin
Возвращает минимальное значение выражения по всем активным полосам в текущей волне, реплицирует его обратно во все активные полосы.
WaveActiveProduct
Умножает значения выражения по всем активным полосам в текущей волне и реплицирует его обратно во все активные полосы.
WaveActiveSum
Суммирует значение выражения по всем активным полосам в текущей волне и реплицирует его на все полосы в текущей волне.
WaveActiveAllTrue
Возвращает значение true, если выражение имеет значение true во всех активных полосах текущей волны.
WaveActiveAnyTrue
Возвращает значение true, если выражение имеет значение true в любой из активных полос в текущей волне.
WaveActiveBallot
Возвращает битовую маску 4-разрядного целого числа без знака для вычисления логического выражения для всех активных полос в указанной волне.
WaveGetLaneCount
Возвращает количество полос в волне в этой архитектуре.
WaveGetLaneIndex
Возвращает индекс текущей полосы в пределах текущей волны.
WaveIsFirstLane
Возвращает значение true только для активной полосы в текущей волне с наименьшим индексом.
WavePrefixCountBits
Возвращает сумму всех указанных логических переменных со значением true для всех активных полос с индексами, меньшими, чем текущая полоса.
WavePrefixProduct
Возвращает произведение всех значений в активных полосах в этой волне с индексами меньше, чем эта полоса.
WavePrefixSum
Возвращает сумму всех значений в активных полосах с меньшими индексами, чем этот.
WaveReadLaneFirst
Возвращает значение выражения для активной полосы текущей волны с наименьшим индексом.
WaveReadLaneAt
Возвращает значение выражения для заданного индекса полосы в пределах указанной волны.

Обзор модели шейдера 6

Модели шейдеров и профили шейдеров