跳转到路径导航栏
跳转到正文内容

《战神3》制作解析 运用尖端技术营造史诗感受

http://www.sina.com.cn  2010年04月07日 15:02  新浪游戏

点击进入《战神3》专区

  “摄影机并不是死板的运作而已。它们经过慎密的安排,提供玩家们电影般的游戏体验。”技术总监Christer Ericson这么解释。“为了不让游戏的电影要素随视角的移动而消散,我们得针对屏幕中发生的动作和事件,从许多角度和位置来调整摄影机的运作。正因为游戏会自动进行视角调整,所以需要演算的物件都间接确认完毕,很少有例外,这对游戏硬体资源的安排有某种程度的功用。”

  “当然,我们其实也可以让玩家在游戏中掌握视角控制权。而我们不这么做的理由就像前面说过的:我们认为控制摄影机的动作,会让精心打造的电影气氛烟消云散,而不是担心玩家突然大转身,会抓到几何的运算错误(笑)。”

  Ericson用移动式摄影车-上面配置机械手臂,可以控制镜头的远近、机身的伸缩和机体的高低-来比喻运镜实作过程。

  “摄影机的所有移动和运作,都是根据运镜设计师仔细设定的参数来做的。但是玩家人物和敌人位置的最后设定部份,则必须实际地根据画面调整。我们必须以实机画面来检测摄影机的位置,观察每个游戏画面的成效,最后才确定这部份的运镜。换句话说,摄影机的运行轨迹会形成不规则的3D容积体,而不是单纯的滑逸轨迹。大致上,摄影机针对游戏过程的位置和导向,都不是光靠参数校正就可以完成的。”

  摄影运镜师和其他部门之间紧密而不可分。当然,读者可能会想:将设定好的运镜丢给其他部门处理不就简单多了?但是这么一来,就得赋予玩家更多的视角控制权,却让玩家更难获得蕴藏于各处的重要电影体验。

 
关卡设计是由简单的网格图开始的,循序而进,最后再由美工所润饰

  “每个关卡都需要视角设定,这个动作和其他各个部门有相互的关系…喔,概念美术部门算是例外。时程和预算的压力接踵而来,这条路走起来可不轻鬆。”Sony Santa Monica的Phil Wilkins说。

  “这些动作对效能的唯一的好处,就是让我们可以将优质的创造力,集中在玩家所见的范围。同时代表我们可以不用构筑镜头后面的空间,或是释放后方不会再看到的位置其资源。不过,我们通常是选择折衷的方式:将这些位置换成低清晰度的版本。”

  视角运镜是战神3里面的关键要素。而玩家无法控制摄影机,也意味着某些场景会让玩家感到棘手(像是跳跃的距离掌控),所以运镜一定要考虑到战场的全貌才行。只要摄影机按照预设轨迹运作的成效良好,就可以产生绝妙的视野和视觉效果。设计小组的匠心,在游戏的第一个场景中发挥得淋漓尽致:奎托斯起身对抗海神波塞冬,摄影机环绕着盖亚-一位媲美希尔斯大厦(高约1400迟)的泰坦巨人。

  这是战神3最常拿来展示其技术效能的影片。它不仅拥有超大规模的动态场景,还有出色的运镜。Sony Santa Monica 试着以自己的方式,达成NaughtyDog的动态物件遍历系统(dynamic object traversal system)的功能-整个场景都在运动,表面的物件活动也可以正确地受其影响。

战神3最具代表性的场景:站在泰坦身上,和海神波塞冬作战
战神3最具代表性的场景:站在泰坦身上,和海神波塞冬作战

  “PS2的硬体无法做到这种超大规模-因为记忆体不够。”Ken Feldman说,“绝大多数的游戏,都将场景设计集中在房间或是走廊等位置,游戏引擎对这种场景比较能得心应手。当然,若只是把超细腻的细节集中在小小的房间里,可以省下许多功夫。但是若是超大规模的场景,则又是另一种不同的挑战-也就是我们所接受的挑战。”

  记忆体的配置无疑是这份挑战的最大难关。材质和几何的安排都要足以满足不同的规模,场景之间的无接缝读取也是一个问题。为了达成这些条件,只要让奎托斯变成一个小黑点就可以省下不少功夫…问题是,那个两万个多边型的模型可不能省略掉,反之还得常驻在记忆体里,老天!

  这个问题的解决方法之一,就是让资料流系统在幕后(像是小场景或是特写的场合)持续地运作。当玩家进行游戏时,战神3完全没有跟玩家勒索时间来读取,也没有强制要求硬碟安装(译注:那些老是让玩家看到Now Loading的设计师真该好好跟他们学习),大多数的Sony第一方游戏都是这样。所有的资料都是趁着幕后的时间,从蓝光系统读入记忆体中。

  最让人惊讶的地方是,战神3最后在巨大容量的蓝光片里面,只有5.3MB的执行档;其馀的未压缩档案和协同处理二元码(SPU binaries, Synergistic Processing Unit)则佔了35GB,欧版则为了支援多国语言而膨胀到40.2GB。

  Tim Moss(Sony Santa Monica的高层)在他的Twitter里面提到,他对这个团队的表现感到相当骄傲,空出许多记忆体容量更是让人相当满意。而在以前PS2版的战神里面,执行档则是只有1.2MB-小到可以放入磁片里面。

  刚刚的盖亚影片,我们在结尾可以看见波塞冬被奎托斯痛击的画面,这也是玩家观点的一个创新:第一人称制。一但玩家成功通过头目的挑战,视角就会转到受害者的身上,以受害者的视野,看着狰狞血腥的奎托斯屠戮手无博鸡之力的自己。这无论是从美术、动机和科技的角度来看,都是一个出色的表现。

  “打从一开始,我就打算把第一人称制的灵感,放在奎托斯最后的终结技里面。”首席战斗设计Adam Puhl说,“当大家从实机上看见这个灵感后,全体立刻无异议地通过我的提案…看见奎托斯攻击的鬼魅姿态、感受到波塞冬的无助、最后硬生生地被扯裂-任谁都会被这个场面给震撼住。”

