转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=988

随着Deferred Rendering的普及,许多人开始研究靠post process完成的anti-alias。从STAKLER的Edge AA,到AMD的Directionally Adaptive Edge AA,到Jimenez’s MLAA,到I3D 2011上不是纯post process的SRAA,一路都在谱写着post process anti-alias的新篇章。

最近又有两个新的Post process anti-alias出现:NVIDIA的FXAAHumus大牛的GPAA。这几乎在预示着,anti-alias已经进入了post process的时代。硬件MSAA虽然方便,但由于需要在所有三角形的边缘都作,实属浪费。

NVIDIA的FXAA实际上可以看成是NV实现的GPU MLAA。它将出现在NV SDK 11中。基本性能是1280×720的分辨率下,在NVS 160M上花3.5ms,在Xbox 360上小于2ms。Jimenez’s MLAA在Xbox 360上需要3.79ms,所以FXAA还是比较快的。

GPAA是Humus自己研究出来的AA方法,它需要花一次三角形的边,根据边的斜率来把像素分成左右或者上下两部分,并根据coverage来计算颜色。结果挺不错的,缺点是需要多花一次三角形的边。

GPAA compare