Перечисление D3D11_FILTER (d3d11.h)

Параметры фильтрации во время выборки текстур.

Синтаксис

typedef enum D3D11_FILTER {
  D3D11_FILTER_MIN_MAG_MIP_POINT = 0,
  D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x1,
  D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4,
  D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x5,
  D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10,
  D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11,
  D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14,
  D3D11_FILTER_MIN_MAG_MIP_LINEAR = 0x15,
  D3D11_FILTER_ANISOTROPIC = 0x55,
  D3D11_FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80,
  D3D11_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81,
  D3D11_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84,
  D3D11_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85,
  D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90,
  D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91,
  D3D11_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94,
  D3D11_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95,
  D3D11_FILTER_COMPARISON_ANISOTROPIC = 0xd5,
  D3D11_FILTER_MINIMUM_MIN_MAG_MIP_POINT = 0x100,
  D3D11_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x101,
  D3D11_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x104,
  D3D11_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x105,
  D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x110,
  D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x111,
  D3D11_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x114,
  D3D11_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR = 0x115,
  D3D11_FILTER_MINIMUM_ANISOTROPIC = 0x155,
  D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_POINT = 0x180,
  D3D11_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x181,
  D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x184,
  D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x185,
  D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x190,
  D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x191,
  D3D11_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x194,
  D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR = 0x195,
  D3D11_FILTER_MAXIMUM_ANISOTROPIC = 0x1d5
} ;

Константы

 
D3D11_FILTER_MIN_MAG_MIP_POINT
Значение: 0
Используйте выборку точек для минификации, увеличения и выборки на уровне MIP.
D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR
Значение: 0x1
Использовать выборку точек для минификации и увеличения; использовать линейную интерполяцию для выборки на уровне MIP.
D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT
Значение: 0x4
Использование выборки точек для минификации; использовать линейную интерполяцию для увеличения; использовать выборку точек для выборки на уровне MIP.
D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR
Значение: 0x5
Использование выборки точек для минификации; использовать линейную интерполяцию для увеличения и выборки на уровне MIP.
D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT
Значение: 0x10
Использовать линейную интерполяцию для минификации; использовать выборку точек для увеличения и выборки на уровне MIP.
D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR
Значение: 0x11
Использовать линейную интерполяцию для минификации; использовать выборку точек для увеличения; использовать линейную интерполяцию для выборки на уровне MIP.
D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT
Значение: 0x14
Использовать линейную интерполяцию для минификации и увеличения; использовать выборку точек для выборки на уровне MIP.
D3D11_FILTER_MIN_MAG_MIP_LINEAR
Значение: 0x15
Используйте линейную интерполяцию для минификации, увеличения и выборки на уровне MIP.
D3D11_FILTER_ANISOTROPIC
Значение: 0x55
Используйте анизотропную интерполяцию для минификации, увеличения и выборки на уровне MIP.
D3D11_FILTER_COMPARISON_MIN_MAG_MIP_POINT
Значение: 0x80
Используйте выборку точек для минификации, увеличения и выборки на уровне MIP. Сравните результат со значением сравнения.
D3D11_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR
Значение: 0x81
Использовать выборку точек для минификации и увеличения; использовать линейную интерполяцию для выборки на уровне MIP. Сравните результат со значением сравнения.
D3D11_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT
Значение: 0x84
Использование выборки точек для минификации; использовать линейную интерполяцию для увеличения; использовать выборку точек для выборки на уровне MIP. Сравните результат со значением сравнения.
D3D11_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR
Значение: 0x85
Использование выборки точек для минификации; использовать линейную интерполяцию для увеличения и выборки на уровне MIP. Сравните результат со значением сравнения.
D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT
Значение: 0x90
Использовать линейную интерполяцию для минификации; использовать выборку точек для увеличения и выборки на уровне MIP. Сравните результат со значением сравнения.
D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR
Значение: 0x91
Использовать линейную интерполяцию для минификации; использовать выборку точек для увеличения; использовать линейную интерполяцию для выборки на уровне MIP. Сравните результат со значением сравнения.
D3D11_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT
Значение: 0x94
Использовать линейную интерполяцию для минификации и увеличения; использовать выборку точек для выборки на уровне MIP. Сравните результат со значением сравнения.
D3D11_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR
Значение: 0x95
Используйте линейную интерполяцию для минификации, увеличения и выборки на уровне MIP. Сравните результат со значением сравнения.
D3D11_FILTER_COMPARISON_ANISOTROPIC
Значение: 0xd5
Используйте анизотропную интерполяцию для минификации, увеличения и выборки на уровне MIP. Сравните результат со значением сравнения.
D3D11_FILTER_MINIMUM_MIN_MAG_MIP_POINT
Значение: 0x100
Извлеките тот же набор текселей, что и D3D11_FILTER_MIN_MAG_MIP_POINT, и вместо фильтрации возвращается минимум текселей. Тексели, которые взвешивается 0 во время фильтрации, не учитываются в минимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR
Значение: 0x101
Извлеките тот же набор текселей, что и D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR, и вместо фильтрации возвращается минимум текселей. Тексели, которые взвешивается 0 во время фильтрации, не учитываются в минимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT
Значение: 0x104
Получите тот же набор текселей, что и D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT и вместо фильтрации возвращает минимум текселей. Тексели, которые взвешивается 0 во время фильтрации, не учитываются в минимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR
Значение: 0x105
Извлеките тот же набор текселей, что и D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR, и вместо фильтрации возвращается минимум текселей. Тексели, которые взвешивается 0 во время фильтрации, не учитываются в минимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT
Значение: 0x110
Извлеките тот же набор текселей, что и D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT, и вместо фильтрации возвращается минимум текселей. Тексели, которые взвешивается 0 во время фильтрации, не учитываются в минимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR
Значение: 0x111
Извлеките тот же набор текселей, что и D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR, и вместо фильтрации возвращается минимум текселей. Тексели, которые взвешивается 0 во время фильтрации, не учитываются в минимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT
Значение: 0x114
Получите тот же набор текселей, что и D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT, и вместо фильтрации возвращается минимум текселей. Тексели, которые взвешивается 0 во время фильтрации, не учитываются в минимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR
Значение: 0x115
Получите тот же набор текселей, что и D3D11_FILTER_MIN_MAG_MIP_LINEAR, и вместо фильтрации возвращается минимум текселей. Тексели, которые взвешивается 0 во время фильтрации, не учитываются в минимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MINIMUM_ANISOTROPIC
Значение: 0x155
Извлеките тот же набор текселей, что и D3D11_FILTER_ANISOTROPIC, и вместо фильтрации возвращается минимум текселей. Тексели, которые взвешивается 0 во время фильтрации, не учитываются в минимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_POINT
Значение: 0x180
Извлеките тот же набор текселей, что и D3D11_FILTER_MIN_MAG_MIP_POINT и вместо фильтрации возвращает максимум текселей. Тексели, которые взвешивает 0 во время фильтрации, не учитываются в максимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR
Значение: 0x181
Получите тот же набор текселей, что и D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR, и вместо фильтрации возвращает максимум текселей. Тексели, которые взвешивает 0 во время фильтрации, не учитываются в максимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT
Значение: 0x184
Извлеките тот же набор текселей, что и D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT, и вместо фильтрации возвращает максимум текселей. Тексели, которые взвешивает 0 во время фильтрации, не учитываются в максимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR
Значение: 0x185
Получите тот же набор текселей, что и D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR, и вместо фильтрации возвращает максимум текселей. Тексели, которые взвешивает 0 во время фильтрации, не учитываются в максимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT
Значение: 0x190
Извлеките тот же набор текселей, что и D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT и вместо фильтрации возвращает максимум текселей. Тексели, которые взвешивает 0 во время фильтрации, не учитываются в максимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR
Значение: 0x191
Извлеките тот же набор текселей, что и D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR, и вместо фильтрации возвращает максимум текселей. Тексели, которые взвешивает 0 во время фильтрации, не учитываются в максимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT
Значение: 0x194
Извлеките тот же набор текселей, что и D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT, и вместо фильтрации возвращает максимум текселей. Тексели, которые взвешивает 0 во время фильтрации, не учитываются в максимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR
Значение: 0x195
Извлеките тот же набор текселей, что и D3D11_FILTER_MIN_MAG_MIP_LINEAR и вместо фильтрации возвращает максимум текселей. Тексели, которые взвешивает 0 во время фильтрации, не учитываются в максимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .
D3D11_FILTER_MAXIMUM_ANISOTROPIC
Значение: 0x1d5
Извлеките тот же набор текселей, что и D3D11_FILTER_ANISOTROPIC, и вместо фильтрации возвращает максимум текселей. Тексели, которые взвешивает 0 во время фильтрации, не учитываются в максимальном значении. Вы можете запросить поддержку этого типа фильтра из элемента MinMaxFiltering в структуре D3D11_FEATURE_DATA_D3D11_OPTIONS1 .

