花瓶还是噱头?DX10游戏最新特效对比
到目前为止,NVIDIA和AMD的新一代DX10显卡已经全面上市,成为市场上的绝对主流,DX10游戏也有五款关注度极高的大作问世,属于DX10的时代终于来临了。
但是,有多少人在用DX10模式玩这些游戏呢?答案让人很遗憾:由于DX10模式的资源消耗非常大,即便8800/2900都只能在中低分辨率下才有流畅的FPS,8600/2600只能是看幻灯片,所以大多数用户都无福体验DX10效果。
既然体验DX10需要付出很大的代价,那么游戏中DX10模式下的画面到底能比DX9强多少呢?很可惜,目前的几款DX10游戏没能带来令人眼前一亮的效果,在多数情况下,DX10只是对一些局部或者特定的场景作了改进,如果不是通过截图特意指出的话,在玩游戏的过程中你可能根本感觉不出来!
正所谓期望越高、失望越大,辛辛苦苦盼来的DX10游戏并不像宣传中的那么完美,确实让人有些无法接受。难道说DX9C游戏的画面已经达到了很高的境界,以至于DX10无法带来革命性的改变?当然不是!无论游戏开发人员还是硬件设计师都给与DX10很高的评价,但任何一项标准的应用和普及都需要一个漫长的过程,DX9经过多个版本的发展、历经4年时间才终成正果,DX10同样需要时间。
目前的第一批DX10游戏只是部分应用到了最新的技术和特效,效能并未非常好的化,以至于对硬件配置要求较高,而且画面改善有限,但从中我们也能够看到开发人员从DX9C向DX10过渡中所做出的努力。接下来我们就通过屈指可数的DX10游戏,来看看DX10究竟带来了什么?未来游戏图像还会有什么样的进步?
● DX10可以让纹理贴图品质大幅提高
在DirectX 10、Shader Mode 4.0中,新增了对纹理阵列(Texture arrays)的支持,在每个纹理阵列中,最多可以保存512张同样大小的纹理。而且每张贴图的分辨率被扩展到了8192×8192。更大的分辨率意味着纹理中更丰富的细节。
另外,在一个Shader中能够同时访问的纹理个数被增加到了128个,也就是说在每次执行同一个Shader时,可以使用一个纹理阵列512个纹理中的128个。所以说,在DirectX 10中,纹理的多样性和细节程度将会有大幅的提升。
● 代表游戏:狂野西部、英雄连
《狂野西部》DX10版是目前对显卡要求最为BT的游戏,其中采用了多项先进的图形技术,最为明显的就是纹理品质大幅改善。
《英雄连》是通过一个补丁升级支持DX10的,新加入的特效极为有限,最主要的改进就是人物环境模型和纹理。
● DX9 vs DX10:纹理品质对比
无论是从山石、树木还是地表方面来看,DX10级别纹理贴图品质的却是焕然一新,细节更丰富、看上去更富立体感,而且更接近真实效果。
很显然,《狂野西部》对于纹理的应用要远超《失落星球》和《英雄连》这几款DX10游戏。
● 解决DX9C无法HDR+AA的后遗症,DX10带来完美HDR+AA效果
光与影一路伴随着3D游戏的发展,DX9C带来了HDR效果(高动态范围渲染),让画面表现力大幅提升。HDR通过采用16位浮点格式的颜色来为纹理、光照等计算提供极大的精度和颜色范围(以前的纹理一般都是采用8位整数型的颜色格式)。
但是DX9C的FP16 HDR渲染效率低、占用显存太多、而且和MSAA有冲突(ATI在X1000当中通过指定特殊缓冲区达到了HDR+AA,但兼容性不佳),为此DX10当中引入了两种全新的HDR格式:R11G11B10(32bit)和R9G9B9共享5位指数(32bit,4通道共128bit),从而大幅提高了HDR渲染效率,并且避免了和MSAA冲突,让HDR在DX10游戏中得到了普及。
● 代表游戏:狂野西部、失落星球、冲突世界
《狂野西部》的画面风格并非是阴暗潮湿那种,户外场景对于HDR的应用也是无处不在,光影效果夺人眼目。
其他几款DX10游戏的整体风格不如《狂野西部》那么艳丽,但在动态光影方面对于HDR的应用也是无处不在的。
最让人遗憾的是,《生化奇兵》这款使用虚幻3引擎的游戏无论DX9还是DX10模式下居然都不支持HDR+AA,而且DX9和DX10的画面差异是五款游戏中最不明显的,因为它还是沿用了老格式的FP16 HDR。
● DX9 vs DX10:HDR效果对比
虽说DX9模式下的HDR效果已经相当不错了,但与DX10模式一对比,DX9立刻黯然失色。DX10的光影效果动态范围更广,得到了广泛应用。当然,HDR的核心就在于动态光影(模拟人眼在光线变化时的瞳孔收缩,从而动态改变光照强度),这个是无法通过截图来体现出来的,只能由玩家在游戏过程中慢慢感受。
● 游戏中为什么需要模糊处理?清晰一点不是更好吗?
首先请大家思考这样一个问题:为什么每秒24帧的速度对于电影来说已经足以获得很流畅的视觉效果,而对于电脑游戏来说却会显得磕磕碰碰呢?
原因很简单,摄像机在工作的时候并非一帧一帧绝对静止地拍摄,它所摄下的每一帧图像已经包含了1/24秒以内的所有视觉信息,包括物体在这1/24秒内的位移。如果在看电影的时候按下暂停键,我们得所到的并不是一幅清晰的静止画面,而是一张模糊的图像,问题就出在这里!
传统的电脑3D图像做不到这一点,游戏里的每一帧就是一幅静止画面,如果你在运动的过程中抓一张图片下来,得到的肯定是一幅清晰的静态图。
所以,动态模糊技术的目的就在于增强快速移动场景的真实感,这一技术并不是在两帧之间插入更多的位移信息,而是将当前帧同前一帧混合在一起所获得的一种效果。
● 基于DX10技术的动态模糊更真实
之前已经有很多DX9游戏采用了动态模糊技术,效果最显著、最夸张的非《优品飞车10》莫属,很多玩家表示不太实适应这种效果,原因就在于打开特效之后画面模糊的太夸张了,时间一长容易头晕——显然,这不是我们想要的动态模糊!
造成这种结果的主要原因就是,在进行模糊处理时,将前台的运动物体和后台的环境混合在一起了,这样不但造成了怪物糊得一团糟,背景品质也下降很严重——所以DX9实现的效果就是画面粗糙、背景朦胧。
而在DX10模式下,有了全新的几何着色技术,这样就可以使用这种Shader资源来处理运动物体的几何坐标变换,然后配合高精度的顶点纹理拾取技术,达到了完美监控整个运动过程的目的。如此一来进行模糊处理的话,就杜绝了不分青红皂白的现象——该模糊的依然模糊,该清晰的照样清晰!
据NVIDIA称,DX10级动态模糊效果的处理精度相当高,搭配普通的4xMSAA或者16xCSAA,就能够达到DX9模式动态模糊搭配64倍超级采样抗锯齿的效果!
● 代表游戏:《失落星球》中的动态模糊对比
失落星球这款游戏中充斥着大量快速移动的小怪物和动作灵敏的大BOSS,动态模糊效果在激烈的战斗中给玩家所带来的视觉体验,并不是一两张截图就能够说明的,这些都需要玩家的切身体验来证明!
● 不得不做出平衡的远景显示
相信大家都知道,宏大的场景内包括了很多物体,这是非常消耗资源的,哪怕是DX8、DX9游戏,如果将远景开到最大的话,就会造成游戏FPS急剧下降。最典型的比如低端用户不敢将《魔兽世界》的远景开到最大,《上古卷轴4》的远景很BT。但是远景显示在游戏中的作用也是很明显的,可以让你更早的发现敌人或者一些特殊物体。
有什么方法既能让远景统统显示出来,又能降低资源消耗呢?传统的方法就是牺牲画面品质:人为制造一些迷雾这是最低级的做法、将远景的阴影和光照关闭这是很常见的做法(反正玩家也不容易注意到)、还有就是自动判定距离将远处的所有特效全面缩水(细心的话可以发现有些游戏以主角为圆心存在一道或者几道明显的“光圈”,光圈内外的渲染效果有天壤之别)。
● DX10如何让远景更加清晰?
为了节约系统资源开销,牺牲远景的画质是再所难免的,但为了提高画面整体质量,对远处的重要物体“特别照顾”一下还是很有必要的,这就是“景深”的含义所在。这就类似于摄像机拍摄视频时,多数情况下只对焦主角,环境全是虚的。
DX10级景深渲染还是依靠几何着色器,将深度帖图中的纹理信息按照距离拆分到缓冲,然后分为几个不同的视角进行渲染,最后合成完整的图像。
这样做的好处是,可以将远处本应该和大环境一起虚化处理的活动物体,进行高精度渲染,或者只是加入一些光影效果,这样就能以很少的代价获得更高质量的画面,毕竟玩家在激烈的战斗中所关注的景物也就那么几个。
● 代表游戏:《失落星球》中的景深效果对比
这些细微的变化在游戏中也是无处不在的,但由于位置并非主视角,再加上游戏过程紧张激烈,因此不特别指出的话,是很难注意到的。
如何渲染出以假乱真的毛发,这是一种看似简单却非常复杂的技术,从DX7到DX8再到DX9,每一代的进步都非常明显,但和真实物体的差距还是挺大的。
在过去,毛皮一般用简单的一两层纹理贴图了事,短发也用静态纹理贴图,长发就只能一根一根暴力渲染了(比如3DMark03第3场景的那个女人),这样造成的结果就是非常勉强。当然实时渲染毛发也不是没有可能,但这种逼真的画面大都出现在技术演示Demo当中,多数游戏都尽可能的避免使用毛发。
NVIDIA DX10 SDK中提供的小猫毛皮渲染
DX10的出现让毛发渲染得到普及,在微软和NVIDIA的DX10 SDK开发包中,就附送了绒毛渲染的典型例子,ATI DX10 Ruby的羽绒服上就有大量逼真的羽毛。而在失落星球这款游戏中,几大主角穿的都是羽绒服,不把毛发渲染做好一点,就无法面对江东父老了……
DX10毛发渲染,还是依靠几何着色器。Geometry Shader可以根据顶点的信息来大批量高效率的处理几何图形。它可以将点、线、三角形等基本的构图元素连接起来,创造出新的多边形,并快速的将这些处理结果传递给其他Shader或显存,并且这个过程无需CPU参与。
Geometry Shader的核心任务是连点成线,因此它非常适合用来处理细小、但是数量又极其庞大的毛发、小草等物体渲染,所以DX10毛发不但可以做到更加逼真,而且渲染效率非比寻常。在实际游戏中,您将可以看到一根一根随风而动的绒毛,这在以往是不敢想象的!
● 游戏中的毛发效果对比
旧版DX10:绒毛很虚,凭空而生不合常理(就是多层静态纹理)
● 普及毛发渲染,所有BOSS都长毛了!
既然DX10级毛发渲染又快又好,那么不妨多多使用,于是除了主角的羽绒服之外,Capcom让游戏中的一些怪兽BOSS在一夜之间全都长毛了,面对毛茸茸的BOSS,或许您会感到心中发毛的……
新版DX10:全身上下都长毛了,但因为加入羽化效果显得不如旧版清晰
当然,如果您的显卡性能不够强,或者是不习惯BOSS身上这种模糊的效果,那么就可以随时关掉。
在以往的游戏中,渲染天空和云层要么是一张简单的纹理贴图,稍微复杂点的使用了多层纹理交叉肿成一大团,让人看上去有一定的立体感。
而《冲突世界》当中的云层则是一块实体,感觉像是用离子做出来的气团,看上去非常自然,半透明而且能够透射光线,这就使得游戏场景渲染得更加逼真、开阔!
而且,容积云彩是动态的,可以在地面投下动态阴影。云彩的形状、厚度和体积都将影响云彩的运动方式和所呈现的色彩。地面战斗产生的烟雾也将融入容积云渲染系统。
● 容积云技术在爆炸中得到完美体现
如果仅仅是用来渲染漂浮的云彩,那未免也太可惜了,在冲突世界中该技术被广泛应用在了爆炸所造成的气团当中。
现在战争处处弥漫着烟雾,任何物体都有可能被击中爆炸,因此对于爆炸效果的渲染可以说是战争类游戏的灵魂。《冲突世界》给我们带来了游戏史上最逼真的爆炸过程:
可以看到烟雾渲染超级真实,感觉处理过程和它的体积云差不多,完全看不到一片片的材质,而是厚实的烟雾,而且不断增大扩散淡化,往外长出一条条分支,就跟真实的烟雾扩散过程完全一样!而且内部的火光能够通过烟雾透射出来,光、影、离子在这爆炸的这一刻得到完美融合!
看完以上所有的截图和对比,相信大家对于DX10应该有了一个全新的认识,DX10的确带来了很多DX9C无法实现的特效,而且开发人员正在进行努力,基于SM4.0与几何着色还会带来更多具有创新意义的图形技术。
但各款游戏对于新技术的应用还是比较有限,这些技术单独拿出来还不足以改变游戏整体画面。“量变”积累足够多了才会引起“质变”,如果将以上所有最新的特效集结起来的话,那么所带来的DX10效果才会有震撼力,相信未来的DX10游戏能够大幅抛离DX9,走向成熟!
目前来看,短期内最值得期待的DX10游戏非《孤岛危机》莫属,该游戏频频放出的截图吊足了玩家的胃口,但屡次跳票也让人郁闷不已。现在《孤岛危机》已经进入内测阶段,一些用户放出了真正的游戏实际截图,一起来看一看:
据称 Crysis Beta2依然不支持DX10,画面无法开到Very High,但整个世界在细节上得到了大幅度的提升,爆炸,烟雾,光线变化,都已经达到了其他游戏无法企及的地步。DX9版本就已经如此出众,那么后续测试版以及DX10正式版本能够达到什么样的境界呢?
DX10模式:3764×2702超高分辨率,点击放大欣赏完美细节
DX10模式:2930×1810超高分辨率,点击放大欣赏完美细节
《Crysis》的确是DX10特效的集大成者,CryENGINE2引擎能够支持DirectX 10、HDR、物理处理等技术,可展现动态日夜光影循环、全交互可破坏式环境、阳光透射与漫射、实时软阴影、软粒子、体积云(容积云)、全局着色、高精度纹理贴图等等!
那么《Crysis》究竟能否达到之前宣传图片的那种完美无暇、以假乱真的地步呢?公开测试版马上就要发布了,让我们拭目以待……<