常见项:Texture Filter:4×AF(各向异性过滤 (Anisotropic Filtering):各向异性过滤是最新型的过滤方法,它需要对映射点周围方形8个或更多的像素进行取样,获得平均值后映射到像素点上。对于许多3D加速卡来说,采用8个以上像素取样的各向异性过滤几乎是不可能的,因为它比三线性过滤需要更多的像素填充率。但是对于3D游戏来说,各向异性过滤则是很重要的一个功能,因为它可以使画面更加逼真,自然处理起来也比三线性过滤会更慢。
HDR:谈论游戏画面时常说的HDR到底是什么呢?HDR,本身是High-Dynamic Range(高动态范围)的缩写,这本来是一个CG概念。 计算机在表示图象的时候是用8bit(256)级或16bit(65536)级来区分图象的亮度的,但这区区几百或几万无法再现真实自然的光照情况。HDR文件是一种特殊图形文件格式,它的每一个像素除了普通的RGB信息,还有该点的实际亮度信息。普通的图形文件每个象素只有0 -255的灰度范围,这实际上是不够的。想象一下太阳的发光强度和一个纯黑的物体之间的灰度范围或者说亮度范围的差别,远远超过了256个级别。因此,一张普通的白天风景图片,看上去白云和太阳可能都呈现是同样的灰度/亮度,都是纯白色,但实际上白云和太阳之间实际的亮度不可能一样,他们之间的亮度差别是巨大的。因此,普通的图形文件格式是很不精确的,远远没有纪录到现实世界的实际状况。所以,现在我们就要介绍一下高动态范围图像(简称HDRI)。
Texture Resolution:这个是贴图分辨率
Quality:可以理解成3D建模数量。
POST-FX:动态模糊,景深,模糊,泥土等特效(其中动态模糊动态模糊,当物体快速运动的时候,周围的物体因为保持静止状态,从视觉上来看就会因为快速的移动而导致模糊。动态模糊在竞速类游戏中较早引入,比如《极品飞车》和《MotoGP》等等,这项技术在DX9时代也就已经有了,不过DX10的应用更加广泛,甚至你快速转身也会将展示出这种效果。
『极品飞车的动态模糊效果』 DX9处理动态模糊的方法比较简单,将前台的运动物体和后台的环境混合在一起了,这样容易造成某些关键物体的同时模糊,背景品质也下降很严重。在DX10模式下,有了全新的几何着色技术,这样就可以使用这种Shader资源来处理运动物体的几何坐标变换,然后配合高精度的顶点纹理拾取技术,达到了完美监控整个运动过程的目的。如此一来进行模糊处理的话,就杜绝了不分青红皂白的现象,该模糊的依然模糊,该清晰的照样清晰。

Resolution:分辨率(别告诉我你这都不会)等同于像素
REFRESH RATE:刷新度,指屏幕每秒刷新的频率
VSYNC:垂直和水平是CRT中两个基本的同步信号,水平同步信号决定了CRT画出一条横越屏幕线的时间,垂直同步信号决定了CRT从屏幕顶部画到底部,再返回原始位置的时间,而恰恰是垂直同步代表着CRT显示器的刷新率水平!
GAMMA:对于CRT显示器,输入电压信号将在屏幕上产生亮度输出,但是显示器的亮度与输入的电压信号不成正比,存在一种失真,如果输入的是黑白图像信号,这种失真将使被显示的图像的中间调偏暗,从而使图像的整体比原始场景偏暗,如果输入的是彩色图像信号,这种失真除了使显示的图像偏暗以外,还会使显示的图像的色调发生偏移。gamma就是这种失真的度量参数。对于CRT显示器,无论什么品牌的,由于其物理原理的一致性,其gamma值几乎是一个常量,为2.5。(注意,gamma=1.0时不存在失真),由于存在gamma失真,输入电压信号所代表的图像,在屏幕上显示时比原始图像暗。如下图所示。
原始图像电压信号

屏幕输出图像(失真)

2 gamma概念的演化
gamma本来是显示器的输出图像对输入信号失真的度量参数。
2.1 gamma概念的第一演化(系统gamma和显示器gamma)
由于存在显示失真,这样的图像不能应用,所以需要校正这种失真。上文讲到,对于显示器来说,gamma值是常量,不可改变,所以校正过程就只能针对输入的图像电压信号了。这种校正就是将正常的图像电压信号向显示器失真的相反方向去调整,既然失真使图像的中间调变暗,那么在图像电压信号输入到显示器之前,先将该电压信号的中间调调亮,然后再输入到显示器,这样就可以抵消显示器的失真了,如图所示。
原始图像电压信号

校正后的图像电压信号

屏幕输出图像(不失真)
由于显示器的gamma值是常量,所以这种校正的幅度也是相对固定的,这种校正幅度的度量参数也叫gamma,这是gamma概念的第一次演化,为了区别这两种不同的概念,此处的gamma又叫做系统gamma(因为对图像电压信号的校正过程发生在电脑系统中),显示器的固有的gamma又叫做显示器
抗锯齿-AA:
一代又一代的图形芯片和显卡不断的推出,PC图形子系统的图形处理能力也随之大幅度的提高,这使得我们有可能在计算机上看到更精美的实时生成的图像。无论图形芯片如何改进,在图形输出技术没有革命性变化的今天,我们看到的最终图像依然是由上百万个显示屏上的像素组成的。正是因为像素的存在,使得图像总是存在一个近乎于无法完全克服的缺点:锯齿。 在现实世界中相邻的两个物体边缘一般是光滑的,但是在电脑上生成的图像中相邻的物体边缘却并非现实中如此完美--即使是在最新的HD4800生成的图像上我们也可以轻易的找到锯齿现象。目前,这已经成为了计算机图形应用需要迫切解决的问题。我们常常提到的全屏抗锯齿(full-scene anti-aliasing,FSAA)就是主要的解决方法之一。
在对于全屏抗锯齿技术进行进一步的介绍之前,我还需要提及Voxel算法--一种主要用于3D场景中地形建模的方法。Voxel其实是VolumePixel的缩写,如果你非要把它翻译成为中文的话叫做“体积像素”或者“立体像素”应该都差不多。相对于普通的像素来说,Voxel包含了更多的数据,这些数据可以帮助系统有效的降低锯齿现象,而且除了处理这些Voxel之外无需做任何额外的计算。曾经一款叫做Outcast的游戏就应用了这种技术,但是Voxel算法对于当时的PentiumII系统来说负担相当的重,而且其计算量使得现在的计算机系统也并不适合运行它,可见这种技术的广泛应用将是在图形芯片进一步的飞跃之后的事情。本文并无意讨论这种技术,因为这种技术所涉及面的广度和深度并不是我所能很快理解和接受的,这里仅仅以此为例告诉大家用于解决锯齿问题的技术并不仅仅是FSAA,还有很多其它的优秀技术。
超级采样(supersampling)
超级采样被普遍应用于ATI RADEON7000/7200/7500、NVIDIA GeForce 256、GeForce2GTS/Pro/Ultra/Ti和GeForce2 MX等图形芯片中,这些图形芯片在处理图像的过程中,每个像素被“分为”几个子像素(subpixel)--这其实就是所谓的采样,然后进行独立的处理并写入缓存。当进行图像输出的过程中,所进行的是这个过程的反过程,所有的像素是根据之前分离出来的子像素来构建的,也就是说之前分离的子像素将会影响最终的输出图像的效果和质量。
 在超级采样的过程中,图形芯片所处理的图像的分辨率比实际需要输出的图像的分辨率大的多。比如,在800x600分辨率下采用了2x2超级采样模式的情况下,图形芯片实际所处理的图像分辨率是1600x1200--也就是说我们实际得到的图像只是图形芯片所处理图像的数据的1/4。(VSA100和Voodoo4/5图形芯片也是应用了超级采样技术,不过同前面所介绍的情况有所区别,我们这里的讨论不包括这几种芯片)。
超级采样所带来的图像质量的提升是有目共睹的,不过负面效应也是显著的。就是图形芯片的处理效率明显的下降,以前面的例子来说,用户所得到的实际效果只是图形芯片处理能力的四分之一。即使图形芯片的处理能力能大幅度的提高,这种技术也并不适合,比较效率太低。为此,多个图形芯片公司都在开发新的抗锯齿技术。比如,nVidia在推出GeForce3(NV20)的同时也给我们带来了Multisampling(多级采样)、HRAA(高分辨率抗锯齿)、Quincunx(5点抗锯齿)。
多级采样(multisampling)
NVIDIAGeForce3/GeForce4/GeForce4MX都采用了多级采样技术,这种技术同之前的GeForce2芯片相比,主要区别在于需要处理的数据数量(subpixels的数量)。多级采样所需要处理的子像素数量明显低于超级采样,主要是在对于像素进行抗锯齿处理之前首先对于像素的位置进行检测,看其是否位于对象的边缘,也就是仅仅处理对象边缘的像素从而大大大降低了所需要处理的数据的量,同时还能保证抗锯齿质量。

如图1所示,这是我们需要生成的图像。如果目前需要处理的像素或者子像素都位于三角形内部,那么这个时候并不需要进行抗锯齿处理,因为对象的颜色是一样的,没有锯齿可言。因此图形芯片只要把这个区域赋予同样的颜色或者材质就可以了。 但是如果需要生成位于三角形边缘的像素,图形芯片则需要考虑抗锯齿的问题了。这个时候如果把相同的颜色或者材质赋予整个像素则会产生明显的锯齿现象,因此需要再详细的计算子像素的位置,看它是否真的位于三角形边缘之外还是之内,然后根据情况更加精确的处理像素,这样我们最后看到的图像的锯齿现象就会明显的减弱。 这就是为什么从GeForce3开始,GPU开始能够提供与超级采样抗锯齿效果相近但是芯片的性能下降幅度却明显减少的原因。Nvidia把这种抗锯齿技术称为HRAA(High Resolution AntiAliasing,高分辨率抗锯齿),这种抗锯齿技术在多级采样的基础上做了进一步的发展,为了让像素的最终效果更加精确,这种抗锯齿技术不仅仅使用一个像素上的采样点或者说子像素的数据,而是把周围临近像素的采样点也做为计算的依据,这种抗锯齿模式就是HRAAQuincunx模式--它的采样数据量仅仅同HRAA 2x模式一样,但是却通过计算5个采样点来确定一个子像素的计算方式来得出最后的结果:   可以看到Quincunx利用了周围像素的5个子像素来计算,当然这5个采样点的权重是不同的,也就是它们对于计算结果的影响力是不同的。NVIDIA GeForce4 Ti和GeForce4 MX继承了NVIDIA GeForce3的抗锯齿模式,不过它采用了一个新名字“Accuview”。 SMOOTHVISION技术
ATI从Radoen 8500开始引入了SMOOTHVISION技术,这种抗锯齿技术最高支持16x抗锯齿--也就是可以对于同一个像素进行16次采样,这样可以得到更加贴近设计的结果,当然对于性能的影响也是明显的。

如上图所示,左边的图所表示的SMOOTHVISION预设的8个采样点的位置,即使是16x采样,也是根据这个图所示的采样点来进行的。如果进行的是2x抗锯齿,图形芯片则会在相邻的8个像素上按照这个规则进行采样,如果是4x抗锯齿模式,图形芯片则会在相邻的4个像素上分别进行4点采样,如上图所示。可以看到,每个像素上的采样点都是不同的,ATi称这样“随机”的采样比使用固定的采样点的超级采样具有更好的图像质量。听上去这种采样方式的确不错,但是它毕竟不是完全随机的采样,而是在16个预设的点中随机的分配给一组像素。比如,2x模式就是分配给8个像素,随之而来的问题是,部分像素会因为被分配给的采样点的位置比较特殊而产生不准确的结果--这个结果可能会同实际需要的结果有很大的偏差。这些缺点也正是超级采样所面临的主要问题,因此SMOOTHVISION只是超级采样的一个小小的修正版本--至少我们(xbitlabs)是这么认为的。 弱点和瓶颈
在下面的文字中我们主要来讨论一下当前显卡中所应用的超级采样和多级采样的主要优点和缺点。下图所表示的是对于同一个对象的不同的位置进行采样的结果:

对于图中蓝白相间的两个倾斜色带(水平和竖直的情况是不会有锯齿的)的不同位置进行采样,得到的结果完全不同,采样的结果不同将会导致最后图像还原的时候出现偏差。上图左1表示采样点在白色带处,那么采样的结果是白色,最后图形芯片就认为这条蓝白相间的色彩的颜色是白色;左2到左5依次显示采样结果的颜色越来越深,这都不能完全反映图像原来的情况。不过,只要有足够的采样点,采样结果还是基本准确的: 
上图中所显示的就是比较理想的进行了抗锯齿处理的效果。如果在实际应用中我们看到的效果都是这样的,那么图像的质量应该已经相当不错了,但是—— 在实际应用中,边缘的倾斜角度是各不相同的,如下图中接近水平(一般的认为接近0°、90°和45°、135°的边缘都存在这个问题)的边缘的应用抗锯齿功能之后效果却不会太理想,

这样我们就会看到如下的结果:  而理想的处理结果应该是下图所示的样子(为了便于读者理解,我们使用图像编辑软件做出了这幅图):
 对于这种情况我们只有通过增加采样点的方法来提高抗锯齿的质量:
 3dfx曾经在其VSA-100芯片中引入了RGSS(Rotated Grid Super-Sampling)来克服这个问题,可惜现在3dfx公司早已仙逝,我们最有希望是在nVidia的产品中看到这些技术的复苏,因为nVidia当时买下了3dfx的所有的技术和专利,应该会根据需要逐步的应用到未来的产品中去的。
NVIDIA GeForce2、GeForce3、GeForce4Ti/MX在2x抗锯齿模式下,对于接近于水平和竖直的倾斜边缘的抗锯齿效果处理较好,但是对于接近于45°和135°的边缘的抗锯齿处理效果则差了一些。SMOOTHVISION 2x Quality和2xPerformance模式下的效果同Nvidia图形芯片的效果类似,也是对于接近于水平和竖直的边缘处理较好,但是对于接近于45°和135°的边缘处理也是差强人意。 如下图所示:
 就目前的抗锯齿技术来说,除了进一步的提高采样数量之外没有更好的方法来解决这个问题。当然这样就会使得显卡的性能有了明显的下降,虽然目前所有的厂商都宣称自己的图形芯片都可以在不损失或者很少损失性能的情况下得到更好的抗锯齿效果。因此在你还没有拥有一款性能强劲的显卡之前,最好适度的使用抗锯齿功能。
PIXEL SHADERS - 像素着色器( 像素着色器也是一组指令,这组指令在顶点中像素被渲染时执行。在每个执行时间,都会有很多像素被渲染。(像素的数目依靠屏幕的分辨率决定)
Trilinear Filtering
三线性过滤
三线性过滤就是用来减轻或消除不同组合等级纹理过渡时出现的组合交叠现象。它必须结合双线性过滤和组合式处理映射一并使用。三线性过滤通过使用双线性过滤从两个最为相近的LOD等级纹理中取样来获得新的像素值,从而使两个不同深度等级的纹理过渡能够更为平滑。也因为如此,三线性过滤必须使用两次的双线性过滤,也就是必须计算2x4=8个像素的值。对于许多3D加速开来说,这会需要它们两个时钟周期的计算时间。
Hareware Physics:也是近期游戏才出现的!!主要是指开启物理卡的性能
PHYSICS QUALITY - 物理精细度(指物理性变化的精细度)如爆炸等效果。现在的nvidia就是打着这个名号
Deep Of Field(景深)
什么是景深?景深是一个摄影常用的词汇,在摄影过程中,当我们让镜头聚焦在某一个物体上时,我们会发现这个物体的前后一段距离内的景物也都相当清晰,这个清晰的范围我们称之为景深。而在景深之外的物体就会模糊。 我们的眼睛也是如此,当我们专注的看着较近的物体时,这个物体后面的东西就会发生模糊,因为我们视觉的焦点放在了较近的物体上;反之亦然,如果我们将焦点放在远景的地方,近处的物体同样会发生模糊。

『景深效果在现实中的情况』 景深效果在现实生活中经常出现,只不过我们有时候并不注意,但是在一些特定时刻,这个效果就非常明显。结合游戏来说,就是当我们举枪瞄准一个敌人的时候,通常我们的注意力和视觉的焦点就完全集中在敌人的身上和瞄准镜,所以周围的物体很容易就发生模糊和虚化的感觉。下面我们就来看看《孤岛危机》DX10效果下对于景深效果的理解,《孤岛危机》的设计理念完全遵循摄像机的拍摄情况,当您枪口对准远处时,游戏会自动判定“焦距”,将中心以外一些无关的场景虚化、近景和远景同时虚化,让画面更为真实。

Glow(光照)
软阴影(Soft Shadow)
一般在游戏中采用的阴影生成方法有两种:Shadow Mapping(阴影映射)和Shadow Volumes(体积阴影)。
阴影体积(Shadow volumes)是一种基于几何形体的技术,需要几何体在一定方向的灯光下的轮廓去产生一个封闭的容积,然后通过光线的投射就可以决定场景的阴影部分。Shadow volumes是像素精确的,不会产生任何的锯齿现象。
在很多场合下,Shadow volumes是高效的,但是其局限性十分明显,其中比较致命的就是仅当阴影被填充到一个平面上的时候才能被渲染。这就意味着投影到球型或其他非自然物体上时,这种方法便会失效,其表现为得不到自阴影。

阴影体积(Shadow volumes)
阴影映射(Shadow mapping)也叫做光照映射(LightMapping)是一种图像空间的技术,没记错的话它出自nVIDIA的GF2时代,它在以光源位置作为视点的情况下渲染整个场景的深度信息,然后再使用这些深度信息去决定场景的哪一部分是处于阴影之中。它有锯齿并且依赖z-缓冲技术。
由于可以在不减少帧率的情况下达到真实感光照和阴影效果,编辑器允许在场景中放置任意数目的静态光源,它会为每个面预计算光流量(light flow)和静态阴影,因此现代商业3D游戏中多数都会使用到Shadow mapping。


BioShock是采用UE3引擎并且将Shadow mapping运用的相当完美的代表作。
法线贴图
法线贴图(Normalmapping)已经用的很滥了,次世代游戏基本都会使用法线贴图。法线贴图可以理解为通过计算高细节度模型得到法线信息,并将其保存在一张高压缩比(3DC/DC5)的法线贴图之中,然后将这张法线贴图贴在低细节模型上代替原型的多边形曲面的光照计算,从而得到一个低多边形、高细节的3D模型。法线贴图的好处不言而喻,可以在保证模型拥有较高细节的同时,大幅度降低场景的多边形数。


原本上亿的多边形数经法线贴图处理后大大降低到百万左右。
位移贴图Parallax mapping
与法线贴图的作用有些类似,位移贴图也是在节省多边形的前提下增强3D表面的立体凹凸感。不过工作方式有所不同,位移贴图对纹理坐标进行位移,因此立体感更强,比较适合用于表现砖墙、弹孔等需要强烈凹凸落差的材质。

使用了位移贴图之后的对比。

在Crysis中位移贴图被大量使用,效果惊艳。
3S: 次表面散射(Sub-Surface Scattering)
ubsurfaceScattering,简称SSS(又称3S),中文翻译为次表面散射。在真实世界中许多物体是有点半透明的,比如皮肤、玉、蜡、大理石、牛奶等。这些半透明的材质受到数个光源的透射,物体本身就会受到材质的厚度影响而显示出不同的透光性,光线在这些透射部分也可以互相混合、干涉。说得简单一些就是:光射进表面,在材质里散射,然后从与射入点不同的地方射出表面。
SSS使照明的整体效果变得柔和,一个区域的光线会渗透到表面的周围区域,而小的表面细节变得看不清了。光线穿入物体越深,就衰减和散射得越严重。我们拿皮肤为例,在照亮区到阴影区的衔接处,散射也往往引起微弱的倾向红色的颜色偏移,这是由于光线照亮表皮并进入皮肤,接着被皮下血管和组织散射和吸收,然后从阴影部分离开。散射效果在皮肤薄的部位更加明显,比如鼻孔和耳朵的周围。如下图所示:
 
下面是一些SSS效果的图片:
 
  
周星驰的最新贺岁电影《长江七号》里面的“七仔”的皮肤就是用了SSS材质效果:


--------------------------我是华丽的分割线--------------------
二。游戏特有项
SHADOWS - 影子(指物体在有源光源下的直接反映)
自然:Cloud
Rain等!!
Number of object(在固定范围里可显示的物体上限)
[ 本帖最后由 JOE3719 于 2008-7-24 15:34 编辑 ] |