Phoronix近日对开普勒架构在Linux系统下的抗锯齿表现做了一番考察,使用GeForce GTX 680显卡、NVIDIA 302.17 Linux官方驱动,搭配Core i7-3770K处理器,操作系统为Ubuntu 12.04。
测试的抗锯齿模式如下:
2xAA:2xMSAA
4xAA:4xMSAA
8xAA:8xMSAA
8xAA:4xMSAA+4xCSAA
8xAA:2xMSAA+4xSSAA
16xAA:4xMSAA+12xCSAA
16xAA:8xMSAA+8xCSAA
16xAA:4xMSAA+4xSSAA
32xAA:8xMSAA+24xCSAA
其中MSAA代表多重采样抗锯齿,代表CSAA覆盖采样抗锯齿,SSAA代表超级采样抗锯齿。这些都是NVIDIA官方驱动支持的抗锯齿模式,使用开源的Mesa/Gallium3D驱动还可以获得MAA形态抗抗锯齿,但是MSAA会非常有限。
公版GeForce GTX 680
测试平台配置
Lightsmark 2008:最吃性能的不是32xAA,反而是4xMSAA+4xSSAA的组合,只有关闭抗锯齿时的43%,另外2xMSAA+4xSSAA也很吃力,证明SSAA的确相当耗资源。
Nexuiz 2.5.2:这次各种看锯齿组合模式的帧率都相差不多,甚至出现了2xMSAA比关闭抗锯齿还快的奇观,而最慢的还是4xMSAA+4xSSAA。
Unigine Sanctuary 2.3:SSAA依然要命,16xAA、32xAA也不是盖的。
Xonotic 0.6:4xMSAA又成了奇葩,比2xMSAA和关闭抗锯齿都要快。
简而言之,8xMSAA+24xCSAA、8xMSAA+8xCSAA、4xMSAA+12xCSAA这种看起来很高倍的抗锯齿在Linux下并不是最吃性能的,更狠的是SSAA牵涉其中的时候,帧率会出现大幅度下跌。至于MSAA偶尔开了比不开还快,只能用驱动不完善来解释了。