论文部分内容阅读
对AMD最新的Radeon HD 6000系列显卡来说,支持全新的MLAA抗锯齿是其最大的卖点之一。你知道这种抗锯齿的技术是怎样实现的吗?效果如何?需要如何设置?对显卡又有何要求吗,笔者在第一时间购买了Radeon HD 6870,并详细研究和测试了MLAA,现将自己在测试中的心得与大家一起分享。
抗锯齿技术是3D技术的一个重要组成部分,这项技术伴随着3D技术路发展,先后出现过SSAA、MSAA、CSAA和CFAA等多种抗锯齿模式。但大浪淘沙,在长期使用过程中,只有最消耗资源、画质最好的SSAA和效果相对较好、资源耗费较少的MSAA两种抗锯齿技术被广泛使用。最近,AMD在全新的催化剂驱动中,为Radeon HD 5800以及Radeon HD 6800系列显卡带来了新的MLAA抗锯齿技术。
MLAA技术实质是什么?
传统的抗锯齿技术,是贯穿在整个3D处理中的一种算法。比如SSAA,可以理解为大幅度提高原始图形分辨率,在处理计算后,再缩小分辨率并按照要求的分辨率计算输出的“暴力”抗锯齿方法;常见的MSAA是检测多边形的边缘,对边缘采样进行多次计算,最后输出相对平滑的边缘效果。相比之下,MSAA速度更快,但不够精细,对多边形内的纹理等抗锯齿效果的处理可能不如SSAA到位。
MLAA和上述抗锯齿技术都完全不同。从技术原理来说,MLAA更类似于一个2D滤镜,它并没有贯穿在整个3D处理中,反而是在整个3D计算完成,即将输出画面到屏幕上之前,利用DirectCompute对即将显示的画面进行再处理。此时MLAA会自动寻找画丽中的高对比度边缘(一般这些地方都是分界线、物体边缘等人眼比较敏感的部位),专门对这些边缘进行特殊算法操作。换句话来说,MLAA是一个彻底的后期处理技术。
我们用一个不太恰当的例子来更好地理解MLAA技术:如果你有照相机,在拍摄过程中使用各种灯光、道具、不同的镜头等来改善拍摄效果,就类似传统的抗锯齿操作。这些操作是针对拍摄本身的,会改变最终得到的数据。但你在拍摄了照片以后,利用Photoshop中的滤镜对照片处理,就属于拍摄后期处理,MLAA技术就是3D后期处理。假如Photoshop中有类似MLAA功能的滤镜,我们甚至可以直接对2D图片进行MLAA抗锯齿操作。
由于MLAA是纯粹的后期处理,因此它的兼容性极为出色。理论上MLAA可以在任何游戏上运行,包括DirectX 9、DirectX 10、DirectX 11游戏都可以使用MLAA进行抗锯齿处理,并获得同样的抗锯齿效果。不仅如此,MLAA还可以和任何其他抗锯齿模式叠加,比如MLAA MSAA的处理等。只不过目前受限于显卡性能,我们还是最好单独开启MLAA或者MSAA,否则性能下跌幅度会较大,会影响游戏本身的流畅性。
AMD首次公布MLAA抗锯齿技术是在催化剂10,10a Hotfix中,期间已经更新过b、c、d等版本。截至本文发稿前,最新的催化剂驱动10.10e已经发布,新版本不但进一步加强了MLAA技术,还使得Radeon HD 5000系列也能支持MLAA技术了(MLAA技术发布初期只支持Radeon HD 6000系列)。
从AMD官方给出的对比图来看,MLAA~对比强烈的边缘处理时作用明显,效果类似于特定的模糊处理。但作为一种后期处理技术,MLAA对画面全局使用滤镜处理,是不是也会影响到纹理的锐利度?比如不应该处理的地方却进行了MLAA抗锯齿,是否导致画面质量变差?下面笔者将通过实际测试来证明这个问题。
MLAA DEMo实战演示画质对比
由于MLAA技术属于后处理技术,因此很多截图工具不能截取到MLAA处理后的图像,包括我们常见的Fraps。之前有一些资料声称AMD提供了一个特殊的小工具,这个小工具的内部算法和驱动中的MLAA算法完全一致,用这个小工具可以得到和游戏中开启MLAA相同的画面。笔者通过其他渠道获得了和上述软件类似的软件,一共是三款,分别叫MLAA、MLAA2和MLAA3。它们不但可以可以演示MLAA和NMSAA的差异,还可以和MSAA技术进行对比,并且能够以截图方式体现MLAA和MSAA以及OAA的差距,并且能得到抗锯齿算法检测出来的边缘等信息。
通过三款软件的对比,我们可以看到,MLAA对抗锯齿的效果还是相当明显的。不过需要特别说明的是,MLAA核心算法虽然只有一种,但可以通过人为调整取得不同的宽容度来改变抗锯齿效果。宽容度是指判断边缘的严格程度,也就是说:究竟边缘像素的差异需要多大,才会被认为是“边缘”并进行MLAA抗锯齿处理。
我们打个比方来说,熟悉Photoshop的朋友肯定熟悉这样一个参数——容差。在Photoshop中使用魔棒选择画面区域时,容差可以让你确定选择时的宽容度。容差为1的时候,宽容度最小,Photoshop~,会选择和确定像素极其相似甚至完全相同的像素点;而容差设定为50甚至更大时,与确定像素点接近甚至基本相当的像素都会被包括进来。MLAA中也有类似的“容差”概念,因此究竟怎样确定“MLAA的容差”是一个相当困难的问题。不同的设置会导致最终效果出现巨大差异,这就需要厂商有相当强的优化水平和极为精准的拿捏手段了。
MLAA游戏实战性能对比
经过上文的讲述,想必大家都对MLAA有一定的了解了。下面笔者就同前主流的游戏来实际测试下MLAA能带来什么效果以及在游戏中实际应用的情况。
测试平台:
CPU:Core i7 860(睿频开启)
主板:P55
内存:DDR3 1333 2GB×2
显卡:Radeon HD 6870 IGB
操作系统:Windows 7 64bit
驱动程序:催化剂10.10e
测试游戏:《极品飞车14》、《使命召唤7》
测试说明:在实测中,笔者将对比MLAA和MSAA 8×的平均帧数,并与关闭AA情况下游戏的帧数、画质等情况作出对比。
在哪里开启MLAA
在安装了新的催化剂驱动10.10e以后,我们打开催化剂控制中心,可以在3D面板中选择上方的“AA”选项,然后在下方的详细内容中可以看到“形态滤波”复选框。勾选此选项后,就意味着打开了MLAA功能了。
《极品飞车14》游戏实测
在《极品飞车14》中,开启了MLAA 8×性能要比开启MSAA的帧数高一些,平均胜出幅度在5%左右。从游戏画质对比来看,MSAA的纹理精细度要好一些,MLAA的一些画面纹理细节部分稍微有模糊感,但基本不会影响游戏效果。相比不开启AA的时候,两种抗锯齿技术对画质的改善都是巨大的。但MLAA对文字的处理依旧是软肋,所有的文字都会变得圆润。
《使命召唤7》游戏实测
《使命召唤7》的游戏引擎比较老,因此在开启MSAA 8×和MLAA的情况下两款显卡都能在80fps左右流畅运行游戏。性能方面,MLAA的平均帧数比MSAA 8×还是要稍高一些。画质方面怎没有特别巨大的差距,MLAA在这款游戏中的表现也是很出色的。
测试小结
在实际游戏对比中,MLAA展示了它出色的抗锯齿效能。不过和传统的抗锯齿技术不同的是,使用MLAA后整个画面感觉更柔和,和MSAA那种锐利的感觉有明显差别。另外,MLAA对文字的作用是相当明显的,一些游戏中的文字甚至Fraps的文字都出现了圆滑化的倾向。
MLAA前景广阔
MLAA作为一个新诞生的抗锯齿技术,在其初生之时就能获得不错的抗锯齿效能和画质效果,是令人欣喜的。但MLAA的问题也有一些,比如纹理锐利度问题,比如字体变形等问题,这都是不容忽视的。
其实,MLAA在游戏主机上已经取得了很大的成功,例如在PS3的经典巨作《战神3》里面,MLAA的应用可谓非常出色,整个画面几乎看不到锯齿存在,并且画质精细度也得到很好的保证。《战神3》大获成功后,人们看到了MLAA的技术潜力,因此在新的催化剂驱动中,AMD将其作为一种新功能加入,给玩家带来更多的选择。从游戏主机对MLAA成功的应用来看,MLAA是相当有潜力的抗锯齿技术。目前的MLAA利用DirectCompute技术实现,因此老一些的Radeon HD 5800理论上都能打开MLAA。我们有理由相信,在新一代显卡进一步加强DirectCompute性能并特别针对MLAA技术改进后,MLAA能够在性能和画质上取得平衡,让我们的游戏锯齿更少,画质更精美!
抗锯齿技术是3D技术的一个重要组成部分,这项技术伴随着3D技术路发展,先后出现过SSAA、MSAA、CSAA和CFAA等多种抗锯齿模式。但大浪淘沙,在长期使用过程中,只有最消耗资源、画质最好的SSAA和效果相对较好、资源耗费较少的MSAA两种抗锯齿技术被广泛使用。最近,AMD在全新的催化剂驱动中,为Radeon HD 5800以及Radeon HD 6800系列显卡带来了新的MLAA抗锯齿技术。
MLAA技术实质是什么?
传统的抗锯齿技术,是贯穿在整个3D处理中的一种算法。比如SSAA,可以理解为大幅度提高原始图形分辨率,在处理计算后,再缩小分辨率并按照要求的分辨率计算输出的“暴力”抗锯齿方法;常见的MSAA是检测多边形的边缘,对边缘采样进行多次计算,最后输出相对平滑的边缘效果。相比之下,MSAA速度更快,但不够精细,对多边形内的纹理等抗锯齿效果的处理可能不如SSAA到位。
MLAA和上述抗锯齿技术都完全不同。从技术原理来说,MLAA更类似于一个2D滤镜,它并没有贯穿在整个3D处理中,反而是在整个3D计算完成,即将输出画面到屏幕上之前,利用DirectCompute对即将显示的画面进行再处理。此时MLAA会自动寻找画丽中的高对比度边缘(一般这些地方都是分界线、物体边缘等人眼比较敏感的部位),专门对这些边缘进行特殊算法操作。换句话来说,MLAA是一个彻底的后期处理技术。
我们用一个不太恰当的例子来更好地理解MLAA技术:如果你有照相机,在拍摄过程中使用各种灯光、道具、不同的镜头等来改善拍摄效果,就类似传统的抗锯齿操作。这些操作是针对拍摄本身的,会改变最终得到的数据。但你在拍摄了照片以后,利用Photoshop中的滤镜对照片处理,就属于拍摄后期处理,MLAA技术就是3D后期处理。假如Photoshop中有类似MLAA功能的滤镜,我们甚至可以直接对2D图片进行MLAA抗锯齿操作。
由于MLAA是纯粹的后期处理,因此它的兼容性极为出色。理论上MLAA可以在任何游戏上运行,包括DirectX 9、DirectX 10、DirectX 11游戏都可以使用MLAA进行抗锯齿处理,并获得同样的抗锯齿效果。不仅如此,MLAA还可以和任何其他抗锯齿模式叠加,比如MLAA MSAA的处理等。只不过目前受限于显卡性能,我们还是最好单独开启MLAA或者MSAA,否则性能下跌幅度会较大,会影响游戏本身的流畅性。
AMD首次公布MLAA抗锯齿技术是在催化剂10,10a Hotfix中,期间已经更新过b、c、d等版本。截至本文发稿前,最新的催化剂驱动10.10e已经发布,新版本不但进一步加强了MLAA技术,还使得Radeon HD 5000系列也能支持MLAA技术了(MLAA技术发布初期只支持Radeon HD 6000系列)。
从AMD官方给出的对比图来看,MLAA~对比强烈的边缘处理时作用明显,效果类似于特定的模糊处理。但作为一种后期处理技术,MLAA对画面全局使用滤镜处理,是不是也会影响到纹理的锐利度?比如不应该处理的地方却进行了MLAA抗锯齿,是否导致画面质量变差?下面笔者将通过实际测试来证明这个问题。
MLAA DEMo实战演示画质对比
由于MLAA技术属于后处理技术,因此很多截图工具不能截取到MLAA处理后的图像,包括我们常见的Fraps。之前有一些资料声称AMD提供了一个特殊的小工具,这个小工具的内部算法和驱动中的MLAA算法完全一致,用这个小工具可以得到和游戏中开启MLAA相同的画面。笔者通过其他渠道获得了和上述软件类似的软件,一共是三款,分别叫MLAA、MLAA2和MLAA3。它们不但可以可以演示MLAA和NMSAA的差异,还可以和MSAA技术进行对比,并且能够以截图方式体现MLAA和MSAA以及OAA的差距,并且能得到抗锯齿算法检测出来的边缘等信息。
通过三款软件的对比,我们可以看到,MLAA对抗锯齿的效果还是相当明显的。不过需要特别说明的是,MLAA核心算法虽然只有一种,但可以通过人为调整取得不同的宽容度来改变抗锯齿效果。宽容度是指判断边缘的严格程度,也就是说:究竟边缘像素的差异需要多大,才会被认为是“边缘”并进行MLAA抗锯齿处理。
我们打个比方来说,熟悉Photoshop的朋友肯定熟悉这样一个参数——容差。在Photoshop中使用魔棒选择画面区域时,容差可以让你确定选择时的宽容度。容差为1的时候,宽容度最小,Photoshop~,会选择和确定像素极其相似甚至完全相同的像素点;而容差设定为50甚至更大时,与确定像素点接近甚至基本相当的像素都会被包括进来。MLAA中也有类似的“容差”概念,因此究竟怎样确定“MLAA的容差”是一个相当困难的问题。不同的设置会导致最终效果出现巨大差异,这就需要厂商有相当强的优化水平和极为精准的拿捏手段了。
MLAA游戏实战性能对比
经过上文的讲述,想必大家都对MLAA有一定的了解了。下面笔者就同前主流的游戏来实际测试下MLAA能带来什么效果以及在游戏中实际应用的情况。
测试平台:
CPU:Core i7 860(睿频开启)
主板:P55
内存:DDR3 1333 2GB×2
显卡:Radeon HD 6870 IGB
操作系统:Windows 7 64bit
驱动程序:催化剂10.10e
测试游戏:《极品飞车14》、《使命召唤7》
测试说明:在实测中,笔者将对比MLAA和MSAA 8×的平均帧数,并与关闭AA情况下游戏的帧数、画质等情况作出对比。
在哪里开启MLAA
在安装了新的催化剂驱动10.10e以后,我们打开催化剂控制中心,可以在3D面板中选择上方的“AA”选项,然后在下方的详细内容中可以看到“形态滤波”复选框。勾选此选项后,就意味着打开了MLAA功能了。
《极品飞车14》游戏实测
在《极品飞车14》中,开启了MLAA 8×性能要比开启MSAA的帧数高一些,平均胜出幅度在5%左右。从游戏画质对比来看,MSAA的纹理精细度要好一些,MLAA的一些画面纹理细节部分稍微有模糊感,但基本不会影响游戏效果。相比不开启AA的时候,两种抗锯齿技术对画质的改善都是巨大的。但MLAA对文字的处理依旧是软肋,所有的文字都会变得圆润。
《使命召唤7》游戏实测
《使命召唤7》的游戏引擎比较老,因此在开启MSAA 8×和MLAA的情况下两款显卡都能在80fps左右流畅运行游戏。性能方面,MLAA的平均帧数比MSAA 8×还是要稍高一些。画质方面怎没有特别巨大的差距,MLAA在这款游戏中的表现也是很出色的。
测试小结
在实际游戏对比中,MLAA展示了它出色的抗锯齿效能。不过和传统的抗锯齿技术不同的是,使用MLAA后整个画面感觉更柔和,和MSAA那种锐利的感觉有明显差别。另外,MLAA对文字的作用是相当明显的,一些游戏中的文字甚至Fraps的文字都出现了圆滑化的倾向。
MLAA前景广阔
MLAA作为一个新诞生的抗锯齿技术,在其初生之时就能获得不错的抗锯齿效能和画质效果,是令人欣喜的。但MLAA的问题也有一些,比如纹理锐利度问题,比如字体变形等问题,这都是不容忽视的。
其实,MLAA在游戏主机上已经取得了很大的成功,例如在PS3的经典巨作《战神3》里面,MLAA的应用可谓非常出色,整个画面几乎看不到锯齿存在,并且画质精细度也得到很好的保证。《战神3》大获成功后,人们看到了MLAA的技术潜力,因此在新的催化剂驱动中,AMD将其作为一种新功能加入,给玩家带来更多的选择。从游戏主机对MLAA成功的应用来看,MLAA是相当有潜力的抗锯齿技术。目前的MLAA利用DirectCompute技术实现,因此老一些的Radeon HD 5800理论上都能打开MLAA。我们有理由相信,在新一代显卡进一步加强DirectCompute性能并特别针对MLAA技术改进后,MLAA能够在性能和画质上取得平衡,让我们的游戏锯齿更少,画质更精美!