正文内容 评论(0)
每一代新显卡发布,总会在画质方面进行一定程度的增强,尤其是抗锯齿技术。随着AMD Radeon HD 6800系列问世,我们又看到了新的“形态抗锯齿”(Morphological AA),简称MLAA。
一、形态抗锯齿简介
传统的多重采样抗锯齿(MSAA)和超级采样抗锯齿(SSAA)都是在帧渲染的同时执行过滤,贯穿整个渲染管线,MLAA则属于一种后期处理效果,是在渲染阶段全部完成之后才应用于输出图像的。简单地说,就是首先让显卡正常渲染每一帧,然后再借助DirectCompute硬件加速技术,进行一次着色器处理来执行过滤。打个比方,MLAA就像是在Adobe Photoshop里对一张图片使用某种特殊滤镜。
这样一来,MLAA的应用范围就要比MSAA、SSAA等广泛得多,比如全面支持DX9/10/11级别游戏,无需游戏专门优化;可提供全屏抗锯齿,而不限于多边形边缘、Alpha测试表面;能用来消除静态图像的锯齿,当然再动态画面上效果最好。
AMD宣称,MLAA相比于SSAA速度更快、画质更好、锯齿更少,同时性能上也接近于可编程过滤抗锯齿(CFAA)。
至于MLAA的技术原理这里就不深究了,最简单的解释就是:检测画面上的高对比度边缘,然后进行边缘色彩融合,达到消除锯齿的目的。
二、截图问题
因为是后期处理技术的缘故,游戏开启MLAA之后是无法利用Fraps之类的工具截图的。为此,AMD专门提供了一个小工具,其代码和驱动程序内的完全一致。它会首先获取没有MLAA抗锯齿效果的截图,然后利用驱动代码执行MLAA,这样得到的画面就和游戏中开启MLAA的效果完全一致了。
三、驱动控制
要想开启MLAA,只需要安装催化剂控制中心,然后在3D项目中勾选“Morphological filtering”(形态过滤)复选框,所有的游戏都可以享受MLAA的待遇了,不用跑到游戏里去寻找专门选项。就这么简单。
另一个好消息是,MLAA可兼容其他任何AA技术,也就是说可以和其他AA选项同时开启。当然这么做必然会严重影响性能,而且不容易判断不同AA技术的效果。具体如何使用就看玩家的硬件水平和个人爱好了。
四、催化剂10.10c补丁驱动的问题
本次测试使用的驱动程序是最新的催化剂10.10c Hotfix,显示驱动版本号8.782.1,编译于10月26日,但是在实际测试中发现,Radeon HD 6870/6850搭配此驱动根本无法在DX10/11游戏上开启MLAA,只有DX9游戏上一切正常。要知道,MLAA本来应该和DirectX版本无关的。
AMD方面很快承认了这个bug的存在,并且回复说:“我已经将此问题提交给催化剂工程师。他们迅速确认,出于某些奇怪的原因,催化剂控制中心里的设定不会百分之百完全有效。我们会在周一(最晚周二)对催化剂10.10c进行更新,解决这一问题。”
虽然事实上AMD已经对驱动进行了更新,但是因为时间关系,本次测试只针对一款DX9游戏进行,确切地说是《F1 2010》。该游戏会通过补丁升级支持DX11,今后有机会也会进行深入考察。
五、测试平台配置
处理器:Core i7-920 OC 3.6GHz
主板:微星Eclipse X58
内存:海盗船Dominator TR3X6G1600C8D DDR3 6GB
硬盘:西部数据Cavira Black 640GB
电源:PC Power & Cooling Turbo-Cool 1200W
显示器:戴尔3007WFP (DVI)
操作系统:Windows 7 Ultimate 64-bit
显卡:Radeon HD 6870 900/4200MHz、Radeon HD 6850 775/4000MHz
驱动程序:催化剂10.10c Hotfix
六、Radeon HD 6870 MLAA性能
2560×1600分辨率下,不开启AA平均帧率50FPS,打开MLAA之后下降到35FPS,损失大约44%,此时游戏依然基本流畅,但已经可以感觉到不同。
降到1920×1200、1680×1050分辨率之后,打开MLAA的性能也相当不错,50-60FPS的平均帧率已经足以保证流畅度。
对比2x MSAA,MLAA显得稍慢一些,但差距非常小,而且后者帧率曲线更加平滑,也就意味着整体更加稳定,不容易出现大幅波动。
对比8x MSAA,MLAA的速度几乎完全相同,不过依然波动更小。
对比2x Adaptive SSAA,MLAA果然如AMD所说体现出了速度优势,明显要快上一截。
对比8x Adaptive SSAA,MLAA的优势就太明显了,后者速度超过50FPS,前者却锐减至20FPS,已经无法流畅游戏。
如果在Adaptive SSAA、MLAA的基础上同时开启8x MSAA,后者速度损失20%左右,但依然达到了43FPS,基本能够保证流畅。
在2/4/8x三种不同级别下,MSAA的性能基本差不多,2x和4x几乎毫无差别,8x损失也不大,仍然足够流畅。
如果同时打开MLAA,不同级别的MSAA性能有了比较明显的差异,级别越高损失越大。
七、Radeon HD 6850 MLAA性能
和6870一样,6850开启MLAA是相当消耗资源的,性能下滑幅度达到了51%,而且平均帧率已经不足30FPS,明显比较卡了。
其实2560×1600已经不太适合6850这种级别的显卡开启抗锯齿,所以我们降到1920×1200,这下就好多了,损失幅度不过30%,平均速度依然有43FPS。
对比2x MSAA,MLAA要慢大概15%,6870也没差这么多。
对比8x MSAA,MLAA仍然略慢一些,但是也基本差不多。
对比2x Adaptive SSAA,MLAA依然更快一些,虽还不到10%但也符合AMD的说法。
对比8x Adaptive SSAA,MLAA的优势达到了惊人的2.6倍,和6870上差不多。
2x MSAA、MLAA同时开启对性能的影响还是比较大的,已经降至40FPS以下,比单纯的2x MSAA低了整整10FPS,不过依然还算流畅。
8x MSAA、MLAA之下帧率依然有37FPS,但已经有明显的迟钝感觉了,6850确实不适合这种苛刻的AA环境。
对比2x Adaptive SSAA,8x MSAA加上MLAA就赶不上了,但也仅仅落后3FPS而已,实际游戏中根本感觉不出来。
对比8x Adaptive SSAA的话就可以轻松胜出了,前者已经降至可怜的16FPS。
2/4/8x三种级别的MSAA在6850的差异还是有一些的,比6870更明显。
再同时打开MLAA,三种级别的速度几乎没有不同,这倒是和6870不太一样。
八、Radeon HD 6870/6850 MLAA性能对比
2560×1600分辨率不开启AA的时候6870快大约18%,意料之中。
开启MLAA之后23%的差距也没有意外,不过6870 35FPS的速度基本可以接受,6850 28.5FPS就很卡了。
1920×1200分辨率开启MLAA差距约为20%,速度都不错。
再同时打开8x MSAA,6870只快了16%,6850速度也能达到37FPS。
降至2x MSAA,差距还是16%。
九、MLAA开关画质对比
多边形边缘:不止是建筑物外部边缘,中间边缘也被MLAA实现了抗锯齿,还有右下角的篱笆。
200%放大后对比效果更加明显。
无论是建筑物、树木还是画面底部,MLAA都在发挥作用。
200%放大后,建筑物上和树木的抗锯齿效果异常显眼,只不过因为MLAA进行了边缘颜色混合的缘故,整体变得有些模糊。
底部放大后也能看得更清楚了。
MLAA可用于全屏画面,对篱笆之类的“透明物体”也同样有效,不过这里只稍微改善了一些,效果还不够好。
树木也属于“透明物体”,密密麻麻的树叶全面享受了MLAA。
但是放大后可以看到副作用,边缘颜色混合有些过了,导致整体非常模糊,可能不是每个人都喜欢这样的效果。
阴影效果同样可以被MLAA处理,边缘锯齿少了很多。
注意地面上的积水,确实平滑了。
放大再看看。
十、MLAA、MSAA/SSAA画质对比
MSAA自然也能消除边缘锯齿,但是看起来MLAA要更好一些,甚至优于8x MSAA。
放大到200%,MLAA的边缘效果确实更好,不过篱笆部分变形了。
再放大到500%,MLAA在处理边缘融合方面确实技高一筹,比MSAA柔和不少。
对比之后,8x MSAA在建筑物上的效果是最棒的,MLAA则基本相当于2x MSAA。
单独看大型建筑物就很明显了,MLAA和8x MSAA的差距很大,甚至还不如2x MSAA。
小楼也是类似的情况,8x MSAA清晰且锐利。
MLAA的性能确实堪比SSAA,画质方面呢?8x Adaptive SSAA确实是对付透明纹理的最佳武器,已经达到了近乎完美的效果,只是从前边的测试可以看到,这时候性能会很差劲,相比之下MLAA也还不错,画面效果非常接近2x Adaptive SSAA,性能也稍好一些,可以作为一种候补方案。
MLAA既然是后期处理滤镜,是否会造成纹理模糊呢?结果证明这种担心是多余的。这两张截图都可以证明,MLAA改善画质的同时并未影响纹理效果。
总结:
性能方面,AMD宣称MLAA不会造成SSAA那么多的性能损失,事实证明的确如此。Radeon HD 6870/6850上,即使是最低级别的2x Adaptive SSAA都要慢于MLAA。
当然,任何抗锯齿技术都是以牺牲性能为代价的,尤其是在高分辨率和低端显卡上。Radeon HD 6870/6850在2560×1600分辨率下开启MLAA分别减慢了44%、51%,似乎碰到了某种瓶颈(只能期待6900系列了),1920×1200和1680×1050分辨率下倒还好。
对于Radeon HD 6850来说,想要开启MLAA的话分辨率就不要超过1920×1200,如果阴影着色比较多的游戏1680×1050就够了。Radeon HD 6870在1920×1200分辨率下可以顺利开启MLAA,但是再高就不要指望了。
MLAA打开的同时是否可以开启MSAA、SSAA呢?对Radeon HD 6870/6850来说这样的要求有点儿高了,MSAA基本尚可,SSAA就不要想了。
同时开启MLAA的话,Radeon HD 6870要比Radeon HD 6850平均快20%左右。
画质方面,做为新生的抗锯齿技术,MLAA效果还是不错的:能在全屏幕的各种物体上体现出来、在多边形边缘上甚至比8x MSAA还要好、能以更快的速度提供接近于SSAA的质量、对阴影锯齿同样有效、完全不会影响纹理。
但是MLAA会造成不少边缘的过分模糊,这在树木上体现得尤其明显,反而失去了物体应有的样子。
总而言之,抗锯齿技术已经很多,但各有各的局限,没有谁是完美的。MLAA最大的好处就是能够直接支持任何游戏,性能和画质也保持了很好的平衡,是很有前途的一种技术。等到Radeon HD 6900系列问世,MLAA肯定会更有用武之地。