设置纹理采样模式主要是通过SetSamplerState函数来实现,这个函数有三个参数,第一个参数代表着定点中的不同采样单元,(顶点着色器中的对多个纹理单元的使用,一般demo只用一个纹理,所以这个参数一般默认为0);
第二个参数是D3DSAMPLERSTATETYPE枚举值中的一个,一般用到的有三个枚举值
D3DSAMP_MAGFILTER = 5,
D3DSAMP_MINFILTER = 6,
D3DSAMP_MIPFILTER = 7,
分别是放大,缩小,多级过滤纹理采样。
第二个纹理过滤是用来给第三个做铺垫的。因为多级纹理过滤就是按照原来纹理的尺寸,不断生成比原来小的尺寸纹理,如何生成呢,就看给D3DSAMP_MINFILTER 设置成什么值了。
为了和各向异性过滤对比,我把三角形的倾斜角度加大了一点
注意,多级纹理过滤中没有定义各向异性过滤,所以只能在放大和缩小过滤中
左边:各向异性过滤 (增大角度之后) 右边 三线性过滤 (好像看不出来什么效果。。。)