POPPUR爱换

标题: 维基百科给你解惑(关于反锯齿) [打印本页]

作者: vista@xp    时间: 2011-10-26 19:21
标题: 维基百科给你解惑(关于反锯齿)
全屏反锯齿(full scene Anti-aliasing,简称FSAA),也称全屏抗锯齿,它指的是利用反锯齿技术对输出到显示器的满屏画面信号进行放大与采样分析并重新制作满屏画面信号输出至显示器,而不是对画面某一部分使用反锯齿技术。全屏反锯齿对于3D游戏画面有着很大的影响,它能使整个3D游戏画面变得细腻、清晰与逼真,这是是一种重要的技术应用。全屏抗锯齿反锯齿技术,有以下方法:
[编辑] 超级采样抗锯齿超级采样抗锯齿(Super-Sampling Anti-aliasing,简称SSAA)此是早期抗锯齿方法,比较消耗资源,但简单直接,先把图像映射到缓存并把它放大,再用超级采样把放大后的图像像素进行采样,一般选取2个或4个邻近像素,把这些采样混合起来后,生成的最终像素,令每个像素拥有邻近像素的特征,像素与像素之间的过渡色彩,就变得近似,令图形的边缘色彩过渡趋于平滑。再把最终像素还原回原来大小的图像,并保存到帧缓存也就是显存中,替代原图像存储起来,最后输出到显示器,显示出一帧画面。这样就等于把一幅模糊的大图,通过细腻化后再缩小成清晰的小图。如果每帧都进行抗锯齿处理,游戏或视频中的所有画面都带有抗锯齿效果。[2] 而将图像映射到缓存并把它放大时,放大的倍数被用于分别抗锯齿的效果,如:图1,AA后面的x2、x4、x8就是原图放大的倍数。 超级采样抗锯齿中使用的采样法一般有两种:
[编辑] 多重采样抗锯齿多重采样抗锯齿(MultiSampling Anti-Aliasing,简称MSAA)是一种特殊的超级采样抗锯齿(SSAA)。MSAA首先来自于OpenGL。具体是MSAA只对Z缓存(Z-Buffer)和模板缓存(Stencil Buffer)中的数据进行超级采样抗锯齿的处理。可以简单理解为只对多边形的边缘进行抗锯齿处理。这样的话,相比SSAA对画面中所有数据进行处理,MSAA对资源的消耗需求大大减弱,不过在画质上可能稍有不如SSAA。[3]
[编辑] 覆盖采样抗锯齿覆盖采样抗锯齿(CoverageSampling Anti-Aliasing,简称CSAA)是nVidia G80系列出现时一并出现的抗锯齿技术。它的原理是将边缘多边形里需要采样的子像素坐标覆盖掉,抒原像素坐标强制安置在硬件和驱动程序预告算好的坐标中。这就好比采样标准统一的MSAA,能够最高效率地运行边缘采样,交通提升非常明显,同时资源占用也比较低。
[编辑] 可编程过滤抗锯齿可编程过滤抗锯齿(Custom Filter Anti-Aliasing)技术起源于AMD-ATI的R600家庭。简单地说CFAA就是扩大取样面积的MSAA,比方说之前的MSAA是严格选取物体边缘像素进行缩放的,而CFAA则可以通过驱动和谐灵活地选择对影响锯齿效果较大的像素进行缩放,以较少的性能牺牲换取平滑效果。显卡资源占用也比较小。
目前最主流的是CSAA和CFAA应该是最实用、最有效率的全屏抗锯齿模式。它们不仅有良好的平滑效果,同时对显示资源占用率也不高。

作者: coollab    时间: 2011-10-26 19:55
FXAA和MLAA代表未来AA的方向啊
作者: vista@xp    时间: 2011-10-26 20:16
coollab 发表于 2011-10-26 19:55
FXAA和MLAA代表未来AA的方向啊

看来你还是概念混淆
作者: Edison    时间: 2011-10-26 20:46
full scene 不应该翻译为全屏,而应该是全场景。
作者: coollab    时间: 2011-10-26 21:33
vista@xp 发表于 2011-10-26 20:16
看来你还是概念混淆[titter>

后处理难道不算AA吗?
结果一样不就完了……
作者: vista@xp    时间: 2011-10-26 22:14
coollab 发表于 2011-10-26 21:33
后处理难道不算AA吗?
结果一样不就完了……

简单的说,FSAA是技术,SSAA、MSAA、CSAA以及CFAA是实现此技术的手段
作者: vista@xp    时间: 2011-10-26 22:18
Edison 发表于 2011-10-26 20:46
full scene 不应该翻译为全屏,而应该是全场景。

全场景跟全屏还是存在区别的,仔细推敲应该还是全屏显示
作者: coollab    时间: 2011-10-26 22:27
vista@xp 发表于 2011-10-26 22:14
简单的说,FSAA是技术,SSAA、MSAA、CSAA以及CFAA是实现此技术的手段[titter>

可是我说的FXAA和MLAA,都是AA的一种啊
我说FXAA和MLAA都是手段,是实现FSAA一种手段而已……

我死活也米有想出来自己哪里错了……
作者: vista@xp    时间: 2011-10-26 22:34
coollab 发表于 2011-10-26 22:27
可是我说的FXAA和MLAA,都是AA的一种啊
我说FXAA和MLAA都是手段,是实现FSAA一种手段而已……

我始终也不明白FXAA MLAA是啥呢
作者: 恶人查理    时间: 2011-10-27 08:30
提示: 作者被禁止或删除 内容自动屏蔽
作者: zxl7288436    时间: 2011-10-27 10:47
FXAA跟MLAA都没有,看起来该更新资料了
作者: vista@xp    时间: 2011-10-27 11:18
zxl7288436 发表于 2011-10-27 10:47
FXAA跟MLAA都没有,看起来该更新资料了

很少游戏支持

1、执行 regedit.exe。
2、到 HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA Corporation\Global\NVTweak,新建 EnableSRS1442,数值类型为 dword,设置数值为 1。

请注意:驱动强制设置 FXAA 目前只对 opengl 程序生效!


作者: vista@xp    时间: 2011-10-27 11:22
况且这里谈的是FSAA




欢迎光临 POPPUR爱换 (https://we.poppur.com/) Powered by Discuz! X3.4