古墓丽影7次世代特效

“次世代”(Next Generation)是古墓丽影第七代:《古墓丽影:传说》中一个备受瞩目的特效。次世代特效开启后画面质量获得质的飞跃,但是只有少数高端显卡才能支持次世代,能开启次世代流畅运行游戏的显卡更是凤毛麟角。次世代究竟是一项怎样的技术?

首先我们来看看次世代的细微调节选项。该选项默认是关闭的,但是可以通过对注册表的修改将它开启。通过这个方法也可以让原本不能打开次世代的一些显卡得以强制开启次世代。

强制开启次世代

如果显卡不能完全支持dx9c特效,游戏默认设置中将不允许你开启次世代。但是,如果你愿意,还是可以将它强制打开。我们先来看看原本不支持次世代的 ATI Radeon X600 打开次世代后的效果:

步骤如下:

 
古墓丽影7游戏设置界面
  1. 在 开始 > 运行 中输入“regedit”(不包括引号),进入注册表,找到 HKEY_CURRENT_USER \ Software \ Crystal Dynamics \ Tomb Raider: Legend,在窗口右侧的列表中点击鼠标右键,新建一个“DWORD 值”,命名为“ExtendedDialog”,赋值为“1”,然后退出注册表。
  2. 开始 > 所有程序 > Eidos > Tomb Raider - Legend > Setup,打开《古墓丽影:传说》设置界面,可以看到右下角多了个小按钮。按下这个按钮,打开被我们解开的选项。如右图所示:
  3. 去掉“No Dynamic Textures”的勾选,勾上“Use D3D Reference Device”。
  4. 其他项目不变,点击“OK”。
  5. 此时会弹出警告窗口,点击“OK”回到游戏设置,此时可以发现原本灰色不可选的“Next Generation content”已经呈可选状态,勾选它。这时“Use 3.0 Shader Features”同时自动被选上。可以视自己电脑配置情况决定是否将此项目的勾选去掉。

可以打开次世代的玩家,也可用此方法进行次世代选项的细微调整。

正确设置次世代

开启次世代后帧数严重降低的玩家,可以考虑对其他特效进行一些调整。根据中文站网友 god_paul 的实践,最有效的更改主要是:

  1. 关闭阴影特效,因为这个特效会导致画面整体偏暗(只有高端显卡才能使场景变得亮些,因为中端卡处理能力有限,造成反光度不够)。
  2. 将分辨率调整为 800*600 左右。
  3. 另外,景深特效(depth of field)也是影响性能的关键,打开觉得画面模糊,还是关闭。

选项总览

通过刚才打开的细微调节选项,我们可以看到次世代所使用的相关技术。首先我们来总览一下具体的各个选项。由古墓奇兵新闻网志的SAN总结。

全屏幕设置(Fullscreen Settings)

在最上方有个 Fullscreen 的选项,可惜在试玩版上他是灰色的(不能选择)。预估它是用来设定全屏幕和窗口模式的切换。

  • Display Adapter:这里会写出你的"显示卡型号",你可能需要 Nvidia 6 或 7 系列以上的显示卡,或者是 Ati Radeon X1 的显示卡,才能看到所有的特效。
  • Resolution:屏幕分辨率。愈低的分辨率效能愈好,设定的愈高画质会愈好但效能会愈低。
  • Refresh Rate:屏幕刷新率。这里无关效能,但是开的愈高,对你的眼睛愈好。
  • Contrast:对比值。无关效能,请依显示器的状况,自行调整。
  • Brightness:亮度。无关效能,请依显示器的状况,自行调整。

窗口设定(Windowed Srttings)

很可惜这里也是灰色的,也无法进行设定。

  • Lock Window Resolution to:锁定窗口分辨率大小。请不要设定超过原本桌面的分辨率大小,不然画面会超出屏幕。

