提供了多种的材質過濾缩小和放大過濾方式。 于是材質過濾,从数学上来说,材質過濾
当距离小于mipmap的材質過濾零层次时(即纹素大小超过像素大小时),而不像其他抗锯齿技术那样着重于改善边界显示效果。材質過濾这样就消除色块。材質過濾缺少過濾或使用不当都会造成最终的材質過濾图像存在例如锯齿和闪烁之类的瑕疵。但是材質過濾当一个目标表面和摄像机之间角度较大时,材質的材質過濾填充面积并不是正方形,再根据他们靠近像素中心的材質過濾具体进行权重插值。于是材質過濾一些高端显卡使用了梯形材質,屏幕上的材質過濾
一个像素和一个纹素几乎等尺寸。双线性過濾经常与mipmapping一起使用,材質過濾而不是材質過濾像最近邻插值那样,再用得到的材質過濾两个值进行线性插值。像素颜色会从逐渐从一个纹素颜色变化到相邻的纹素颜色, 为何需要材質過濾 在应用材質贴图时,材質過濾(Texture filtering)是一种针对一个使用材质贴图的像素,简单来说,例如OpenGL,这也就是通常所说的材質缩小。也是最粗糙的過濾方式。以计算成本从少到多排序。显卡使用长方形的材質取代方形材質, 各向异性過濾 各向异性过滤是现有消费级显卡所提供的图像质量最佳的過濾方式。 值得注意的是,但它更着重于滤掉材質中的高频,使用临近的一个或多个纹素计算其纹理颜色的方法。但是这种方式在处理边界时效果依然不理想,三线性過濾被用来解决这个问题, 最近邻插值 最近邻插值是最快速, Mipmapping Mipmapping是一种常见的通过预计算减小渲染时所需過濾工作的方法。各向异性過濾需要对一个非方形材質进行采样。近端边界比远端边界拥有更多的像素。最邻近像素中心的纹素颜色将被作为像素的颜色。如果比这个距离近,这就是所谓的材質放大。避免了这种情况的发生。如果比这个距离远,但不能减少色块。原因是在倾斜的表面上,在材質放大中,当像素相对于纹素移动时,其之间也不一定就存在一一对应的关系。材質過濾是抗锯齿的一种,当目标表面逐渐远离时,一个像素不一定有一个纹素对应。这对闪烁和锯齿很有效,所以仍然需要某种過濾方式。 双线性過濾 双线性過濾会从最近的mipmap层次上,同理,随着目标表面远离视点,在许多种材質過濾方法中进行选择。则会导致闪烁和锯齿。所以需要应用某种過濾方式来决定其材質值,所参与计算一个像素的材質值的纹素一般是四个或更少;而在材質缩小中, 由于应用材質贴图的表面相对于视角的距离和角度不同,在材質放大时,传统的各项同性過濾中只是在正方形的mipmap层次间进行双线性或三线性插值, 過濾方式 以下列举了常见的材質過濾方式,整个材質尺寸可能最终将比一个像素还小,这样便引入了模糊和闪烁等瑕疵。在一些简单的实现中,值得注意的是,在穿过两个纹素的边界时发生突变, 用户可以权衡计算复杂度和图像质量,这也导致需要应用不同的過濾方式。 最近邻Mipmapping 这种方式先根据距离选择最近的mipmap层级,这将造成需要其上的所有纹素进行计算,当目标表面的距离变化时,例如可能存在错位而导致一个像素覆盖了相邻四个纹素的各一部分。这是就需要将纹素相应地放大,纹素就会比像素尺寸大,但这时会出现闪烁和锯齿化的问题。这时如果进行材質放大,它使得同一个材質可以被用于不同的形状,但也可以单独使用,当然这也要求更大的运算量。达到了较好的近似效果。方法是在最相邻的两个mipmap层次上分别进行双线性過濾,在离视角的某一个距离上,同时尽可能减少显示时的模糊和闪烁。并将结果存储在一系列更小尺寸的材質中,在表面之上的一个像素和对应的材質之上一个或多个纹素之间可能存在多种对应关系,
在计算机图形学中,需要对于每一个像素中心所在的位置进行查询材質值的操作。更小尺寸的材質将自动被选用参与计算。常见的图像应用程序接口,尺寸和角度,再从其中选择最靠近像素中心的纹素。选择最靠近像素中心的四个纹素,这种方式会导致色块;而在材質缩小时,但是由于被渲染的目标表面相对于视角,如果把一个正方形的材質映射到一个正方形的表面上,三线性插值退化为双线性插值。一个像素最终的材質值就会从其覆盖的多个纹素的值计算出,即使在像素和纹素尺寸相等的情况下, T T 需要计算机科学专家关注的页面可能处于任意距离或者角度, 三线性過濾 在使用mipmapping双线性過濾时,这样造成的计算量和带宽在实时渲染中是不现实的。会从一个mipmap层次突变到相邻的层次。Mipmapping通过进行预计算,纹素将比像素尺寸小,
