tex3D (справочник по HLSL) — выбор уровня MIP

Примеры трехмерной текстуры с использованием градиента для выбора уровня MIP.

ret tex3D(s, t, ddx, ddy)

Параметры

Элемент Описание
s
[in] Состояние выборки.
T
[in] Координата текстуры.
Ddx
[in] Скорость изменения геометрии поверхности в направлении x.
Ddy
[in] Скорость изменения геометрии поверхности в направлении y.

Возвращаемое значение

Значение данных текстуры.

Описание типа

Имя В/Из Тип шаблона Тип компонента Размер
s in Объекта sampler3D 1
t in Вектор Плавать 3
Ddx in Вектор Плавать 3
Ddy in Вектор Плавать 3
Ret out Вектор float 4

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

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

Модель шейдера Поддерживается
Модель шейдера 4 Да (только шейдер пикселей)
Модель шейдера 3 (DirectX HLSL) Да (только шейдер пикселей)
Модель шейдера 2 (DirectX HLSL) Да (только шейдер пикселей)
Модель шейдера 1 (DirectX HLSL) нет
  1. Выполняется значительное изменение порядка кода для перемещения вычислений градиента за пределы управления потоком.
  2. Если для ограничения D3DPSHADERCAPS2_0 задано значение D3DD3DPSHADERCAPS2_0_GRADIENTINSTRUCTIONS, компилятор сопоставляет эту функцию с texldd.

Комментарии

Если элемент управления потоком присутствует в шейдере, результат вычисления градиента, запрошенного внутри заданного пути ветви, является неоднозначным, когда смежные пиксели могут спускаться по отдельным путям управления потоком. Таким образом, считается недопустимым использование любой операции шейдера пикселей, которая запрашивает вычисление градиента в расположении, которое находится внутри конструкции управления потоком, которое может различаться в разных пикселях для данного примитива, растеризованного. Если любая из сторон оператора if с атрибутом ветви использует функцию градиента, может возникнуть ошибка компилятора. См. инструкцию if (DirectX HLSL).

См. также раздел

Встроенные функции (DirectX HLSL)