enumeración D3D12_FILTER (d3d12.h)
Especifica las opciones de filtrado durante el muestreo de texturas.
Syntax
typedef enum D3D12_FILTER {
D3D12_FILTER_MIN_MAG_MIP_POINT = 0,
D3D12_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x1,
D3D12_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4,
D3D12_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x5,
D3D12_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10,
D3D12_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11,
D3D12_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14,
D3D12_FILTER_MIN_MAG_MIP_LINEAR = 0x15,
D3D12_FILTER_MIN_MAG_ANISOTROPIC_MIP_POINT,
D3D12_FILTER_ANISOTROPIC = 0x55,
D3D12_FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80,
D3D12_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81,
D3D12_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84,
D3D12_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85,
D3D12_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90,
D3D12_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91,
D3D12_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94,
D3D12_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95,
D3D12_FILTER_COMPARISON_MIN_MAG_ANISOTROPIC_MIP_POINT,
D3D12_FILTER_COMPARISON_ANISOTROPIC = 0xd5,
D3D12_FILTER_MINIMUM_MIN_MAG_MIP_POINT = 0x100,
D3D12_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x101,
D3D12_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x104,
D3D12_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x105,
D3D12_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x110,
D3D12_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x111,
D3D12_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x114,
D3D12_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR = 0x115,
D3D12_FILTER_MINIMUM_MIN_MAG_ANISOTROPIC_MIP_POINT,
D3D12_FILTER_MINIMUM_ANISOTROPIC = 0x155,
D3D12_FILTER_MAXIMUM_MIN_MAG_MIP_POINT = 0x180,
D3D12_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x181,
D3D12_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x184,
D3D12_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x185,
D3D12_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x190,
D3D12_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x191,
D3D12_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x194,
D3D12_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR = 0x195,
D3D12_FILTER_MAXIMUM_MIN_MAG_ANISOTROPIC_MIP_POINT,
D3D12_FILTER_MAXIMUM_ANISOTROPIC = 0x1d5
} ;
Constantes
D3D12_FILTER_MIN_MAG_MIP_POINT Valor: 0 Use el muestreo de punto para la minificación, ampliación y muestreo de nivel mip. |
D3D12_FILTER_MIN_MAG_POINT_MIP_LINEAR Valor: 0x1 Utilizar muestreo de punto para la minificación y ampliación; use la interpolación lineal para el muestreo de nivel mip. |
D3D12_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT Valor: 0x4 Utilizar muestreo de punto para la minificación; utilizar la interpolación lineal para la ampliación; use el muestreo de punto para el muestreo de nivel mip. |
D3D12_FILTER_MIN_POINT_MAG_MIP_LINEAR Valor: 0x5 Utilizar muestreo de punto para la minificación; use la interpolación lineal para la ampliación y el muestreo de nivel de MIP. |
D3D12_FILTER_MIN_LINEAR_MAG_MIP_POINT Valor: 0x10 Utilizar la interpolación lineal para la minificación; use el muestreo de punto para la ampliación y el muestreo de nivel de MIP. |
D3D12_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR Valor: 0x11 Utilizar la interpolación lineal para la minificación; utilizar muestreo de punto para ampliación; use la interpolación lineal para el muestreo de nivel mip. |
D3D12_FILTER_MIN_MAG_LINEAR_MIP_POINT Valor: 0x14 Utilice la interpolación lineal para la minificación y ampliación; use el muestreo de punto para el muestreo de nivel mip. |
D3D12_FILTER_MIN_MAG_MIP_LINEAR Valor: 0x15 Use la interpolación lineal para la minificación, ampliación y muestreo de nivel mip. |
D3D12_FILTER_ANISOTROPIC Valor: 0x55 Utilice la interpolación anisotrópica para la minificación, ampliación y muestreo de nivel mip. |
D3D12_FILTER_COMPARISON_MIN_MAG_MIP_POINT Valor: 0x80 Use el muestreo de punto para la minificación, ampliación y muestreo de nivel mip. Compare el resultado con el valor de comparación. |
D3D12_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR Valor: 0x81 Utilizar muestreo de punto para la minificación y ampliación; use la interpolación lineal para el muestreo de nivel mip. Compare el resultado con el valor de comparación. |
D3D12_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT Valor: 0x84 Utilizar muestreo de punto para la minificación; utilizar la interpolación lineal para la ampliación; use el muestreo de punto para el muestreo de nivel mip. Compare el resultado con el valor de comparación. |
D3D12_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR Valor: 0x85 Utilizar muestreo de punto para la minificación; use la interpolación lineal para la ampliación y el muestreo de nivel de MIP. Compare el resultado con el valor de comparación. |
D3D12_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT Valor: 0x90 Utilizar la interpolación lineal para la minificación; use el muestreo de punto para la ampliación y el muestreo de nivel de MIP. Compare el resultado con el valor de comparación. |
D3D12_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR Valor: 0x91 Utilizar la interpolación lineal para la minificación; utilizar muestreo de punto para ampliación; use la interpolación lineal para el muestreo de nivel mip. Compare el resultado con el valor de comparación. |
D3D12_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT Valor: 0x94 Utilice la interpolación lineal para la minificación y ampliación; use el muestreo de punto para el muestreo de nivel mip. Compare el resultado con el valor de comparación. |
D3D12_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR Valor: 0x95 Use la interpolación lineal para la minificación, ampliación y muestreo de nivel mip. Compare el resultado con el valor de comparación. |
D3D12_FILTER_COMPARISON_ANISOTROPIC Valor: 0xd5 Utilice la interpolación anisotrópica para la minificación, ampliación y muestreo de nivel mip. Compare el resultado con el valor de comparación. |
D3D12_FILTER_MINIMUM_MIN_MAG_MIP_POINT Valor: 0x100 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_MAG_MIP_POINT y, en lugar de filtrarlos, devuelva el mínimo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el mínimo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering de la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR Valor: 0x101 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_MAG_POINT_MIP_LINEAR y, en lugar de filtrarlos, devuelva el mínimo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el mínimo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering de la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT Valor: 0x104 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT y, en lugar de filtrarlos, devuelva el mínimo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el mínimo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering de la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR Valor: 0x105 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_POINT_MAG_MIP_LINEAR y, en lugar de filtrarlos, devuelva el mínimo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el mínimo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering de la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT Valor: 0x110 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_LINEAR_MAG_MIP_POINT y, en lugar de filtrarlos, devuelva el mínimo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el mínimo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering de la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR Valor: 0x111 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR y, en lugar de filtrarlos, devuelva el mínimo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el mínimo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering de la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT Valor: 0x114 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_MAG_LINEAR_MIP_POINT y, en lugar de filtrarlos, devuelva el mínimo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el mínimo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering de la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR Valor: 0x115 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_MAG_MIP_LINEAR y, en lugar de filtrarlos, devuelva el mínimo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el mínimo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering de la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MINIMUM_ANISOTROPIC Valor: 0x155 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_ANISOTROPIC y, en lugar de filtrarlos, devuelva el mínimo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el mínimo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering de la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MAXIMUM_MIN_MAG_MIP_POINT Valor: 0x180 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_MAG_MIP_POINT y, en lugar de filtrarlos, devuelva el máximo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el máximo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering de la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR Valor: 0x181 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_MAG_POINT_MIP_LINEAR y, en lugar de filtrarlos, devuelva el máximo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el máximo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering de la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT Valor: 0x184 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT y, en lugar de filtrarlos, devuelva el máximo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el máximo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering de la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR Valor: 0x185 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_POINT_MAG_MIP_LINEAR y, en lugar de filtrarlos, devuelva el máximo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el máximo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering en la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT Valor: 0x190 Obtenga el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_LINEAR_MAG_MIP_POINT y, en lugar de filtrarlos, devuelve el máximo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el máximo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering en la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR Valor: 0x191 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR y, en lugar de filtrarlos, devuelva el máximo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el máximo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering en la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT Valor: 0x194 Obtenga el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_MAG_LINEAR_MIP_POINT y, en lugar de filtrarlos, devuelve el máximo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el máximo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering en la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR Valor: 0x195 Obtenga el mismo conjunto de elementos de textura que D3D12_FILTER_MIN_MAG_MIP_LINEAR y, en lugar de filtrarlos, devuelve el máximo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el máximo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering en la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
D3D12_FILTER_MAXIMUM_ANISOTROPIC Valor: 0x1d5 Capture el mismo conjunto de elementos de textura que D3D12_FILTER_ANISOTROPIC y, en lugar de filtrarlos, devuelva el máximo de los elementos de textura. Los elementos de textura ponderados 0 durante el filtrado no se cuentan hacia el máximo. Puede consultar la compatibilidad con este tipo de filtro desde el miembro MinMaxFiltering en la estructura D3D11_FEATURE_DATA_D3D11_OPTIONS1 . |
Comentarios
Esta enumeración la usa la estructura D3D12_SAMPLER_DESC .
Las funciones de muestreo de texturas del Lenguaje de sombreador de alto nivel (HLSL) de Microsoft también admiten el filtrado de comparación durante el muestreo de texturas. El filtrado de comparación compara cada elemento de textura muestreado con un valor de comparación. El resultado booleano se combina de la misma manera que se combina el filtrado de textura normal.
Puede usar funciones intrínsecas de muestreo de textura HLSL que implementan el filtrado de texturas solo o funciones complementarias que usan el filtrado de texturas con el filtrado de comparación.
Tenga en cuenta también lo siguiente:
#define D3D12_FILTER_REDUCTION_TYPE_MASK ( 0x3 )
#define D3D12_FILTER_REDUCTION_TYPE_SHIFT ( 7 )
#define D3D12_FILTER_TYPE_MASK ( 0x3 )
#define D3D12_MIN_FILTER_SHIFT ( 4 )
#define D3D12_MAG_FILTER_SHIFT ( 2 )
#define D3D12_MIP_FILTER_SHIFT ( 0 )
#define D3D12_ANISOTROPIC_FILTERING_BIT ( 0x40 )
#define D3D12_ENCODE_BASIC_FILTER( min, mag, mip, reduction ) \
( ( D3D12_FILTER ) ( \
( ( ( min ) & D3D12_FILTER_TYPE_MASK ) << D3D12_MIN_FILTER_SHIFT ) | \
( ( ( mag ) & D3D12_FILTER_TYPE_MASK ) << D3D12_MAG_FILTER_SHIFT ) | \
( ( ( mip ) & D3D12_FILTER_TYPE_MASK ) << D3D12_MIP_FILTER_SHIFT ) | \
( ( ( reduction ) & D3D12_FILTER_REDUCTION_TYPE_MASK ) << D3D12_FILTER_REDUCTION_TYPE_SHIFT ) ) )
#define D3D12_ENCODE_ANISOTROPIC_FILTER( reduction ) \
( ( D3D12_FILTER ) ( \
D3D12_ANISOTROPIC_FILTERING_BIT | \
D3D12_ENCODE_BASIC_FILTER( D3D12_FILTER_TYPE_LINEAR, \
D3D12_FILTER_TYPE_LINEAR, \
D3D12_FILTER_TYPE_LINEAR, \
reduction ) ) )
#define D3D12_DECODE_MIN_FILTER( D3D12Filter ) \
( ( D3D12_FILTER_TYPE ) \
( ( ( D3D12Filter ) >> D3D12_MIN_FILTER_SHIFT ) & D3D12_FILTER_TYPE_MASK ) )
#define D3D12_DECODE_MAG_FILTER( D3D12Filter ) \
( ( D3D12_FILTER_TYPE ) \
( ( ( D3D12Filter ) >> D3D12_MAG_FILTER_SHIFT ) & D3D12_FILTER_TYPE_MASK ) )
#define D3D12_DECODE_MIP_FILTER( D3D12Filter ) \
( ( D3D12_FILTER_TYPE ) \
( ( ( D3D12Filter ) >> D3D12_MIP_FILTER_SHIFT ) & D3D12_FILTER_TYPE_MASK ) )
#define D3D12_DECODE_FILTER_REDUCTION( D3D12Filter ) \
( ( D3D12_FILTER_REDUCTION_TYPE ) \
( ( ( D3D12Filter ) >> D3D12_FILTER_REDUCTION_TYPE_SHIFT ) & D3D12_FILTER_REDUCTION_TYPE_MASK ) )
#define D3D12_DECODE_IS_COMPARISON_FILTER( D3D12Filter ) \
( D3D12_DECODE_FILTER_REDUCTION( D3D12Filter ) == D3D12_FILTER_REDUCTION_TYPE_COMPARISON )
#define D3D12_DECODE_IS_ANISOTROPIC_FILTER( D3D12Filter ) \
( ( ( D3D12Filter ) & D3D12_ANISOTROPIC_FILTERING_BIT ) && \
( D3D12_FILTER_TYPE_LINEAR == D3D12_DECODE_MIN_FILTER( D3D12Filter ) ) && \
( D3D12_FILTER_TYPE_LINEAR == D3D12_DECODE_MAG_FILTER( D3D12Filter ) ) && \
( D3D12_FILTER_TYPE_LINEAR == D3D12_DECODE_MIP_FILTER( D3D12Filter ) ) )
Función de muestreo de texturas | Función de muestreo de texturas con filtrado de comparación |
---|---|
Ejemplo | SampleCmp o SampleCmpLevelZero |
Los filtros de comparación solo funcionan con texturas que tienen los siguientes formatos: DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS, DXGI_FORMAT_R32_FLOAT, DXGI_FORMAT_R24_UNORM_X8_TYPELESS, DXGI_FORMAT_R16_UNORM.
Requisitos
Encabezado | d3d12.h |