第一人称杀戮:让玩家体验奎托斯杀死自己的恐怖姿态
第一人称杀戮:让玩家体验奎托斯杀死自己的恐怖姿态

  让战神3拥有电影般的外貌及感受的另一项核心机制,是来自画面缓冲器(framebuffer)的基本设定,以及HDR光源(high-dynamic range,高动态光照贴图)的实作。PS3用于HDR的两种画面缓冲器实作选择,包含LogLUV(又叫作NAO32,曾用于神秘海域2和天堂之剑)以及RGBM(Reduced Gradient Bubble Model,梯度缩减泡沫模型)。这两者交互运用的两个成功案例,就是现在讨论的战神3,以及Naughty Dog的神秘海域2。

  上述两者的基本技术设定可以在别的地方找到(战神3有自己的RGBM)。最后所形成的画面效果独一无二、风格满点且带有电影风格,简直像是利用高精度颜色范围的特大号调色板所绘制的。

  其中,RGBM的优先度高于LogLUV,代表处理过程中有重要的保留,同时也会损失些许的精确。不过,人眼未必能看出损失的程度。而且我们还确定,利用HDMI传到屏幕上的最后影像,绝对不会让玩家察觉出其差别。既然如此,何不把省下的资源用在其他地方呢?

 
 
经常和bloom效果弄混的HDR(high-dynamicrange高动态光照贴图)
可以允许大范围的打光,并保有其细节

  在后处理效果(post-processing effects)方面,游戏有这么真实的视觉感受,都得归功于印象深刻的动态模糊(motion blur)应用。简单地说,这里的技术应用和神秘海域2,以及杀戮地带2相当类似-大场景会让画面张数在每秒三十~六十张的范围内浮动,动态模糊可以缓和这种浮动的程度。

  大多数动态模糊效果使用的游戏,都仅仅用于运镜的基本而已。也就是说仅针对全景进行动态模糊,使其接近真实的视觉效果。根据Ken Feldman所述,战神3的动态模糊,不仅用于运镜方面,还针对个别的物件进行处理。

  动态模糊系统的基础应用,就是让我们感觉游戏画面更加接近电影院的屏幕。电影一般是每秒二十四张画面,但是人眼感觉却比其帐面上更加流畅。这是因为在摄影时,摄影机的快门打开时间大约是0.04秒,而在这短暂时间内运动的物体被摄入底片后,就会呈现动态的模糊感。同样地,这个原理被应用于战神3,让它看起来更像电影、更加真实。

 
 
经由动态模糊的衬托,让战神3拥有电影般的风貌

  另一项让战神3有电影感的关键要素,就是他们所开发的全新反锯齿技术。游戏使用反锯齿技术可以,让外观更佳满意。刚开始,游戏采用RSX晶片来实作传统的2x multisampling anti-aliasing effect(2倍多重取样反锯齿),战神3的E3试玩版就可以看出这个技术的效果,但是这也会让戏物件欠缺高对比的边缘。而在正式版里面,Sony Santa Monica团队想出了办法,来超越E3试玩版的成果。

  根据技术总监Tim Moss所述,战神3和Sony于英国的科技团队合作,实作一种用在游戏里的反锯齿技术:MLAA(morphological anti-aliasing ,形态反锯齿)。Moss的同僚Christer Ericson于数个月前也曾替我们介绍这个技术,并揭露他们是在进行什么样的庞大研究,来解决反锯齿的问题。

  目前这个技术的实作细节还不清楚,但是我们至少知道使用此技术的战神3,其成果相当惊人:主要边缘的锯齿几乎消弥殆尽,子像素的闪烁程度在经过我们的比较下,也大幅地降低。

  PS3开发人员所习惯采用的反锯齿技术,通常是利用Cell CPU的平行图形晶片RSX来平行处理。Richard Lemarchand(Naughty Dog的开发大老)于他自己的神秘海域2检讨会中指出,RSX处理反锯齿的比例通常要高于Cell处理的比例,而利用两者交互使用来应付后处理效果,在某些地方的效果相当不错。

  如果要让CPU更有弹性地处理各种状况,就代表得增加额外的运算量,来换取更棒的成果。如果让复数的SPU来并行运作,就可以减低CPU延迟所带来的毛病。

  在战神3里面,所有输出画面的处理时间大约为16毫秒(10-3秒)到30毫秒,顶多相差1、2毫秒。光看反锯齿的部份,原本的2x multisampling AA要花上一堆时间,大约是5毫秒。而现在使用更棒的MLAA,只要让CPU花上20毫秒就行了…喔?时间怎么变久?别担心,这是单纯使用CPU的状况。如果搭配五个SPU的平行运算,可以让整体延迟仅仅4毫秒。结论就是:效果变好了,效率反而变高了,省下的时间资源刚好可以挪到其他地方使用。

 
