D3DX_FILTER

以下标志用于指定要作的纹理中的通道。

#define 描述
D3DX_FILTER_NONE 不会进行缩放或筛选。 源图像边界外的像素假定为透明黑色。
D3DX_FILTER_POINT 每个目标像素通过从源图像中采样最接近的像素来计算。
D3DX_FILTER_LINEAR 每个目标像素通过从源图像中采样最接近的四个像素来计算。 当两个轴上的刻度小于 2 时,此筛选器最有效。
D3DX_FILTER_TRIANGLE 源图像中的每个像素都与目标图像相同。 这是筛选器中速度最慢的筛选器。
D3DX_FILTER_BOX 每个像素通过从源图像中平均计算一个 2x2(x2) 像素框来计算。 仅当目标维度是源的一半时,此筛选器才有效,就像 mipmap 一样。
D3DX_FILTER_MIRROR_U 应镜像 u 轴上纹理边缘的像素,而不是包装。
D3DX_FILTER_MIRROR_V 应镜像 v 轴上纹理边缘的像素,而不是包装。
D3DX_FILTER_MIRROR_W w 轴上纹理边缘的像素应镜像,而不是包装。
D3DX_FILTER_MIRROR 指定此标志与指定D3DX_FILTER_MIRROR_U、D3DX_FILTER_MIRROR_V和D3DX_FILTER_MIRROR_W标志相同。
D3DX_FILTER_DITHER 生成的图像必须使用 4x4 排序的任一算法进行任一处理。
D3DX_FILTER_SRGB_IN 输入数据位于 sRGB (gamma 2.2) 颜色空间中。
D3DX_FILTER_SRGB_OUT 输出数据位于 sRGB (gamma 2.2) 颜色空间中。
D3DX_FILTER_SRGB 与指定D3DX_FILTER_SRGB_IN相同 |D3DX_FILTER_SRGB_OUT。

 

每个有效筛选器必须仅包含以下标志之一:D3DX_FILTER_NONE、D3DX_FILTER_POINT、D3DX_FILTER_LINEAR、D3DX_FILTER_TRIANGLE或D3DX_FILTER_BOX。 此外,可以使用 OR 运算符指定以下具有有效筛选器的零个或多个可选标志:D3DX_FILTER_MIRROR_U、D3DX_FILTER_MIRROR_V、D3DX_FILTER_MIRROR_W、D3DX_FILTER_MIRROR、D3DX_FILTER_DITHER、D3DX_FILTER_SRGB_IN、D3DX_FILTER_SRGB_OUT或D3DX_FILTER_SRGB。

为此参数指定D3DX_DEFAULT通常等效于指定D3DX_FILTER_TRIANGLE |D3DX_FILTER_DITHER。 但是,D3DX_DEFAULT可以有不同的含义,具体取决于使用筛选器的方法。 例如:

  • 使用 D3DXCreateTextureFromFileEx时,D3DX_DEFAULT映射到 D3DX_FILTER_TRIANGLE |D3DX_FILTER_DITHER。
  • 使用 D3DXFilterTexture时,如果纹理大小为 2,D3DX_DEFAULT映射到D3DX_FILTER_BOX,D3DX_FILTER_BOX |否则D3DX_FILTER_DITHER。

引用每个方法,检查如何映射D3DX_DEFAULT筛选器。

常量信息

要求 价值
页眉 d3dx9tex.h
最低作系统 Windows 98

 

D3DX 常量