找回密码
 立即注册
搜索
查看: 2346|回复: 5

抄的,ATI显卡的3种(现在4种)AA模式

[复制链接]
     
发表于 2008-10-15 12:40 | 显示全部楼层 |阅读模式
本帖最后由 zmw_831110 于 2010-2-22 07:47 编辑

定制滤镜抗锯齿——CFAA

说起CFAA,我们不妨先把时间倒推到NVIDIA的NV20。代号NV20的GeForce 3是第一款DX8图形处理器,也是第一款具备MSAA的桌面产品,在它所提供的抗锯齿模式中有一个被NVIDIA称之为Quincunx的抗锯齿技术。

锯齿的产生主要是因为取样不足,在倾斜角度上图元(三角形、几何线)都会产生边缘形成锯齿,而纹理或者着色器程序有时候也会形成像素化痕迹和摩尔条纹,我们平常说的抗锯齿就是为了解决这些问题。

我们知道,在multisampling的时候,只有Z(深度)信息是运算于更高倍数的分辨率上,而色彩像素方面除了几何体边缘上的像素基本上都是渲染于和最终输出的屏幕分辨率一样的分辨率上。

在2X MSAA+Quincunx的时候,像素内的两个取样点颜色都是取自同一个纹理元素(texel)的颜色,而这个纹理元素颜色是以假设位于像素的中心位置计算获取的。如果多取样的取样点“a“踏在像素中心上,自然能获得正确的颜色。

位于像素内其他位置的取样点就未必能获得相同或者说正确的颜色,因为其他取样点的颜色只是像素中央点纹理元素颜色的拷贝,和取样点本身所在位置的真正纹理元素颜色可能存在差异,特别是在纹理元素要比像素小的情况下。

最初的Quincunx就是把取样点放在像素中心以及像素和像素之间的边角上,因此取样点颜色和像素中心颜色发生偏差的机会就相当高,应用了Quincunx后,大家的反应都是一样的——AA效果不错,但是画面看上去很“糊”。

到了NV17的时候,NVIDIA引入了偏移像素中心的方式,虽然仍然以2x Multisampling作取样,不过这种方式的其实是把一个较大的色彩偏差+一个较小的色彩偏差变成两个较小的色差偏差,NVIDIA称之为 accuview shifted AA,算是Quincnux的微小修订版,降低了边缘色彩的不平滑跳动提供更好的AA效果,只是仍然并不能很好解决纹理模糊的问题。

那么了解上面的这些资料,这和我们现在这片完全不同时代的R600 CFAA有什么意义呢?

CFAA是定制滤镜抗锯齿的英文单词首字母缩写,在启用CFAA后,取样点的权重可以根据一个可编程的滤镜来确定,例如靠近像素中心取样点权重最高,色彩更加接近像素中心纹理元素的色彩,最终抗锯齿的效果在纹理色彩误差方面最可以做到尽可能的小。







为了充分发挥CFAA的优势,ATI引入了可以形象地称之为小帐篷(Narrow-tent)、大帐篷(Wide-tent)取样点的覆盖模版。

其实从ATI提供的这些"帐篷"取样模板图来看,非常接近于高斯滤镜,换句话说,选择"帐篷式"模板的CFAA对于大量密集(高频)线条边缘的运动处理效果应该比box filiter更能取悦眼球:







小帐篷就是以像素中心为原点,画一个圆圈,直径是像素(在图形学中,大多数情况下像素是四方形)的对角线,这个圆圈在水平和垂直方向都会涵盖到邻近像素边缘上。而大帐篷的直径则更大一点,在取样上更加”越轨”了。当然这只是目前的滤镜形式,未来可能会在驱动中做出一些更新。

AMD最初的驱动是提供了最高24x AA模式,就是16x CFAA+边缘侦测,不过后来这个模式被拿掉了,边缘侦测的滤镜切换目前被做成了独立的小软件。AMD表示今后会把这个设定重新纳入到CCC中。(现在回来了)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

     
发表于 2008-10-15 12:49 | 显示全部楼层
看不懂...
回复

使用道具 举报

     
 楼主| 发表于 2008-10-15 13:40 | 显示全部楼层
现在多了一种Edge Detect
这种是现在最好的,当然,FPS也降低比较多
回复

使用道具 举报

     
发表于 2008-10-15 15:16 | 显示全部楼层


这个?... 不敢开高......
回复

使用道具 举报

     
 楼主| 发表于 2008-10-15 15:41 | 显示全部楼层
这个Edge Detect开到8X后
玩断腿3,绝对圆滑了
回复

使用道具 举报

     
发表于 2008-10-15 16:08 | 显示全部楼层
这鸟东西大学还学过。。。图形技术,最后基本全是抄的,啥都没学到,现在想想是门好课。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2025-8-2 12:00 , Processed in 0.027322 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表