Комментарии

Примечание Если для фильтра min и mag используются разные типы фильтров, неопределенное поведение возникает в некоторых случаях, когда выбор между увеличением или минификацией является неоднозначным. Чтобы предотвратить такое неопределенное поведение, используйте режимы фильтрации, использующие аналогичные операции фильтрации как для min, так и для mag (или используйте анизотропную фильтрацию, которая также позволяет избежать этой проблемы).
 
Во время выборки текстуры один или несколько текселей считываются и объединяются (это вызывает фильтрацию), чтобы получить одно значение. Точечная выборка считывает один тексель, а линейная выборка считывает два текселя (конечные точки) и линейно интерполирует третье значение между конечными точками.

Функции выборки текстур HLSL также поддерживают фильтрацию сравнения во время выборки текстур. Фильтрация сравнения сравнивает каждую выборку текселя со значением сравнения. Логический результат смешивается так же, как и обычная фильтрация текстур.

Вы можете использовать встроенные функции выборки текстур HLSL, которые реализуют только фильтрацию текстур, или сопутствующие функции, использующие фильтрацию текстур с фильтрацией сравнения.

Функция выборки текстуры Функция выборки текстур с фильтрацией сравнения
sample samplecmp или samplecmplevelzero
 

Фильтры сравнения работают только с текстурами, имеющими следующие форматы DXGI: R32_FLOAT_X8X24_TYPELESS, R32_FLOAT, R24_UNORM_X8_TYPELESS R16_UNORM.

Требования

   
Верхняя часть d3d11.h

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

Основные перечисления