绘图设定(Rendering Setup)

  • Texture Filtering:非均质过滤。设定愈高,贴图在较远的地方愈不会发生扭曲模糊现象,建议设定为 4倍 即可。以 Point (单线性) 最低,依序是 Bilinear (双线性)、Trilinear (三线性)、1X Anisotropic (1倍的各向异性) ... 依此类推。设定的愈高效能愈低。
  • Next Generation Contect:次世代效果。在试玩版中无法开启。开启后,画面效果能媲美于 XBOX360 般的效果,但会消耗大量资源。
  • Use 3.0 Shader Features:使用 Shader 3.0 模式。在试玩版中无法开启。开启后,会有更好的视觉效果,但会消耗大量资源。
  • Enable Vsync:垂直同步。照理说不会影响效能,他可以预防因每秒格数过快而产生画面分离的问题。
  • Enable Shadows:启动阴影效果。非不得已的情况下,尽量不要关闭。
  • Enable Anti Aliasing:启动反锯齿,可以消除边缘锯齿。关闭后能增进效能。
  • Enable Fullscreen Effects:启动全屏幕效果。启动后,会有些微淡化模糊的效果,画面也比较光亮鲜艳。
  • Enable Depth of Field:启动景深模糊效果。需先启动 Fullscreen Effects 此选项才能被选取。启动后,愈远的景物会愈模糊。关闭它能大幅增进效能。而且关闭它,你可以看到更远的景物。
  • Enable Reflections:启动反射效果。非不得已的情况下,尽量不要关闭。
  • Enable Water Effects:启动水的效果。启动后水面会有曲折的效果。非不得已的情况下,尽量不要关闭。

进阶设定(DevTech Options)

这里的选项主要是给研发者,作为研究用的。大部分的功能对于玩家都没什么帮助。而且以下的专业术语较多,你可能会看不太懂。加上笔者本身也没学过 D3D,若能有熟析此专业的玩家,欢迎多多提供说明与指导。

  • Disable Hardware Vertexshaders:关闭硬件顶点渲染。表示当你选取它时,会采用软件仿真。也就是说,你根本不需要将关闭,除非你嫌 TRL 执行的太快。
  • Disable Hardware DXTC:关闭硬体贴图压缩技术。当你的显示卡内存只有 256MB 以下时,建议你不要勾选这个选项,虽然它会造成贴图不够精细,但是可以提升效能。而且一般人也看不出压缩后的贴图会有多糟糕。
  • Disable 32bit Textures:关闭32位贴图。照理说选取它,应该会采用 16 bit 贴图(或者更低)来执行游戏,是能提升一定的效能。可惜当我选取他后,进入游戏却是一片黑色。
  • No Dynamic Textures:不使用动态贴图。不明原因,这个选项似乎感受不出有任何的作用。
  • Dont Defer Shader Creation:不延迟渲染建立。预设是不选取。
  • Always Render Z-pass First:永远先使用 Z-pass 绘制。Z-Pass 是一种用来形成阴影的方法,开启它可以增进效能。
  • Create Game FourCC:建立四字符编码。预设是选取。
  • Disable Pure Device:取消纯装置模式。不建议选取这个选项,尤其对于使用低阶显示卡的人来说。关闭可能会降低效能。
  • D3D FPU Preserve:启动 D3D 浮点运算预留。预设是不选取。
  • Use D3D Reference Device:使用 D3D 参考模式。这是研发人员用来测试显示效果用的。对玩家没有任何帮助。预设是不选取。
  • Disable Driver Management:取消驱动程序管理。预设是不选取。
  • Disable Hardware Shadow Maps:取消硬件阴影映像。不建议选取这个选项。使用非模拟方式,能提供较好的效能。
  • Disable Null Render Targets:取消空白目标绘制。预设是不选取。
  • LowRes Depth of Field:低解析景深效果。选取此选项将以低分辨率处理景深效果,能提升景深效果的效能。不过我们怀疑,这部份是有点问题的。实际上在一开始执行游戏时,可以看到的景物竟然没有比死掉后来的远?不管你有没有选取这项,结果都是一样的。

