各项异性过滤

各项异性过滤
各项异性过滤(AF)是一种通用的纹理质量加强技术,可影响纹理在非正交视角下的外观。纹理是包含各类数据的图像,好比颜色、透明度、反射率和平滑度(法线)。这些数据映射到物体并通过GPU处理,以便于在屏幕上呈现真实的外观。但就其原始维度来讲,大多数纹理都因为计算开销过大而不能在场景中无限制重用,由于物体的纹素(1像素纹理)与照相机之间的相对距离会影响细节的可见程度,这常常会致使浪费大量处理时间来获取3D场景中不成比例的小曲面上应用的 多重纹理样本。为了同时保证性能和图像质量,AF使用了mipmap;mipmap是以较低分辨率呈现的主纹理副本,当相应曲面与照相机之间的距离达到指点值时,图形引擎即可调用它。通过适当过滤以后,在一个场景中使用多种mipmap水平不只不会对其外观形成的太大的影响,同时还能够极大地优化性能。


因为mipmap的维度一般是2的幂,或者小于原始纹理,所以有时须要为一个纹素采样多个mipmap,而这要求使用过滤方法来避免模糊和其余失真现象。 默认的双线过滤是最简单、计算开销最小的过滤方法:它计算纹理的最终颜色,根据图形引擎对适当点(目标纹理存在于屏幕上时)定义的mipmap执行4次采 样,这些样本的颜色数据将合成为最终结果。虽然这在必定程度上会形成纹理角度扭曲,但双线过滤仅对图形引擎肯定的mipmap执行采样,这意味着调用了两 种不一样mipmap大小的纹理在出现角度扭曲后会对其清晰度产生显著的影响。做为双线过滤的视觉连续方法,三线过滤能够连续对目标纹素的相邻mipmap 采样和拉平纹理数据,所以在mipmap之间提供了平滑的转换。但这种方法与双线过滤都假定纹理在照相机前显示为方块,从而影响纹理在较小视角下的质量。其缘由在于纹素比mipmap样本长或宽会分别形成过分采样或采样不足,从而致使图像模糊。

各项异性过滤的目的是在各类状况下都能提供出色的图像质量,同时将性能开销控制在较低的水平。根据计算机科学的定义,各项异性是处理同一空间中相异坐标的质量,这适用于在显示时未与照相机绝对正交的纹理。如前所述,当采样纹理与照相机斜交时,双线和三线过滤最终都会形成质量丢失,由于两种方法在从 mipmap获取纹理采样时都假定映射纹理在所呈现的空间中为绝对的方形,这不多能产生真实的效果。mipmap的等方性(即便用相同的维度)也是形成质 量丢失的另外一个缘由,所以当纹素为梯形时就没法在两个方向上充足采样。为了解决此问题,各项异性过滤将根据纹理的角度扭曲程度按比例扩展mipmap的高 度和宽度;该比例取决于所指定的最大采样值,而后将执行适当的采样。AF支持的各项异性水平范围是1(无扩展)到16,这些值定义了mipmap可扩展的最大程度,但AF为用户提供的扩展水平一般为2的幂:即2x、4x、8x和16x。这些设置之间的区别在于AF过滤纹理的最大角度不一样。举例来讲,4x过 滤纹理的角度比2x陡两倍,但仍然在2x范围内对纹理执行标准2x过滤来优化性能。使用的AF设置越高,能得到的收益也会更小,由于它们所适用的角度会呈 指数形式减小。ide

能够经过“3D设置”部分中的“NVIDIA控制面板”来控制各项异性过滤,但若是要得到最佳的性能和兼容性,NVIDIA® (英伟达™)则建议用户将它设置为由应用程序控制。性能

反锯齿
反锯齿(AA)是一种渲染技术,用于最大限度地减小3D场景中各物体的任何非垂直边缘的锯齿,即相似于梯状的视觉失真效果(visual artifact)。锯齿是当代3D渲染管线中的一项基本操做产生的:光栅化,即将近乎全真的图像转换为离散的像素矩阵(显示器)的过程。这一过程每每会让连续的边缘出现不一致问题,由于GPU只会对占据像素空间一半以上的线条着色,从而形成一些本应平滑的线条成为了锯齿状的边缘。


与各项异性过滤相同,实现这种技术的众多方法也各有优劣,而最经常使用的两种分别是超采样(supersampling)和多重采样(multisampling)。这两种方法最终都能产生相同的效果:经过对某像素的相邻子像素(由GPU渲染但未在屏幕上显示的虚拟像素)采样来为其确 定中间色,从而使物体的边缘更加真实,但两种方法之间的差异在于如何获取最终颜色。
超采样是一种强力的AA方法,它强制GPU对帧过分采样,或者使用分辨率乘以采样率的积(好比说,原始分辨率1680x1050*4次采 样=6720x4200)做为维度来呈现它,并从目标像素附近的样本获取颜色数据,而后将帧下采样(下降)至其原始大小。完成对帧的下采样以后,应用负水平细节线来锐化采样物体的纹理,以消除下采样和像素合并带来的模糊。超采样是一种全屏反锯齿,这意味着帧中的每个像素都会被采样并纠正,而不是仅仅将它 们排列在物体的外侧边缘,从而以巨大的性能为代价来提升图像的质量,由于GPU须要计算大量额外的信息。不能经过“NVIDIA控制面板”来启用超采样反锯齿模式。

与超采样相同,多重采样也会对帧过分采样(以更高的分辨率呈现它),可是会缩短各子像素从采样像素继承颜色值的时间,而且仅为子像素分配惟一的深度值(而超采样会计算各个单独的颜色/深度值)。因为GPU知道哪些像素会在对帧执行下采样时显示,所以最终颜色将经过深度值来计算:若是子像素深度不一致,则像素会排列在边缘,而且须要经过修改像素的不透明度(方法是计算采样数量以及具备不一样深度值的子像素的数量)来对其着色(在4x中,该值能够是100%、 75%、50%、25%和0%)。这种方法能够比超采样更大地下降性能需求,同时仍然提供能够接受的帧率,从而可应用于大多数3D游戏。

经过“3D设置”部分中的“NVIDIA控制面板”,可使用多种采样率(2x 至16x)来执行超采样。可是,要得到最佳的性能和兼容性,NVIDIA® (英伟达™)建议用户将采样率设置为由应用程序控制。优化

相关文章
相关标签/搜索