抗锯齿技术简介

虽然3D图形渲染技术的飞速进步给我们带来了一次次的视觉震撼,电影级的画面早已经不是遥远的梦想,但电脑在计算3D画面时所出现的锯齿效果仍是不可避免的,这种效果在物体边缘最为明显。画面上那些跳牙咧嘴的锯齿每每令我们如蟹在喉,不吐不快。为了消除这些碍眼的锯齿,抗锯齿技术应运而生,并在图形处理技术不断发展的推动下日趋成熟和完善。

1. FSAA抗锯齿技术

最早的抗锯齿技术来自于3DFX,名为FSAA (FuliSceneAnti-aliasing,全屏抗锯齿)。我们都知道,画面的分辨率越高,锯齿感就越不明显,FSAA也正是运用了这个原理。这项技术主要是将需要渲染的图像台辨率提升了一倍,来达到消除锯齿的效果。不过因为过于消耗显卡资源,加之当时受制于显卡的性能,无论是收购了3DFX的NVIDIA还是后来的 AMD,都没有继续沿用FSAA,而是在此基础之上推出了SSAA(SuperSampling Anti-Aliasing, 超级采样抗锯齿)、MSAA ( MultiSampling
Anti-Aliasing,多重采样抗锯齿)、CSAA (CoverageSam piing Anti-Aliasing,覆盖采样抗锯齿)、CFAA (Custom Filter Anti-Aliasing,可编程过滤抗锯齿)技术。FSAA几经衍生仍然逃脱不了被新技术掩盖的事实,在MSAA过了辉煌的时候,我们迎来了新的抗锯齿技术,这就是MLAA技术!

2.MLAA抗锯齿技术

MLAA (morphological antialiasing,形态抗锯齿)是一种针对延迟渲染的后处理抗锯齿技术,最早是由Intel推出,目前NVIDIA、AMD的GPU及新游戏 也都支持此算法。

这种抗锯齿技术和常见的抗据齿技术不同,是在每一帧画面渲染结束后再进行处理,而且只是将图案的轮廓线模糊(注意:不是几何模型的轮廓线模糊),所以对显卡的需求理论上比普通抗锯齿要小,这样可以在多物体渲染时不会对系统造成太大的负担。而且由于MLAA是纯粹的后期处理,因此兼容性相当出色,可以被使用在各种渲染万法中和任何真他抗锯齿模式叠加,比如MLAA+ MSAA的处理等。

3.SRAA抗锯齿技术

SRAA的英文是Subpixel Reconstruction Antialiasing for Deferred Shading,中文意思为子像素重构抗锯齿技术。与MLAA一样,SRAA也是后处理渲染,但SRAA在抗锯齿的选择上与 MLAA有所不同。相对MLAA,SRAA技术进行了重要改进:对着色点的采样使用接近屏幕分辨率的级别,对于几何体的采样则提高精度,然后使用重构过滤器来提供一个近似估计的超分辨率图像,这个超分辨率图像被过滤处理后,成为与原始屏幕分辨率相罔的图像,从而避免了特定种类的过度模糊的问题。由于几何样本相较全着色计算而言所耗资源要小许多,所以SRAA能够用少得多的着色操作,
来实现逼近SSAA的画面质量,可以在保持算法性能的条件下生成与16xSSAA相媲美的画面。

4.SMAA抗锯齿技术

SMAA技术的全称为 Enhanced Subpixel Morphological Antialiasing,增强型子像素形态学反锯齿,与FXAA一样同为后期处理抗锯齿技术,可以提供基于过滤算法的通用图像抗锯齿解决万案。

SMAA技术来源于MLAA,墓本处理流程建立在Jimenez优化改造后的MLAA算法之上。SMAA改进的边缘、模式检SMAA画质、性能对比测,可以对MLAA无法实现的抗锯齿处理部分进行抗锯齿处理,因此效果更为优秀—SMAAS2x模式带来的抗锯齿画质,已经和SSAA 16x不相上下,而速度则和之前抗锯齿速度最快的MLAA相当。

当然,SMAA也并非完全没再缺点。由于SMAA锯齿检测特征数量比MLAA多16倍,因此为了降低性能损耗,SMAA自然要对对比度上的纹理进行降级采样和双线性过滤来取代三线性乃至各向异性过滤,这导致SMAA处理地部分场景时阴影和纹理会出现模糊不清的情况,清晰度不如MLAA和SSAA 16x。当然,瑕不掩瑜,能同时拥有SSAA 16x抗锯齿效果和MLAA的抗锯齿速度,SMAA牺牲这点画质所造成的问题并不算大。

可以说,随着玩家要求不断提高,抗锯齿技术也在快速发展中。虽然新一代抗锯齿技术所实现的效果与完美画质还有一定的差距,但我们相信随着开发人员的努力,终有一天游戏将是一个完全没有锯齿的虚拟世界!

本文由我的电脑http://www.wwwics.com整理,欢迎免费下载

时间: 2024-10-06 03:59:39

抗锯齿技术简介的相关文章

【转载】浅谈抗锯齿技术-老文章(供参考)