次世代相关技术

 
次世代对比图

Shader Model 3 以及 HDR 是次世代的关键技术。只有支持它们的显卡才能完美运行次世代。这样的显卡包括:

  • nVidia GeForce 7 系列
  • nVidia GeForce 6 系列
  • ATI Radeon X1 系列

Shader Model 3

Shader Model 3.0 和 High-Dynamic Range 技术是微软 DirectX 9.0c 发布后全面支持的一项特效。中文译名为优化渲染引擎3.0,国内不少玩家和媒体则简称其为 SM3.0。

Shader Model 3.0 在很大程度上丰富了的游戏研发时的编程模型,方便游戏开发商更简单的做效果更好的游戏。Shader Model 3.0 被应用到很多环境表面和混合的镜面光源中。和 Shader Model 2.0 相比,Shader Model 3.0 最大的优势似乎就在于拥有置换贴图技术,而其它特效都完全可以在Shader Model 2.0 中实现。即便如此,Shader Model 3.0 比 Shader Model 1.1 和 Shader Model 2.0 有不少优势,许多复杂的光影算法在 Shader Model 1.1 和 Shader Model 2.0 上无法实现。

从几何实例(Geometry Instancing)来讲,Shader Model 3.0 的另一个功能“几何实例”能够带来值得一提的性能提升。通过使用该技术,游戏能够循环使用顶点缓冲中的信息,以创建以前使用过的物体。一个例子是在 RPG(角色扮演)游戏中,当玩家控制一整支军队时,场景中的角色实际上都采用了相同的模型。通过几何实例技术,显卡只需要绘制其中一个角色,并复制出其它的角色,而不需要单独绘制每一个角色,这能够带来性能上的提升。这个功能也不会带来画质上的改变,只会影响性能。使用 geometry instancing 的功能,你可以发送更少的绘图指令就可以批量处理所有的数据。有时可以减少数十甚至上百次的绘图指令,这样就可以更少的使用 CPU,减轻 CPU 的负担,提高你的帧片速率,可以使你的图形处理器更有效率的工作。

High-Dynamic Range

材料和部分图片取自太平洋电脑网

什么是HDR?

谈论游戏画面时常说的HDR到底是什么呢?HDR,本身是High-Dynamic Range(高动态范围)的缩写,这本来是一个CG概念。

计算机在表示图象的时候是用8bit(256)级或16bit(65536)级来区分图象的亮度的,但这区区几百或几万无法再现真实自然的光照情况。

HDR文件是一种特殊图形文件格式,它的每一个像素除了普通的RGB信息,还有该点的实际亮度信息。普通的图形文件每个象素只有0 - 255的灰度范围,这实际上是不够的。想象一下太阳的发光强度和一个纯黑的物体之间的灰度范围或者说亮度范围的差别,远远超过了256个级别。因此,一张普通的白天风景图片,看上去白云和太阳可能都呈现是同样的灰度/亮度,都是纯白色,但实际上白云和太阳之间实际的亮度不可能一样,他们之间的亮度差别是巨大的。因此,普通的图形文件格式是很不精确的,远远没有纪录到现实世界的实际状况。所以,现在我们就要介绍一下高动态范围图像(简称HDRI)。

什么是HDRI?

HDRI是High-Dynamic Range (HDR) image的缩写,就是为了解决这个问题而发明出来的,简单说,HDRI是一种亮度范围非常广的图象,它比其它格式的图像有着更大亮度的数据贮存,而且它记录亮度的方式与传统的图片不同,不是用非线性的方式将亮度信息压缩到8bit或16bit的颜色空间内,而是用直接对应的方式记录亮度信息,它可以说记录了图片环境中的照明信息,因此我们可以使用这种图象来“照亮”场景。有很多HDRI文件是以全景图的形式提供的,我们也可以用它做环境背景来产生反射与折射。这里强调一下HDRI与全景图有本质的区别,全景图指的是包含了360度范围场景的普通图象,可以是JPG格式,BMP格式,TGA格式等等,属于 Low-Dynamic Range Radiance Image,它并不带有光照信息。