(举例来说,漆黑的长条物件边缘会冒出杂色的像素)
 
MLAA的表现极为惊人,但是却会产生物件边缘冒出突兀像素的劣化现象
仔细观察物件的边缘,会发现有少许的杂色像素,这是MLAA的小缺点
仔细观察物件的边缘,会发现有少许的杂色像素,这是MLAA的小缺点

  Sony Santa Monica将角色和环境弄得如此优异,都是因为结合了强大的运算技术,赋予游戏所应有的气氛和姿态。举例来说,动态光源的活用就是游戏引擎发威的地方之一。

  “动态光源是我们游戏引擎的一项重大特色,我们可以让每个游戏物件打上将近二十个动态光源。”KenFeldman解释道。“光源可大可小,这无所谓。在最后阶段,我们相信可以使每个游戏物件达到五十个动态光源。我们的首席设计师Vassily Filippov在游戏开发之前,就设计出一套这么了不起的打光系统了。我们可以在Maya上面打光,再让它们在PS3即时运算,就像是可以把光线涂上去一样。打光的过程是很有趣的艺术过程。”

 
 
战神3的游戏引擎对于动态光源处理相当出色,可以达到每个物件五十种光源
赫利奥斯之首就是玩家使用动态光源的最佳范例

  有光就有影。大多数游戏的投影技术都很基本,如果要做到即时阴影,其运算成本相当高昂。所以我们的作法是:先打出丑丑的阴影,然后在你看到阴影前立刻将它修饰完毕。

  战神3在阴影的处理上相当单纯,因为他们知道:玩家不会花太多心思在阴影上面。玩家看画面的时候,会把某些元素像是发炎的伤口一样自动掠过,这些元素之一就包含阴影。

  处理的结果相当好到不可思议。Sony Santa Monica的设计师Ben Diamand不但从初始阶段就来协助我们建构PS3的着色器(renderer),还花了三年的功夫研发出一套延迟投影系统(deferred shadowing system)来用在战神3上面。这个系统的运作相当完善,可以趁阴影映入眼帘之前,省略投影物件的精细外观,并动态产生混合阴影,也是让整个图像品质如此优越的原因之一。

  这个系统的唯一遗憾就是:游戏过程中,它的实用性和冲击性都被限制住。看看前面的动态光源,在各方面都有极大的实用性(某人的脑袋);而阴影在游戏过程里的实用性,大概仅限于提示玩家闪躲愤怒泰坦的拳头而已。

  Sony Santa Monica的美术和技术成就无疑相当惊人,但是这个团队真正让人印象深刻之处,就是持续地对游戏程序码的修饰和最佳化。他们的热情和成就,无疑和游戏的优秀并驾齐驱。根据技术总监Tom Moss的说法,完工前的一星期,游戏的第一份版本拷贝送出去压片后,设计师Cedric Perthuis 仍然在最佳化程序码,让最后的游戏整体效能提升了将近百分之八,真是一个了不起的成就。

  战神3是一款优秀团队所开发出的特别游戏。不仅因为它有超过四百万美元的开发预算来支持,还集结了世界上优秀设计师们的共同努力,还让Sony的优秀技术团队参与其开发,才有现在这么抢眼的成就。就像神秘海域2和杀戮地带2,战神3还让它的游戏平台拥有当代最精锐的游戏技术。而且,我们还有充分的理由,相信这个游戏系统还有相当长的生命期。战神3只不过是Sony Santa Monica的第一款PS3游戏,Stig Asmussen(战神系列的催生者,SonySanta Monica的高层)还提示我们,可以继续期待战神3的游戏引擎,于未来发扬光大。

  这篇报道节录“Making Of' material found on the God of War III ”长达150分钟的纪录片内容,有经过转载同意。游戏通关解开隐藏要素后,就可以欣赏制作群欲分享给玩家的灵感,以及充满传奇的努力经过。

上一页 1 2 下一页

编辑:lolo

转发此文至微博 已有_COUNT_条评论 我要评论

网友评论 更多评论

登录名: 密码:
Powered By Google

相关链接

更多关于 战神3 的新闻

新浪简介About Sina广告服务联系我们招聘信息网站律师SINA English会员注册产品答疑┊Copyright © 1996-2010 SINA Corporation, All Rights Reserved

新浪公司 版权所有