D3D10_FILTER 枚举 (d3d10.h)

纹理采样期间的筛选选项。

语法

typedef enum D3D10_FILTER {
  D3D10_FILTER_MIN_MAG_MIP_POINT = 0,
  D3D10_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x1,
  D3D10_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4,
  D3D10_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x5,
  D3D10_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10,
  D3D10_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11,
  D3D10_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14,
  D3D10_FILTER_MIN_MAG_MIP_LINEAR = 0x15,
  D3D10_FILTER_ANISOTROPIC = 0x55,
  D3D10_FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80,
  D3D10_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81,
  D3D10_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84,
  D3D10_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85,
  D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90,
  D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91,
  D3D10_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94,
  D3D10_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95,
  D3D10_FILTER_COMPARISON_ANISOTROPIC = 0xd5,
  D3D10_FILTER_TEXT_1BIT = 0x80000000
} ;

常量

 
D3D10_FILTER_MIN_MAG_MIP_POINT
值: 0
使用点采样进行缩小、放大和 mip 级采样。
D3D10_FILTER_MIN_MAG_POINT_MIP_LINEAR
值: 0x1
使用点采样进行缩小和放大;使用线性内插进行 mip 级采样。
D3D10_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT
值: 0x4
使用点采样进行缩小;使用线性内插进行放大;使用点采样进行 mip 级采样。
D3D10_FILTER_MIN_POINT_MAG_MIP_LINEAR
值: 0x5
使用点采样进行缩小;使用线性内插进行放大和 mip 级采样。
D3D10_FILTER_MIN_LINEAR_MAG_MIP_POINT
值: 0x10
使用线性内插缩小;使用点采样进行放大和 mip 级采样。
D3D10_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR
值: 0x11
使用线性内插缩小;使用点采样进行放大;使用线性内插进行 mip 级采样。
D3D10_FILTER_MIN_MAG_LINEAR_MIP_POINT
值: 0x14
使用线性内插缩小和放大;使用点采样进行 mip 级采样。
D3D10_FILTER_MIN_MAG_MIP_LINEAR
值: 0x15
使用线性内插缩小、放大和 mip 级采样。
D3D10_FILTER_ANISOTROPIC
值: 0x55
使用各向异性内插缩小、放大和 mip 级采样。
D3D10_FILTER_COMPARISON_MIN_MAG_MIP_POINT
值: 0x80
使用点采样进行缩小、放大和 mip 级采样。 将结果与比较值进行比较。
D3D10_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR
值: 0x81
使用点采样进行缩小和放大;使用线性内插进行 mip 级采样。 将结果与比较值进行比较。
D3D10_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT
值: 0x84
使用点采样进行缩小;使用线性内插进行放大;使用点采样进行 mip 级采样。 将结果与比较值进行比较。
D3D10_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR
值: 0x85
使用点采样进行缩小;使用线性内插进行放大和 mip 级采样。 将结果与比较值进行比较。
D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT
值: 0x90
使用线性内插缩小;使用点采样进行放大和 mip 级采样。 将结果与比较值进行比较。
D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR
值: 0x91
使用线性内插缩小;使用点采样进行放大;使用线性内插进行 mip 级采样。 将结果与比较值进行比较。
D3D10_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT
值: 0x94
使用线性内插缩小和放大;使用点采样进行 mip 级采样。 将结果与比较值进行比较。
D3D10_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR
值: 0x95
使用线性内插缩小、放大和 mip 级采样。 将结果与比较值进行比较。
D3D10_FILTER_COMPARISON_ANISOTROPIC
值: 0xd5
使用各向异性内插缩小、放大和 mip 级采样。 将结果与比较值进行比较。
D3D10_FILTER_TEXT_1BIT
值: 0x80000000
用于具有R1_UNORM格式的纹理的像素着色器。

注解

在纹理采样期间,将读取一个或多个纹素并组合 (这调用筛选) 以生成单个值。 点采样读取单个纹素,而线性采样读取两个纹素 (终结点) ,并在终结点之间线性内插第三个值。

HLSL 纹理采样函数还支持纹理采样期间的比较筛选。 比较筛选将每个采样纹素与比较值进行比较。 布尔结果的混合方式与普通纹理筛选的混合方式相同。

可以使用仅实现纹理筛选的 HLSL 内部纹理采样函数,或使用带比较筛选的纹理筛选的配套函数。

纹理采样函数 带比较筛选的纹理采样函数
sample samplecmpsamplecmplevelzero
 

比较筛选器仅适用于具有以下 格式的纹理:R32_FLOAT_X8X24_TYPELESS、R32_FLOAT、R24_UNORM_X8_TYPELESS R16_UNORM。

要求

要求
Header d3d10.h

另请参阅

核心枚举