什么是HDRI文件?

HDRI文件是一种文件,扩展名是hdr或tif格式,有足够的能力保存光照信息,但不一定是全景图。Dynamic Range(动态范围)是指一个场景的最亮和最暗部分之间的相对比值。一张HDR图片,它记录了远远超出256个级别的实际场景的亮度值,超出的部分在屏幕上是显示不出来的。可以这样想象:在photoshop里打开一张从室内往窗外外拍的图片,窗外的部分处在强烈的阳光下,曝光过度,呈现的是一片白色,没有多少细节。你将毫无办法,调暗只会把变成灰色而已,并不会呈现更多的细节。但如果同一场景是由hdr纪录的话,你减低曝光度,原来纯白的部分将会呈现更多的细节。

什么是HDR特效?

现在将HDR和游戏联系起来。HDR在游戏中特指 HDR特效。HDR特效是与Vertex Shader/ShaderModel/Soft shadows/Parallax Mapping等等并列的图像渲染特效。想要实现HDR特效,首先,游戏开发者要在游戏开发过程中,利用开发工具(就是游戏引擎)将实际场景用HDR记录下来,当然开发技术强的开发组会直接用小开发工具(比如3D MAX的某些特效插件)创造HDRI图像;其次,我们的显卡必须支持显示HDR特效,nVIDIA的显卡必须是GeForce 6系列或更高,ATI显卡至少是Radeon 9550或以上。HDR特效最早是在nVIDIA的显卡实现的,但是ATI的SMARTSHADER技术也包含HDR技术。

HDR特效是什么样子的?

目前将HDR特效表现的比较完美的游戏之一是育碧的《细胞分裂:混沌法则》,大家先请看《细胞分裂3》高低端显卡特效对比。

然后,再让我们看看我们最爱的《古墓丽影:传说》中的开启和关闭HDR特效的对比图吧!

从上面这组图片便可见HDR技术渲染光影效果的惊人能力。左图没有开启HDR,就明显感觉到光影、明暗的表现力不足;而右图中,我们可以清晰地看见劳拉身后的每根柱子的影子。

下面这组图片则显现了HDR特效对于图片细节的表现。左图中劳拉的脸看起来平淡无奇;而右图中我们竟然可以十分清楚地看到她脸上的毛孔和皱纹。

HDR特效如何实现?

实现HDR效果并不复杂,但是如果想正常实现的话,你必须有GeForce 6系列或更高的nVIDIA显卡,至少是Radeon 9550或以上的ATI显卡。另外CPU和内存都要够劲,CPU至少在奔腾4 2.8G以上。必须安装DirectX 9.0c。尽量安装最适合自己显卡的驱动程序,最好要安装最新的显卡驱动,这样方可将HDR效果发挥到极至。

争议

次世代是游戏中一项饱受争议的选项。批评者的主要观点是:

  • 对配置要求非常惊人,只有高端显卡才支持。一般的显卡即使能够开启,帧数也会严重下降,根本无法运行游戏
  • 次世代本身用到多种相关效果,却没有给出更多更灵活的选项,以便玩家能够按照自己配置情况灵活选择,制作方这种行为不可理喻

那么官方为何不在次世代中添加更多的项目,以便玩家根据自己的情况灵活选择呢?看了下面的截图就不难得出答案。

显然,没有哪个游戏厂商会愿意让这样的画面出现在游戏中。次世代只有在完全支持相关效果的显卡上才能表现完美,因此官方禁止了让玩家在次世代上玩 DIY。再者,《古墓丽影:黑暗天使》中繁琐的 DIY 性质的特效设置也是玩家抱怨的对象之一,晶体动力当然不能重蹈覆辙。

特效对比

  • 次世代、阴影、景深
  • 次世代与非次世代