中文第一计算机图形学社区OpenGPU 版权所有2007-2018

 找回密码
 注册

扫一扫,访问微社区

搜索
查看: 24087|回复: 25

【翻译】为了3D游戏粉丝的[(超级)街头霸王4]图形讲座(前

[复制链接]
发表于 2012-1-16 20:08:44 | 显示全部楼层 |阅读模式
本帖最后由 trace 于 2012-1-16 21:51 编辑

为了3D游戏粉丝的[(超级)街头霸王4]图形讲座(前篇)
终于迫近了以3D图形再现美化版的[街霸2]记忆的秘密方法

原文 西川善司
翻译 Trace
校对注释 千里马肝

原文地址: http://game.watch.impress.co.jp/ ... 0111130_494044.html

会场:Dimps公司

图片:CEDECAWARD 2011颁奖仪式的情况。照片中是绫野智章先生和龟井敏征先生。

     在国内最高级别的游戏开发会议CEDEC中,虽然每年都要召开表彰各领域游戏人才和优秀游戏的CEDEC AWARD,但在今年的CEDEC AWARD 2011中,[街头霸王4]力压近年来各有名的大作,获得了[视觉艺术部门]奖。(以下简称[街霸4])。

     [街霸4]在街机上开始运作是在2008年7月,所以从初次发布算来是三年后才得奖。但是,直到2011年的现在,[街霸4]系列,还时常成为格斗游戏粉丝的中心话题,所以得到这个奖是大家都可以理解的。

     只限于[街霸4]系列,如果要翻阅历史的话,在2009年作为街机版[街霸4]的移植作品,面向家用机(PS3XBox360,以下同样)发布了,在2010年春时,作为扩张配置的特别版,发布了家用机专用的[超级街头霸王4](以下简称[超级4]),进一步受到粉丝的热切希望的是在2010年冬,[超级街头霸王4街机版](以下简称[超级 4AE])登场了。

     接下来在今年,2011年春,[超级4]对应任天堂3DS完整(Full Specification)移植的[超级街头霸王43D版]登场了,在2011年夏时,[超级4EA]也向家用机移植了。2011年末,[超级4AE]的平衡调整版[超级4AE Ver.2012]预定向家用机系列发布,同时,也预定要在街机平台上运作。

    很多的格斗游戏都比较短命的逐渐消失,能有三年以上的寿命就算是很厉害了,经常能在一线维持那么高的人气的[街霸4]系列,更可以说是奇迹的作品。在格斗游戏史中当然会被记录下,也应该会在全部游戏粉丝的记忆中成为印象深刻的名号。
   
    正是因为这些,才决定了这次收录了[超级街头霸王4]。到现在为止关于[街霸4]技术性的采访都是禁止(NG)的,但这次的[CEDEC AWARD 2011颁奖纪念]是个机会,可喜的得到了专门采访。还有,本稿的标题中加上了[超级]这个词,因为涉及的话题从原创的[街霸4]到[超霸4],还有[超级4AE],先请谅解。


著者(西川善司)近照
虽然从2009年开始尝试过好几次采访[街头霸王4]系列,但每次都没能实现。但是,这次终于实现了采访真是太高兴了。顺便说一句,笔者是从[街霸2]时代开始的玩家,从那时就被打斗的狂热角色所吸引,一直一心一意的玩着。在Ver.2011版中,加入了怎样的调整,现在的心情是七上八下欢呼雀跃。再被逼到边角里猛烈的挨打就求饶了!(笑)。

 楼主| 发表于 2012-1-16 20:09:27 | 显示全部楼层
本帖最后由 trace 于 2012-1-16 21:23 编辑

进展艰难的[被美化的街霸2]的世界观的再现

    如果可以请让我说下琐事,Dimps的社长西山隆志是初代[街头霸王]开发者的其中一人,系列的主人公隆(Ryu) 就是根据他的名取了一个同样的名字。Dimps被委托开发[街霸4]系列,也有着[街头霸王]系列复活项目的意思,所以从开始构思[街霸4]的概念,就能感受到某中因果的命运。
  【千里马肝注:没想到不是本社原作,而是外包的,国内的外包啥时候能到这个水准呢?而且还是从原公司出去的人成立的新公司,啥时候包给咱们做个8代?汗如雨下……】
Dimps在设立开发[街霸4]系列项目的同时,还要做让公司的程序库适应PS3,XBox360等(本世代主机搭载了DirectX9世代图形硬件的游戏平台)的工作。这期间构筑起的开发支援程序库,在Dimps公司内部被称为[XG].另外,XG中“X”,也放入了跨平台的意思。

    [XG]不是游戏引擎,而是程序库的总称,还有版本的变化,[街霸4]是以XG1.0版为基础,[超霸4]是以XG2.0版为基础。

    [街霸4]系列的开发理念,是[街头霸王2](以下简称[街霸2])面向21世纪的复活,同时是[玩家在脑内完美化的[街霸2]的回忆具现化]。这个[街头霸王4]系列的开发历年的秘史,[街霸4]系列导演小野义德先生(卡普空 CS开发部副主管),在GDC2009上详细的发表了。关于这段演讲,在笔者的GDC2009报告中,[街头霸王4]要承担回归原点的使命。链接在http://game.watch.impress.co.jp/docs/news/20090329_80128.html 有兴趣的人一定要看看啊。

亀井敏征氏(Dimps 开发本部软件技术部 软件技术课 开发本部 技术设计小组主管):
当时,我们也刚处在本世代主机的正式开发初期,对于倡导出的那种主题,关于在技术层面如何实现才好进行了反复的尝试。
    [街霸4]的开发从2006年5月左右开始,经过了2年的开发期终于迎来了街机版的发布。面向家用机的开发计划从街机版的开发最后同步开始,大概的开发期是8个月。

    在开发计划的最开始时,Dimps一方的开发组里,把[街霸4]考虑成[街头霸王3](以下简称[街霸3])的延续性作品,试着作出尽量保留[街霸3]要素的画面风格的3D图形(下图)。还有,并不把这些在实际主机上安装,而是在DCC工具上制作出的实际主机风格的概念动画。Cel Shader的绘画风格,进行水墨画风格的调味,在已经指导[街霸4]完成形态的我们看来,也是有着相当的可看价值的东西。

[街霸4]的原型


这是Dimps一方提出方案的最初期设计稿的特写




各种各样的概念动画。从上开始是粉笔(chalk)风格shader,水墨画风格+Toon Shader,水墨画+水彩。

龟井先生:这些是一次都没有进行双方会议的阶段,虽然是符合我们的提案进行制作的东西,但在第一次讨论会时就被说成[不是这样](笑)。小野制片人说过,首先[一旦基础是[街霸2],那么就希望能做出可以闻到[街霸2]的[气味],以及[互相殴打的格斗疼痛感],[相互格斗的实况感]的再现作为目标。从这开始就是“苦难的道路”了(笑)。也只能挑战下去。
   
接受了要那样做的指示后,Dimps一方进行了再设计后的就是这些了。看起来骨骼变的相当粗,手脚大的变形。和初期稿比起来,给人的感觉是稍微经过岁月,积累人生经验的那种印象。不管如何,可以感受到大体接近完成形态的印象。

[街霸4]的原形之2


上图经过了和卡普空方面的会谈,Dimps一方修改过的设计稿。
下图是这个shading模型在实际的场景中登场的图像。

龟井先生:这个也就[还好]吧(笑)。首先,被指出的是[设计(形状)方面中要有适度的变形,但出现阴影的地方太真实就不够有趣了]。还有,也指出了[信息量太少]的问题。真实系的Shading中,作为阴影的信息量会更多,但那些要作为“没有经过整理的信息”来看待。

    如果要用一句话来说, 3D模型的形状明明是被变形了,但因为shading是偏向真实的,设计(形状)和绘制,被指出有不一致的感觉。

龟井先生:因此我们从街霸系列开始,对卡普空过去作品的像素画进行研究。在那个过程中专心致力于取得在像素画的肌肉加上阴影的方法,或是省略肌肉的方式,附加影子方式等,在将这些放入shader中就解决了。一连串的艺术指导上,得到了卡普空的设计师池野大悟先生的协助。

    这样跨过了“苦难的道路”后,[街霸4]系列的视觉上的整体方向就统一了。可以看出肌肉的筋虽然是被强调的表现,但在阴影的明亮部分中,要把那样的信息去掉,一句话来说不是Cel Sahding或扩散反射模型,而是独特的定制各向异性Shading。

龟井先生:就是这个时候,被小野制作人说[看到突破口了啊](笑)。

[街霸4]的原形之3


上图是[街霸4]的视觉设计在几乎确定的阶段合成视觉效果图。是在Autodesk Softimage上制作的。
下图是最初期的原形版。

[街霸4]原形录像之1 注,原图比较多,这里只取有代表的几张



[街霸4]原形录像之2



[街霸4]原形之3

完成的角色图像截图

【千里马肝注:正规的游戏制作流程,是先由美术设定出画面风格,反复几次后作出确定。这其中不单是纯2D的绘制,根据不同项目也会需要反复的模型和贴图上的修改。另外,对于比例的制定,不论是场景的物体、角色身材的规格进行统一规划。】
 楼主| 发表于 2012-1-16 20:10:03 | 显示全部楼层
本帖最后由 trace 于 2012-1-16 21:22 编辑

[街霸4]系列的Shader架构


竹岁正史先生(Dimps开发总部,软件技术部,软件技术课,研发小组助理主管 系统设计主工程师):这之后,基于这个视觉理念就要进行落实在实际主机上的原型版制作了。那时也许可以说成是被shader玩弄的时期吧(笑)。不得不使用法线贴图,如果那样的话应该也就能加上Specular吧。把视觉概念怎样落实到实际主机上,进行了大量的反复尝试。

    艺术家使用了DCC工具XSI(Softimage),使用了在GUI上进行shader设计或试验的rendertree机能,相当于收入了可以载入实际主机的着色器设计。游戏中,只作出一张画面并不是目的,为了在实际主机上系统的启动shader,尽量在全部的角色上使用统一的shader,希望表现的幅度用上面给出的参数来实现。无论如何都要启动特殊shader的情况,即使没办法也要尽量把全部角色(根据情况在各场景中登场的全部对象),用共通shder来表现。为了那样,要把用在[街霸4]系列的角色表现上的shader,分解要素后再设计。


这个是完成版


反复尝试的最后,[街霸4]系列基本上确定了视觉效果的目标。这个是在DCC工具上完成的视觉效果。接近现在的[街霸4]系列的视觉效果。

各种各样的反复尝试后的结果
1。基本颜色
2。扩散反射(diffuse)
3。镜面反射(specular)
4。Rimlight
5。SelfShadow
6。AmbientOcclusion
7。Contrast强调
8。反射表现

被分解成这八种要素。这些大体上全部角色的Shading上都要利用到。


竹岁先生:因为自己要把这些要素加载到实际主机上进行设计。这时候,要按性能做最优化的或根据情况做出同等效果的fake手法。

这里稍微对上面各要素做个补充说明,为了把各要素实现,竹岁先生来介绍实践过的shader技术。

    1.关于基本颜色,是在扩散反射的结果和颜色贴图(albedo)的基础上,计算出来各自的类似CelShader效果。和简单的二值浓淡变化的Cel Shader不同,把扩散反射的计算结果对纹理做变调,带来的特征是在颜色的浓淡上加入侵略性(aggressive)的效果。这个[用绘笔加上阴影一样的笔触]实现的着色器,在开发组内部被称为[Brush shader]。

【千里马肝注:即与传统的非黑即白的二阶光照处理的cel shader不同,这个纯粹是美术面的主观上的画面感受了。】

【基本颜色】




把[街霸4]系列中用到的brush shader做成图表化的实例(上图)
Brush shader的伪代码


只贴纹理贴图的结果(上图)应用brush shader的结果(下图)。

    2.使用扩散反射的要素,在[街霸4]系列中,对于主要的角色,应用了类似skin shader。即使如此,也没有把Subsurface scatteringsimulation进行实施,而是变成算术性的模拟手法。作为算法来说,[对于扩散反射的“阴影”区域可以把红色稍微增加表现]是简易型的手法。

【漫反射(diffuse)】


类似的skinshader的伪代码(上图)。扩散反射的结果(下图)


类似skin shader的结果(上图)。把双方加算后的结果(下图)

    3.边缘光(RimLight),是在在逆光时高光溢出的效果。这个在视线和光源有着相对接近的关系时,在轮廓附近把光源颜色混入来实现。

    4.自阴影Self shadow虽然是由于自我遮蔽产生出的影子,但关于这些的详细说明在后面影生成解说部分说明。

    5.环境闭塞(AmbientOcclusion)是也被称为自我遮蔽项的要素,那个位置要把从其他的位置被如何遮蔽提前给出计算,是个静态型的Self Shadow。在[街霸4]系列中,把提前计算好的自我遮蔽项用顶点单位作为拥有的形式。

【千里马肝注:根据后面的描述,应该可以确定ao是放在vertex colour中的。】

    6.对比度强调化,主要从外围部分(从那个试点看是轮廓的区域)中,带来强调色彩的效果。很多的情况会产生发黑那样的结果。这个,因为扩散反射的阴影结果,在符合艺术家设定好条件(从视点和各面上的法线位置关系来判定)的地方,将特定颜色作为高光颜色附加上去来实现。

【AO自遮蔽】

提前计算好的顶点单位的AO(上图)
轮廓线强调前(中图)
轮廓线强调后(下图)

    7.反射的表现,主要来实现从环境光而来的影响。所谓环境光,就是全局照明效果的简略型的一个。在[街霸4]系列中,关于环境光使用了半球照明(Hemi-Sphere Lighting: HSL)的独立扩张系统[MulitplexHemi-Sphere Lighting(MHSL)。

    由天球光和地球光两个方向组成的HSL,在[metal gear solid 4]中也被采用了,在本连载中也有介绍(译注:这个国内已有人翻译,请自行搜索),但[街霸4]的MHSL,在天球光和地球光之外又增加了中空光,从三个方向给出照明。[街霸4]系列中角色因为经常在纵方向上被大幅度刻画,只用HSL的两个方向环境光,丰富度不足。

    例如,在上面是天空,下面是地面的场景,经常是上半身明亮下半身变的昏暗(用HSL不是用高度,而是用面向的方向决定影响)。[街霸4]系列中由于采用了MHSL是三个方向的环境光,中空光因为稍微具有支配性,所以变的难以出现那样单调的阴影。还有,这个MHSL的参数,是每个场景各有一个固定配置,并不是设定在场景的各地点上。

【千里马肝注:太复杂了,没有系统的光照理论知识,以及丰富的项目经验,再加上强大的程序和专业的美术,是无法达到这种程度的,谁能预见这一堆东西叠加起来最后会是个什么样子?毕竟这不单单是个demo,而是一个完整的商业软件。国内应该还只停留在lightmap的年代,light的运用远做不到dynamic、realtime或是多光源支持。感叹的是:国人没有真正完整的单机制作年代,跟直接踏入社会主义一样,我们失去了进化链中关键的一环,至今仍然办的是大寨,口上喊的却是赶英超美。】


【Shading】

最原始的型的单一环境光



半球Shading的两方向环境光。直到现在也经常被采用。


[街霸4]系列中采用的MHSL(三方向的环境光)




扩张到三方向的半球shading的概念(上图),MHSL的伪码(中图),MHSL的伪码(最优化版)(下图)

 楼主| 发表于 2012-1-16 20:10:49 | 显示全部楼层
本帖最后由 trace 于 2012-1-16 21:21 编辑

竹岁先生:进入蓄力动作时发动的水墨画特效,这个发射部分没有根据MHSL而来的环境光,只有黑色的[墨色]表现。同样在轮廓光上也有意图的做成黑色。由于这样,从轮廓附近到内部都实现了渗入墨那样的视觉效果。还有,蓄力动作时熊熊燃烧的斗气那样的东西本体是粒子特效。

龟井先生:其他方面,要说起[街霸4]系列独特的shader技术,就是[笔触shader]的存在了。这个是和被称为铅笔画shader代表的real time hatching接近的东西。

[笔触shader]

笔触shader适用前(上图),笔触shader适用后(下图)


把边缘光(Rim light)有意图的做成黑色状态。制品版的蓄力攻击时的表现,这些由于粒子特效附加上黑色的斗气,让其表现出更多的水墨画那样的风格(左图)。在阴影的偏暗部分中可以强烈的看到,笔的第一个笔迹状的浓淡很醒目。这些就是由笔触shader带来的效果。


笔触shader有或无的比较。笔的Stroke在高光附近得到了控制。

    这个具体上指的是,在高光[以外]的地方出现,好像笔的Stroke痕迹的那种颜色浓淡。因为会让[街霸4]系列的视觉过于稳定和柔和,一些玩家可能没发觉吧。这些,实际上采用了提前把Procedural的有规则Noise附加到法线贴图来实现。


    即使在[街霸4]系列中,法线贴图虽然作为浮出的血管或肌肉的隆起和褶皱等的微细凹凸的表现手段被利用,但对于那些法线贴图,要对应到满足一定条件的位置上,用提前处理的方式附加上和笔触相当的凹痕平行线。在效果层面上用Photshop可以做出和[皱纹](细皱纹)相当的效果,但在工具上自动性的附加上这个效果后,需要艺术家手工补正和修改。

    附加上这个皱纹的法线贴图本身虽然是静态的,但因为shading本身是要进行活动的,一旦和光源的位置关系有了变化,这个笔触效果颜色的浓淡就会发生改变。倾向上,要设计出对着光的位置上不太突出,而阴影阴暗的部分要强烈突出的shader。

【皱纹滤镜】


手腕部分的法线贴图。皱纹滤镜适用前。


手腕部分的法线贴图。皱纹滤镜适用后。


绫野智章先生(卡普空 东京制作部 制作室 编成组 助理制作人):
原本,[街霸4]是作为街头霸王诞生20周年的项目来开始的。制作人小野先生由于在GDC2009上发表,[街霸4]是在玩家的脑海里留下的[街霸2]的回忆再具像化的作品,所以提出了要像池野大悟描绘出的画那样实际活动的印象为目标。为了把这样设定图风格用实时3D图形运行起来,对Dimp的诸位提出了相当难的要求啊(笑)。

[概念艺术]



池野大悟先生的概念艺术图(上)。确定了方向性的最终视觉效果图(下)
 楼主| 发表于 2012-1-16 20:11:27 | 显示全部楼层
本帖最后由 trace 于 2012-1-16 21:33 编辑

[街霸4]系列的图形规格

    继续,下面决定让大家看看关于[街霸4]系列的图形规格。[街霸4]系列的渲染分辨率是1280X720像素。帧率是60fps。

    每个操作的角色对应的多边形数大约是16000多边形(约9000顶点)。没有采用LOD(Level of Detail)的结构,而是在操作中和事件场景或ULTRA Combo场景等的特写镜头里,都使用同一个模型。操作中对应的每个场景的总多边形数,角色,背景,特效(VFX),实时生成的影子等全部的要素合计起来大约是30万多边形左右。对于超过100万多边形也是常态化的现行主机,已经是相对保守的预算了。

【千里马肝注:人家认为是常态化、保守的预算,但是童鞋们,在这种画面要求下,作为720P的游戏,想保证60fps,注意!是稳定在60fps下,是多么困难的一件事情啊!(XBOX360的GPU基于ATIR500的改版,显存256M,所谓R500,这么理解吧,2005年的Radeon9550是R580核心)】

【线框图Wireframe shot】

最终画面和他的线框图


主要角色的最终画面和线框图

相反的,操作角色的骨骼数大约350个左右,是个相当富裕的配置。关于达儿锡姆这个角色是个特别的配置,虽然比其他角色稍微多了一些,但标准配置的主要操作角色的骨骼细分起来,身体本体是58根,手臂40根,脸上54根,这之外,辅助控制用的次要骨骼大约200根左右。给人的印象就是把一般游戏中的事件场景里才使用的高品质模型使用到了游戏中。

【千里马肝注:达儿锡姆(Dhalsim),就是那个练瑜伽的长手长脚的印度阿三哥哥。】

【骨骼和面部绑定】

主要角色骨骼和面部绑定的可视化截图

玩家角色的总贴图数是8张。详细的分成:color贴图512x512像素规格的4张,法线贴图是1024x1024像素的4张。作为渲染管线,最初被描画的是两个玩家角色,接着进行背景的描画。

因为格斗游戏可以确定是两个玩家角色的登场,如果描画了背景之后再描画玩家角色,就要每次都重复描画一部分背景,填充率就无意义的使用了。到这里已经介绍过了,对于玩家角色的shader群很沉重,因为渲染成本很高,所以为了避免上面写的这样做的描画,先描画角色是必要的。

其次是要进行体力槽(gauge)或ULTRA Combo槽等的各种计量器的描画。在这个上面虽然要加入特别的处理,但关于这些放在后篇中详细的解说吧。



颜色贴图(上),法线贴图(应用了皱纹滤镜后)(下图)

    最后,要进行波动拳之类的飞行道具或尘土等的特殊效果的绘制。把特效群方在最后描画,是因为特效几乎都是半透明的对象。

    关于HDR(High Dynamic Rangel)渲染,采用了使用int32 buffer的近似实现方法,实现方法是[Half-Life2](Valve)采用的,使用MRT(Multi Render Target)的手法。Sub Buffer只抽出高亮度部分,

【千里马肝注:所谓int32 buffer HDR,即指用R8G8B8A8来模拟需要浮点纹理实现的HDR效果,原因是早期的显卡不支持浮点格式的render target。】

    作为实作是采用了[Half-Life2](Valve)和MRT(Multi Render Target)的手法,在辅助缓冲上输出高亮度部分,把这些模糊后就是合成的手法。做模糊时,要把抽出的高亮度部分buffer的内容,降低分辨率到一个等级后再扩大,最后把不同缩小再放大等级的图进行合成,充分的利用了这种[川濑式]缩小缓冲的手法。

译者注 川濑式简介:

全称为川瀬式MGF(Multiple Gaussian Filte),是光溢出(lightbloom)表现技术的一种。
使用高斯函数把画像的亮点分散,但只使用一次的效果不足,就改版滤镜的直径,把多次高斯滤镜的图做合成,但是提高高斯滤镜尺寸会增加处理负担(滤镜直径越大,处理像素越多)。所以川瀬正樹先生提出的负担减轻策略的称为川瀬式MGF的技术:高斯滤镜的直径调小,输出数据时,把原图缩小为1/2 ,1/4, 1/8再使用滤镜,最后合成时,再把图放大为2,4,8倍来绘制。 不需要扩大高斯滤镜直径,把要处理的图像调小,相对的就是滤镜直径变大了。

优点
1 滤镜直径不变,像素负荷稳定
2 滤镜处理的画像尺寸减小,全体负荷减轻,使用的VRAM减少
3 画像变小后做像素发散处理,再使用Bilinear来扩大,外观不会变




最终摄影效果(上图),MRT1的color buffer的主渲染结果(中图),MRT1的阿尔珐通道。除了在角色的前面描绘物体时作为Mask使用外,还可以利用在轮廓线的附加上(在后篇解说)



MRT2的color buffer。输出了高亮度部分。后面的pass中被降低解分辨率并模糊了,Glare/Bloom效果,被合成在主要渲染结果中(上图),MRT2的Alpha通道。在postporcess里作为深度值来使用(下图)。

动作模糊效果,把各角色的身体部位的速度向量,写入到Velocitybuffer里,在后段参照这些,做模糊和Approach。关于这个手法的详细解说请参考作者的失落星球篇。

http://game.watch.impress.co.jp/docs/20070131/3dlp.htm

     关于游戏操作中的动作模糊,为了能让技的轨迹容易看明白,采用了角色的部位拉伸的处理。把拉伸后的部位的速度矢量,写入到Velocitybuffer中之后的处理,和前面写到的标准的动作模糊处理是共通的。但是,这些动作模糊合成的相当淡薄。这是为了在操作中的容易看明白才考虑的,虽然和被描画的动作取得了平滑度和平衡,但也要承担能看出破绽的难度。

    还有,想到负荷减低的观点,为了做出稍微有强调感觉的模糊效果,Velocitybuffer和模糊生成时,做成Sample的渲染结果采用了低分辨率的方式,这些也是所谓的缩小buffer的方法而被采用。

【千里马肝注:在有限的显存下为了减少填充率,down sample的手法是实现blur的好办法,因为正好需要的结果也是模糊的。】



动作模糊(没有拉伸的效果)(上图),动作模糊(有拉伸的效果)。游戏操作中,用把容易察觉到技的轨迹的部位加入拉伸的方法来强调模糊(中图,下图)

龟井先生:因为拉伸处理的关系,不能装入缩退多边形。要使用在残影生成中专门使用的低多边形模型,尽量做的难以看出破绽。这样做的拉伸处理,一旦用复杂形状的大量多边型模型更容易做出破绽,即使那样,看起来的外观也还是那种程度的简单形状和单纯的拉伸。还有,在对家用机做移植的阶段中,要进行模型的优化等操作,和街机版中模糊的形态有若干的不同。

一旦试着这样做,基本上,已经成为了完全装入在本世代的游戏图形中所寻求的主要要素的形态。

 楼主| 发表于 2012-1-16 20:12:50 | 显示全部楼层
本帖最后由 trace 于 2012-1-16 21:37 编辑

制作进拥有强大的细节的面部表现

    往往被意外的错过了,但实际上[街霸4]系列在面部表现上有着相当的钻研。[街霸4]系列,虽然既不是动作冒险游戏也应该不是RPG,但Ultra Combo发动场景或事件场景就不用说了,就算是平常的战斗中,也可以让玩家看到操作的角色们有非常丰富的表情。与其说像是活人,不如说是进行了稍微夸张风格的连环画表情溢出感的面部动画,确实的很匹配[街霸4]系列的世界观。

龟井先生:[街霸4]的开发刚开始时,看过了史克威尔艾尼克斯的[王国之心2]和[最终幻想12],两个游戏都在面部动画上非常下功夫,感觉不能输给他们(笑),要努力了。但是,比起把自然的真实形人物作为目标,更要重视有冲击力的脸部模型绑定。


塚本高史先生(Dimps执行负责人开发本部 第一开发部部长):
[街霸2]系列本身,也有一旦挨到伤害就会眼睛凸出的相当夸张的漫画表情抽搐,也是用动画抽搐的表情点来构成的,所以在[街霸4]系列中,也作入了非常强力的爆发表情。因为考虑到这样会影响女性角色的美观,所以要稍微控制些(笑)。

    脸面内加入的骨骼数,基本上是全部角色都是54根,但各角色的脸面形状和脸面尺寸要在最适合化上进行绑定的设定。

    以喜怒哀乐为基础,用手工做入了表现出各种各样的反映的表情动画,在那些表情上分配了各自的ID。举个例子,隆的极限连击[灭●升龙拳],被打到的一方的脸上会随着痛苦的表情一起,发生下巴瘪进去的面部动画,这个[痛苦的表情+下巴瘪进去]的挨打动画的ID一旦编到了第N号上,就在全部的角色上,把这个挨打的动画用第N号登陆。

    表情重播被分成每5个Frame是一个Sequence,程序一方要适宜的,把各动作中设定好的表情动画用ID呼出的方式重播出来。

[表情演示之2]



上面是标准状态。春丽是保守的,鲁法斯是夸张的。要设计出与角色印象相符合的面部动画表现。

龟井先生:但是,事件场景中各角色的对话的口型匹配或对话中的表情变化不是用ID管理,而是针对每个角色用手工方式根据每个场景单独个别的设定。

竹岁先生:关于眼球,为了不出现[死鱼眼],在实时在瞳孔(眼黑)部分加入了发出高光的办法。但是,经常不是在瞳孔的中央,而是根据和视点方向的位置关系实时的活动着。

    恐怕操作游戏的玩家本身都没有看那些表情的空闲,但希望玩家能集中意识在鉴赏的对打时来回移动的角色时也看一看表情或眼睛的动作。应该可以清楚的看到在发出技能时,被技法打中时,对应各种局面,进行着相当多彩的表情表现。

[眼球Shader]


眼球shader的伪代码(上图),在眼球上附加上了实时的Procedural生成的光芒,进行了生动的眼睛表现。

 楼主| 发表于 2012-1-16 20:13:56 | 显示全部楼层
本帖最后由 trace 于 2012-1-16 21:42 编辑

[街霸4]系列的特效

    [街霸4]系列,因为是所谓的格斗游戏类型的游戏,如果除去了背景角色,来回动的主要角色只有两人太少了。正因为这样,主要角色的规格虽然比起平均的本世代游戏图形都奢侈些,但奢侈的不只是角色。[街霸4]系列,特效的表现也作的相当的丰富。

    例如,如果说关于隆的[波动拳],总多边形数都到了1394个(764个顶点),如果要进一步说,肯,豪鬼,刚拳的波动拳都是分别的设计制作出来的。


隆的波动拳。游戏中不同的角度的截图。

绫野先生:各角色上蓄气的方式是不同的啊(笑)。所以从尺寸到火和烟的出现方式都不一样。

塚本先生:艺术家们设计波动拳的素材时,就想到[波动拳到底是如何出来的?],大家发起了相当热烈的讨论(笑)。

    波动拳的外轮廓的“气”是像流体一样的东西,波动拳本身是个半球状的3D模型实体,波动拳本身的外围飞舞的火焰一样的东西由粒子组成。这个粒子动画中采用的素材,是采用了能进行流体物理模拟的特效制作FumeFX来作成的。


FumeFX是面向3ds Max或Maya插件。可以在应用流体物体模拟的同时进行特效设计。

【粒子动画】

完成发射(上图),只有角色(下图)


波动拳多边形对象本体部分(上图),波动拳粒子部分(下图)

    还有,对波动拳之类的飞行道具要进行光源设定,在周围要加上实时的lighting效果。这些似乎也因为集中精力游戏而被玩家忽略了。

竹岁先生:配置上,玩家角色受到影响的光源数被限制在4个以内。两个是舞台关联的光源,余下的两个就是那些关系到特效的光源。例如,有些情况是角色附近有3个以上光源的发光体特效,这些特效光里有两个是不对玩家角色做光照的。但是,附有多个光源的特效,在位置很近时的情况,就要把光源进行合成,在这个配置限制内不至于看起来不自然的方法也加入了

【光源処理】

在波动拳上加入光源。上图是关闭这个效果的图。下图是打开这个效果的图。在成品版里是下图的状态。


软粒子处理消除了粒子的交叉线

    特效群的描画很好的考虑depth的方式进行处理,那时要考虑软件粒子处理。所谓软件粒子处理是在粒子和对象交叉或和背景重合时,把粒子淡化(提高透明度)的描画手法,是一种回避粒子与其他的对象产生的不自然交叉线artifact的技术。

    还有,特效群的绘制,是在分辨率低于最终显示用frame buffer的缩小buffer里进行的,再把这个扩大为最终显示用的Frame buffer的分辨率进行合成。

 楼主| 发表于 2012-1-16 20:14:45 | 显示全部楼层
本帖最后由 trace 于 2012-1-16 21:50 编辑

[街霸4]系列中阴影的生成

    关于[街霸4]系列的阴影生成,是个稍微独特的制作。首先,要在两个主要角色的Self Shadow生成中利用到[Depth Shadow]技法。

    Depth shadow技法,在本世代的3D游戏图形中也可以说成是主流的实时影子生成技法,首先把从光源看到的场景深度信息(纵深信息),在贴图纹理上作出渲染。这相当于从光源处被遮蔽的位置的分布图,把这些特意称为[shadow map]。在最终的场景渲染,各像素绘制时,再参考生成哪个像素的光源是不是被遮蔽的,要一边参照生成的shadow map一边进行判定,在被判断为遮蔽时作为影子来描绘那个像素。

    关于在地面上生成的影子,把光源看到的对象的轮廓在贴图上渲染,把这张贴图用在project texture mapping上,使用Projection Shadow技法。这个技法也可以用在飞机场舞台里移动的飞机那样活动背景对象的影子生成上。

【阴影生成】

影子全关闭(上图)
只打开ProjectionShadow(中图)
影子全开(ProjectionShadow + Shadow map的Self Shadow)(下图)

    决定这样的两种方法的影子是因为要考虑性能和品质的平衡。

    Depth Shadow技法,一旦在大局上要显出高品位的影子,就必须要调高Shadow map的分辨率,那样的生成的代价也会变高。所以,Depth shadow技法,只限定于主要角色的两个人生成高品质的Self Shadow 专用。

    虽然原始性的手法所是减轻负荷的Projection Shadow,但这个技法在实际上,因为是单独投射纹理映像,所以投射只限定1个。在[街霸4]系列的情况中,Projection Shadow的影子描画位置变成[地面]。

    但是,在下面例子里的机场的机翼影子那样,不只是在地面,两位主要角色的身体也有被覆盖住的情况。那就要把投影目标设置为地面和两个主要角色,这样的Projection Shadow必须自己完全的手动实现。

    就这样,开发组做了把要投射的影生成了4个阶段的分层结构的实践工作。具体上,把场景的投射阴影原型的对象轮廓在αRGB通道的各图层里生成。

    在alpha通道上输出必定是在地面上投落的轮廓,R要输出的是去除角色对象影子的轮廓。G上是输出在比角色更高的位置上对象的轮廓,B上是输出比那些更高的对象的轮廓。

【阴影生成】


飞机场的场景。由飞机的机翼出来的投射影。为了把这个机翼的影投射到地面和主要角色上,加入了特别的分层处理体系(上图),在这个场景中被分成了RGB进行输出图层的轮廓(中图)。alpha输出了投射在地上的影子。飞机的机体,背景,主要角色等全部的轮廓都在这里输出(下图)。

    在实际的Projection Shadow绘制时,在地面上用Alpah通道输出的轮廓做影子的绘制,这以外的在RGB上输出的轮廓,要根据场景里的对象投射到的大概高度,有选择的进行绘制。

    (等于进行projecttexture mapping), 用以前面贴出的飞机场的飞机为例,多亏了这个结构,飞机的机翼轮廓才被投射在地面和两位主要角色身上。

    另外,depth shadow技法的shadow map生成和Projection Shadow用的轮廓生成,利用了Light-SpacePerspective Shadow Maps(LSPSM)。关于LSPSM,可以参考西川的另外一文  
    http://game.watch.impress.co.jp/docs/20050929/3dinis.htm


    如果还要进一步说,在[街霸4]系列的影子上应用了soft shadow处理。作为depth shadow技法的基础的self shadow上,适用了4点PCF(Percentage Closer Filtering),在Projection Shadow 技法上对于生成轮廓贴图,采用了对于2X2的4点做出浓重模糊的9 sample cone filter技法(可参考nvidia的 HLSL_FilterBlit.pdf)。

竹岁先生:实际烟尘特效上也根据Projection Shadow接受了角色或背景的影子。虽然不是物理性的正确,但在打出波动拳时出现的尘土上也被透射了影子。

在后篇中,会提出考虑到游戏设计或游戏性而被设计的独特的图形要素。

【Self Shadow】


使用由depth shadow生成的Self Shadow(上)
在成品版中由于把这些做成比4xPCF还要模糊的soft shadow化(下)


成品版的视觉效果(但是,摄像机角度改变了)(上图),生成Self shadow 用的Shadow map(下图)。


关于ProjectionShadow的影子,通过9 sample cone filter,做出了模糊的soft shadow。

【千里马肝注:通过良好的光源数量的控制,可以得到所期望的动态光源的效果,波动拳也被绑上了光源可以照亮角色了。对于阴影的实现,虽然只是传统的shadowmap手法,但是通过控制,让地面只是projection shadow,这样可以得到视觉良好的地图投影;selfshadow是最容易出现artifacts的,将其仅仅影响主角并独立出来生成,从而保证了画面质量,计算量也得到了相应的控制。所谓工程项目,与demo的不同之处,就是如何在性能和质量之间取得最佳的平衡。】

 楼主| 发表于 2012-1-16 20:15:34 | 显示全部楼层
本帖最后由 trace 于 2012-1-16 22:05 编辑

首先谢谢大家支持,因为一直帮忙校对BOBO比较忙,这篇文章临时找千里马肝做的校对,在这里对以上两位表示感谢
因为时间有限,一些文字和排版上的错误还请见谅。

本篇翻译的原文取自西川善司在GameWatch上的每月连载,街霸4后篇也已经翻译完毕,目前马肝还在校对中,1月17日晚上应该可以发布了
另外一篇千里马肝参与校对的火影2的制作介绍也会在这1,2天发布。

接下来到2月底前的翻译计划一个是西川善司在GameWatch上的一些游戏制作文章
索尼克(SEGA)  
生化5(CAPCOM)
永恒终焉(Tri-ACE & SEGA)

另外CGWORLD合订本的推出,也要对一些以翻译文章做更新 这些包括
偶像大师2
卡瑟琳
发表于 2012-1-16 20:56:23 | 显示全部楼层
本帖最后由 hmxp8 于 2012-1-16 20:57 编辑
trace 发表于 2012-1-16 20:15
占一楼备用,可以回帖了

       就等你这句话了,嘿嘿
       华生和福尔摩斯来到报案现场,现场是一片狼籍。凶案现场是躺着的是一个20岁左右的女子。双眼圆睁,仿佛有巨大的冤屈和恐惧。华生看了看死者的头部问到:你认为这是什么凶器造成的?福尔摩斯看到死者头部有尖锐的刀口,但是旁边好象有点被刀子刮掉的碎肉:应该是一把剪刀,普通的刀子是不会有这种刮痕的,凶手很残忍,用剪刀刺进死者头部以后还用力旋转,让死者更痛苦。
  华生走到房门边,发现几跟头发,粗而且硬:福尔摩斯,这会不会是凶手留下的毛发?福尔摩斯拿过来一看:很有可能,凶手应该是一名40岁左右的成年男性,然后他闻了闻,经常酗酒,而且这种酒只能在莫斯科的匹克酒吧才能买到,是那个店自产的伏特加。看得出死者和凶手是经过激烈搏斗的。你来看看。福尔摩斯叫华生过来看死者的头部有一处凹下去的淤痕:凶手很可能先把死者打晕,然后在死者意识模糊的时候下的手,死者倒地,条件反射的抓住了凶手的头发,凶手按住死者用剪刀刺死。
  华生说:可是这个房间什么都没有,只有一张床和一个沙发,甚至连凳子都没有,看淤痕应该是用钝物拍击至晕的,你认为会是什么呢? 
  福尔摩斯大惊到:难道——难道是沙发?
发表于 2012-1-16 21:33:45 | 显示全部楼层

支持trace

本帖最后由 oiram 于 2012-1-18 01:05 编辑

支持trace
发表于 2012-1-16 22:14:50 | 显示全部楼层
Trace好棒!辛苦了,谢谢。
发表于 2012-1-16 22:30:09 | 显示全部楼层
顶trace大神,仔细研究中...
发表于 2012-1-16 23:37:51 | 显示全部楼层
翻译的很好
发表于 2012-1-17 09:20:56 | 显示全部楼层
太感谢啦,辛苦了~
发表于 2012-1-17 09:27:12 | 显示全部楼层
非常感谢!辛苦了!
发表于 2012-1-17 10:28:17 | 显示全部楼层
多谢楼主分享,辛苦啊
发表于 2012-1-19 18:53:42 | 显示全部楼层
非常感谢楼主提供这样的资料
发表于 2012-1-20 17:26:15 | 显示全部楼层
支持楼主
发表于 2012-1-21 19:21:51 | 显示全部楼层
学习学习 非常感谢
发表于 2012-2-12 17:35:38 | 显示全部楼层
太好了,当年看shader怎么都看不明白,这下清楚了
发表于 2012-3-27 19:33:57 | 显示全部楼层
正版xbox游戏 第一个就买的街霸4,哈这次算是对它有了个更细的了解了
发表于 2013-4-23 17:41:54 | 显示全部楼层
非常感谢 提高很多
发表于 2013-4-25 10:52:38 | 显示全部楼层
不顶礼感谢,不足以平“民愤”
发表于 2016-9-20 19:40:50 | 显示全部楼层
大感谢trace!!!!!
发表于 2018-11-13 13:03:03 | 显示全部楼层
新魔界私服制作|骑士私服制作|烈焰私服制作|破天私服制作|决战私服制作
美丽世界私服制作|乱勇OL私服制作|倚天2私服制作|完美世界私服制作|征服私服制作
天堂私服制作|传世私服制作|真封神私服制作|劲舞团私服制作|天上碑私服制作
永恒之塔私服制作|仙境RO私服制作|诛仙私服制作|神泣私服制作|石器私服制作
冒险岛私服制作|惊天动地私服制作|热血江湖私服制作|问道私服制作|密传私服制作
天龙私服制作|奇迹Mu私服制作|魔兽私服制作|魔域私服制作|墨香私服制作
天堂2私服制作|传奇3私服制作|英雄王座私服制作|千年私服制作|征途私服制作
火线任务(Heat Project)私服制作|飞飞OL私服制作|洛汗私服制作|天之炼狱私服制作
丝路传说私服制作|大话西游私服制作|蜀门私服制作|机战私服制作|剑侠情缘私服制作
绝对女神私服制作|传说OL私服制作|刀剑私服制作|弹弹堂私服制作|科洛斯私服制作
魔力宝贝私服制作|武林外传私服制作|网页游戏私服制作|页游私服制作|希望OL私服制作
成吉思汗私服制作|剑侠世界私服制作|全民奇迹私服制作|挑战OL私服制作
红月私服制作|十二之天(江湖OL)私服制作|倚天私服制作|dnf私服制作
24小时电话扣扣服务保证客户随时找到技术员随时解决SF一条龙的各种问题
专业从事私服一条龙服务,我们用最专业的技术,贴心的售后服务,放心质量
请加入我们的私服一条龙开区行列,了解我们,信赖我们,品质来源于责任细节
客户们的满意是我们追求的目标,以诚信为本,为您打造属于您的私服.
想开个好F就来302gm.com!想要服务器不卡就来302gm.com!
想要售后好就来302gm.com!想要技术硬,学技术就来302gm.com!
私服开区一条龙服务(网络游戏私服开服制作)-主机IDC租用-网站模版
广告宣传-游戏版本-开区套餐
官方网站302gm.com
客服咨询QQ2488130950(企鹅扣扣)
Email:2488130950@qq.com
302gm.com商业服务端版本下载地址(已修复不能下载问题):
302gm.com/soft/index.html
骑士私服一条龙_302gm.com 传奇sf一条龙_302gm.com 诛仙开服一条龙_302gm.com












奇迹Mu私服一条龙 魔兽sf一条龙 烈焰开服一条龙
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|小黑屋|Archiver|手机版|中文第一计算机图形学社区OpenGPU

GMT+8, 2019-1-18 08:25 , Processed in 0.107009 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表