d3d纹理过滤器配置
MaxAnisotropy设置得越大,远处的画面细节保留得越多(上图中离视点越远的地方,各向异性程度越高)
常用的纹理过滤参数组合
过滤方式 |
MinFilter |
MagFilter |
MipFilter |
采样数 |
Point(最近点采样) |
D3DTEXF_POINT |
D3DTEXF_POINT | D3DTEXF_POINT | 1 |
Bilinear(双线性插值) |
D3DTEXF_LINEAR |
D3DTEXF_LINEAR | D3DTEXF_POINT | 4 |
Trilinear(三线性插值) |
D3DTEXF_LINEAR | D3DTEXF_LINEAR | D3DTEXF_LINEAR | 8 |
AnisotropicPoint(各向异性) |
D3DTEXF_ANISOTROPIC |
D3DTEXF_LINEAR | D3DTEXF_POINT | 4 x n |
AnisotropicLinear(各向异性) |
D3DTEXF_ANISOTROPIC | D3DTEXF_LINEAR | D3DTEXF_LINEAR | 8 x n |
① 采样数可以反映出算法的复杂度:采样数越大,耗费的计算越多
① Point、Bilinear、Trilinear画面效果基本差不多;细看的话,Trilinear > Bilinear > Point,Trilinear在Mipmap层级间过渡更自然平滑些
② AnisotropicLinear效果最好,在Mipmap层级间过渡方面要好于AnisotropicPoint,不过基本上看不出来AnisotropicPoint与AnisotropicLinear的差别了