9月25日,云畅游戏技术负责人刘晨受邀参加2021北京国际游戏创新大会(BIGC),并在大会现场分享了《鬼泣-巅峰之战》的高质量开发历程。大会特别引擎环节。
刘晨讲述了《鬼泣之巅峰之战》团队如何从角色、动作、关卡、AI等多个维度在移动端追求主机级3D动作游戏品质。
随着市场环境和用户需求的变化,主机级手游项目逐渐成为趋势,整个手游技术也不断向3A方向发展。 云畅游戏在这方面有一定的实践和积累。 相信其技术总监的分享能给业界带来一些启发。
为优化阅读体验,调整了以下分享内容:
大家好,我是云畅游戏的刘晨。
《鬼泣-巅峰之战》已于今年6月在国内公测。 是一款高品质3D动作手游,于今年4月在苹果春季新品发布会上亮相。 公测之后,在市场上也取得了一些不错的成绩。
我们的项目有四个主要亮点:
由于移动端性能的限制,主机级手游的研发是整个行业的共同话题。 那么,今天我就以此为主题,分享一下我们在《鬼泣-巅峰之战》中的一些尝试和技术方案。
我的整个分享分为六个部分,包括五个技术点的拆解和总结:
不同于“网红脸”的角色制作
为了还原原版IP的基本画质手机游戏开发,我们需要在《鬼泣-巅峰之战》的开发过程中不断优化建模。 在保证高帧率的前提下,我们会按照PBR流程制作手游角色,毛发、皮肤等部位会使用一些特殊材质。
在头发的制作上,我们使用2pass进行渲染,还原了原作中角色发型的顺滑质感。 但是由于移动端的性能限制,我们还需要控制头发的三角面数量来降低性能消耗。 因此,我们选择将头发分成三层来制作模型。
第一层为内层,是用来防止霉菌渗透的相对固定的一层,其质地为不透明状态。
第二层为外层,用来塑造人物的基本造型。 因为要还原角色头发的发质,所以这一层的质感会更加丰富。
第三层为修改层,用于修改形状,增加细节。
通过这三层的组合,我们基本可以表现出角色原本的发型和发质。
对于角色皮肤的制作,我们使用了预先集成的皮肤次表面散射lut贴图的SSS效果。 并且在色彩表现上,尽量表现出写实硬朗的风格。
一是还原原作《鬼泣》的暗黑哥特画风; 另一方面是为了区别于市面上“小清新”、“网红脸”的人物造型。
为了让角色在融入场景时显得更加立体生动,我们在场景中预设了一个微调GI的面板,用于调整角色进入不同场景后的效果。 微调后,角色更自然地融入场景。
如何确保流畅逼真的动作
《鬼泣》系列是ACT类游戏的标杆产品,对人物动作的展现有着极高的标准。 这不仅体现在华丽的技能动作设计和冲击感上,还体现在走、跑、跳等最基本的角色基本动作上。
所以对于动作的显示,我们的原则第一,要流畅,第二,要合理。 我先以游戏中的主角之一维吉尔为例,说明一下我们要达到的效果。
在角色从静止到待命,从慢行到奔跑再到加速奔跑的整个过程中,会有一组以不同速度串联的动作。 为了达到平滑的运动效果,该值会体现在速度的逐渐变化上,再配合BlendTree(混合树)设置,最终实现平滑变化,尤其是空中运动和地面运动的无缝过渡。
另一方面,原作《鬼泣》的动作设计也具有复杂酷炫的特点。 以主人公但丁为例。 在他移动的同时,他还可以使用枪械进行攻击。
为了让角色表现出射击行为,同时接收玩家的移动操作指令,我们增加了动作分层处理方式,将角色上半身举手射击的区域分层合并下半身腿部运动的区域,并反馈给玩家的输入,最终实现一整套复杂的动作处理。
第三个方面就是如何让这款游戏的动作体验更加流畅,让玩家感觉不到角色动作的生硬。 对此,我们特别注重动作切换的流畅性,制定了一套生产标准。
我们将所有动作资源分为“基本动作”和“行为动作”。
基本动作主要是指角色的待机、移动、转身等,待机状态下不能有明显的大动作,而行为动作主要是指角色的行为,如释放技能、被攻击、与场景等等。
对于基本动作,任何动作的起点和终点都应该是待命行为。 这对待机行为有一个标准要求:没有特别明显的大动作。 此外,运动必须有相应的速度,为了让BlendTree生效,它们的整体规格必须保持一致。 例如,需要考虑角色是先用左脚还是先用右脚。
对于行为动作手机游戏开发,我们可以进行二次细分,分为主动行为动作和被动行为动作。 无论是主动的还是被动的,我们在动作设计上的客观要求就是及时反馈。 因此,我们在进行动作切换配置时,缩短了行为和动作融合的时间,并加入了动作的逻辑中断和切换时机的控制,让角色的攻击和被击中更加真实和瞬间。
以“空战”为前提的关卡制作
对于市面上大部分的ARPG或者MMO来说,其关卡设计过程都会比较简单。 对应的工作流程通常是先规划做平面图,然后是美术输出模型的拼接,然后是规划流程搭建关卡,验证。 但这样的流程并不适合《鬼泣》这样的3D动作手游,而且因为加入了“Z轴战斗”,其关卡设计会更加复杂。
因此,在制作过程中,我们摸索出了一套基于三维尺度、丰富多样玩法的关卡搭建流程。 我们还是希望能够在手机端实现关卡机关、路线、重生点、宝箱点等的3D设计。 但这带来的挑战是策划和美术需要更紧密的配合,关卡设计过程会变得更加复杂。
首先策划会根据功能玩法需求,先搭建白片,并在白片的基础上设计关卡的主要路线和区域,使用一些简单的表现手法来表达本地游戏。
第二步,美工将提升白膜级模型的精细度,将美工团队的设计思路和理念展现在其中。 制作后的白片场景比较精细,辅以灯光氛围等环境,便于策划验证是否与之前的功能设计有偏差。
美术制作的白片场景在策划确定后,原画师和模型师此时会介入,第三步,完成原画的详细设计,模型的粗贴,关卡场景深度运营。 策划也会在此基础上进一步完善细节层次,验证流程是否有偏差。
当策划人员确认关卡没有问题后,关卡制作将进入最终资产制作。 生产完成后,这些模型将逐步集成到产品中。
通过这样的白膜构建过程,可以避免我们在研发过程中通过策划同学对关卡进行反复调整修改,造成资源浪费。 另外,在进入最终资产生产阶段之前,我们基本确定了所有模型的近、中、远位置,因此我们可以根据资源的优先级调整不同位置模型的精细度,实现资源量的可控.
同时,为了实现设计意图,我们还需要一个关卡编辑器。 我们使用的关卡编辑器内置了数百个触发器和行为,我们的策划可以根据关卡的预先设计随意排列组合数千种组合,实现关卡流程。 该关卡包括诸如生物、各种器官、陷阱、空气墙和可破坏物体等元素。 通过这些元素,策划者可以设计出复杂的关卡流程和解谜元素,让整个关卡的内容尽可能丰富而不枯燥。
Monster AI的设计与实现
怪物的AI表现是高品质动作手游的另一个设计点。 对此,我们采用行为树(Behaviour Tree)解决方案。
这里先解释一下角色行为的基本过程:某个单元以某种方式进行决策,决策结果生成指令并进入队列,然后依次执行。 对于玩家操作的单位,决策者是玩家的输入信息,比如拉动摇杆移动,按下攻击键释放技能; 而对于怪物来说,就是它的行为树来做决定和生成指令。
在项目开发过程中,我们首先需要的是AI编辑器和AI跟踪器——编辑器用于编辑特定的AI行为,跟踪器用于验证。 通过这套工具,我们可以调整多个版本的AI体验,达到最优的AI方案。
追求平衡图像质量和性能的后处理效果
除了动作、模型、关卡、AI,后期处理也是《鬼泣-巅峰之战》开发过程中的重要一环。
我们需要让游戏尽可能接近主机的画质,但同时需要在高画质和高帧率之间取得平衡。 为此,我们在Unity Postporcess v2的基础上扩展了很多后处理效果。 这些方案的原理并不复杂,性能消耗也比较小。 联合使用可以呈现一加一大于二的效果。
例如,可以适时播放径向模糊、分色、画面撕裂等后期处理效果,提升整体战斗的表现力和冲击力。
此外,我们通过后期处理定制了一些场景特效。 比如雨天场景,为了节省带宽,我们没有在屏幕上使用纹理采样来实现雨天效果,而是通过uv取余后将屏幕切割成多块来实现雨滴流动效果,然后在屏幕周围添加白色效果游戏评测创作人,模拟玻璃上的雾气。 各种效果结合后,更能真实地展现雨天的气氛。
对于有雾的效果,我们会在场景中使用神光结合深度雾和高度雾,结合主光源来模拟大气雾效果。 总之,在本项目的制作过程中,我们会先判断场景是战斗场景还是剧情动画中的场景,再搭配不同的后期处理效果,实现画质与表现的统一。
以上就是我这次分享的内容。 总的来说,《鬼泣-巅峰之战》的整个开发过程就是利用强大的Unity引擎在移动端性能受限的平台上进行自适应开发,从而接近游戏质量。主机级动作手游,终于重现鬼泣《皇牌空战》的魅力。