求详细介绍CSAA,CFAA,MLAA和FXAA
先搬运,总结在最后:
覆盖采样抗锯齿(CSAA)
覆盖采样抗锯齿(CoverageSampling Anti-Aliasing,简称CSAA)是nVidia G80系列出现时一并出现的抗锯齿技术。它的原理是将边缘多边形里需要采样的子像素坐标覆盖掉,抒原像素坐标强制安置在硬件和驱动程序预告算好的坐标中。这就好比采样标准统一的MSAA,能够最高效率地运行边缘采样,交通提升非常明显,同时资源占用也比较低。
可编程过滤抗锯齿(CFAA)
可编程过滤抗锯齿(Custom Filter Anti-Aliasing)技术起源于AMD-ATI的R600家庭。简单地说CFAA就是扩大取样面积的MSAA,比方说之前的MSAA是严格选取物体边缘像素进行缩放的,而CFAA则可以通过驱动和谐灵活地选择对影响锯齿效果较大的像素进行缩放,以较少的性能牺牲换取平滑效果。显卡资源占用也比较小。
MLAA全称是Morphological Antialiasing
意为形态抗锯齿
是Intel推出的完全基于CPU处理的抗锯齿解决方案。
对于游戏厂商使用的MSAA抗锯齿技术不同,Intel最新推出的MLAA将跨越边缘像素的前景和背景色进行混合,用第2种颜色来填充该像素,从而更有效地改进图像边缘的变现效果,这就是MLAA技术。
MLAA包括3个步骤:
1.寻找在特定的图像像素之间的不连续性,在有些图像中梯度幅值较大的并不是边缘点。
2.确定预定模式,确定渲染的图像。
3.在预定模式中进行领里边缘色彩混合处理。确定模式中的相应模板。
MLAA处理的最大优势是可以再多物体渲染时不会对系统造成太大的负担。
当然MLAA也有缺点,由于采用后滤波机制,所以无法避免Nyquist Limits(奈奎斯特采样定律),即显示的频移超过Nquist的极限时,图像色彩发生混迭的现象时,造成图像失真。
FXAA全称为“Fast Approximate Anti-Aliasing”,翻译成中文就是“快速近似抗锯齿”。它是传统MSAA(多重采样抗锯齿)效果的一种高性能近似值。它是一种单程像素着色器,和MLAA一样运行于目标游戏渲染管线的后期处理阶段,但不像后者那样使用DirectCompute,而只是单纯的后期处理着色器,不依赖于任何GPU计算API。正因为如此,FXAA技术对显卡没有特殊要求,完全兼容NVIDIA、AMD的不同显卡(MLAA仅支持A卡)和DX9、DX10、DX11。 相比于MSAA,FXAA的目标是速度更快、显存占用更低,还有着不会造成镜面模糊和亚像素模糊(表面渲染不足一个像素时的闪烁现象)的优势,而代价就是精度和质量上的损失。 按照FXAA技术开发者Timothy Lottes的说法,GeForce GTX 480利用FXAA Preset 2(第二种预设)处理一帧1920×1200分辨率画面时所需时间不到1毫秒。 FXAA现在有三种版本:“FXAA 1”是最早最基础的版本,也是在PC游戏中使用最广泛的,已用于《F.3.A.R》、《永远的毁灭公爵》、《柯南时代》、《Crysis 2》、《无主之地》等等;“FXAA 2”是针对Xbox 360游戏机专门设计的;“FXAA 3”又有两种算法,Quality质量版本面向PC,Console主机版本则面向Xbox 360、PS3。 FXAA 3相比于FXAA 1有很明显的性能优势,GeForce GTX 480 DX11默认设置下使用FXAA 3 Quality处理典型的720p分辨率画面只需要大约0.21毫秒。另外DX9、DX11模式下性能差异会很大,其中DX11更快一些
综上所搬,N卡用CSAA,A卡用CFAA,MLAA和FXAA是intel的技术,兼容N卡A卡,兼容D9-D11. 而且FXAA是MLAA的进化版,而FXAA3对DX11又有优化。