原文:http://vga.zol.com.cn/2002/1007/48701.shtml 一代又一代的图形芯片和显卡不断的推出,PC图形子系统的图形处理能力也随之大幅度的提高,这使得我们有可能在计算机上看到更精美的实时生成的图像.无论图形芯片如何改进,在图形输出技术没有革命性变化的今天,我们看到的最终图像依然是由上百万个显示屏上的像素组成的.正是因为像素的存在,使得图像总是存在一个近乎于无法完全克服的缺点:锯齿. 在现实世界中相邻的两个物体边缘一般是光滑的,但是在电脑上生成的图像中相邻的物体

OpenGL中的抗锯齿技术

计算机通过离散(不连续)的像素来绘制图形,想象一下,真实世界中,我们画直线,是比连续画的,还是一个点一个点画的?计算机就是一个点一个点画的(很小的矩形).这样就会导致绘制的图形走样(锯齿),消除锯齿的技术就叫反走样(抗锯齿) 可以看这篇:http://blog.csdn.net/mikewolf2009/archive/2009/08/18/4460421.aspx 点示例 当点很大时,显示如下 而我们实际想看到的是一个圆点,而不是矩形 启用抗锯齿后的效果 有点圆了 代码 glPointSize

MLAA:高效地将抗锯齿处理从 GPU 迁移至 CPU

下载文章和源代码 英文版下载 MLAA:高效地将抗锯齿处理从 GPU 迁移至 CPU (PDF 1.2MB) 访问 MLAA 示例页可下载源代码. 简介 高效的抗锯齿技术是进行高品质.实时渲染的重要工具.MSAA(多点采样抗锯齿处理)是目前使用的标准技术,但有一些严重的缺点: 与延迟照明不兼容,后者在实时渲染中使用得越来越多: 高内存和处理开销,这使其在一些流行平台(如索尼 Playstation* PS3*)上的使用受限 [Perthuis 2010].这种开销还直接与渲染场景的复杂性关联:

OpenGL核心技术之抗锯齿

笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,国家专利发明人;已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D实战核心技术详解>电子工业出版社等. CSDN视频网址:http://edu.csdn.net/lecturer/144 抗锯齿问题在游戏中一直存在的,尤其是体现在3D模型上的材质或者游戏UI界面上,由于现在引擎都非常完善,并且引擎都提供了抗锯齿功能,我们通过引擎提供的参数界面设置一下就可以消除.但是很

GPU抗锯齿

抗锯齿(Anti-aliasing):标准翻译为"抗图像折叠失真".由于在3D图像中,受分辨的制约,物体边缘总会或多或少的呈现三角形的锯齿,而抗锯齿就是指对图像边缘进行柔化处理,使图像边缘看起来更平滑,更接近实物的物体.它是提高画质以使之柔和的一种方法.如今最新的全屏抗锯齿(FullSceneAnti-Aliasing)可以有效的消除多边形结合处(特别是较小的多边形间组合中)的错位现象,降低了图像的失真度.全景抗锯齿在进行处理时,须对图像附近的像素进行2-4次采样,以达到不同级别的抗锯

回击MLAA:NVIDIA FXAA抗锯齿性能实测、画质对比

PC游戏玩家肯定会对各式各样的AA抗锯齿技术非常熟悉,而今天本文的主角就是NVIDIA今年才推出的新型抗锯齿技术"FXAA". FXAA在某种程度上有些类似于AMD之前宣传的MLAA(形态抗锯齿),但远比后者低调,所以很多玩家可能还从来没听说过,但是如果你玩过<永远的毁灭公爵>或者<F.3.A.R>,应该会有所耳闻.今天我们就来实际测测多款显卡上的FXAA性能和画质表现,并将其与MLAA进行简单对比. 什么是FXAA? FXAA全称为"Fast App

未来抗锯齿,FXAA/TXAA

前言:未来抗锯齿,FXAA/TXAA回顶部 [PConline 应用]在3D图像中,我们不可避免的遇到"锯齿".锯齿是由于受到显示设备分辨率和图像生成原理制约,不可避免的会出现的一种图像失真现象,具体表现为画面中物体的边缘呈现出直角的锯齿状.为了获得更好的视觉体验,让物体边缘看起来更柔和.自然,需要进行消除锯齿(Anti-Aliasing,简称AA)处理. 未来抗锯齿技术的方向:FXAA/TXAA 虽然抗锯齿了,但是模糊了 虽然FSAA全屏抗锯齿技术十分成熟,但是无论怎样发展,是不能够

抗锯齿(后期效果) Antialiasing (PostEffect)

The Antialiasing (PostEffect) offers   a set of algorithms designed to give a smoother appearance to graphics.   When two areas of different colour adjoin in an image, the shape of the   pixels can form a very distinctive "staircase" along the b

游戏中的抗锯齿杂谈

抗锯齿(英语:anti-aliasing,简称AA),也译为边缘柔化.消除混叠.抗图像折叠有损等.它是一种消除显示器输出的画面中图物边缘出现凹凸锯齿的技术,那些凹凸的锯齿通常因为高分辨率的信号以低分辨率表示或无法准确运算出3D图形坐标定位时所导致的图形混叠(aliasing)而产生的,反锯齿技术能有效地解决这些问题.它通常被用在在数字信号处理.数字摄影.电脑绘图与数码音效及电子游戏等方面,柔化被混叠的数字信号. 抗锯齿技术出现的原因如下:由于高分辨率下的来源信号或连续的模拟信号能够存储较多的数据