转载于虚幻引擎官方号
在琳琅满目的众多游戏品类中,开放世界游戏是近年来备受玩家追捧的一类。从起始阶段发展至今,已在国内甚至全球范围都积累了大量的玩家。如今若谈起开放世界,很容易让人产生这样的疑问?除了探索和冒险,有没有其他的特色,能带来一些不同体验的开放世界游戏?
不得不说玩家是非常幸运的,叠纸游戏就为大家带来了一款颇具特色的开放世界游戏。说到叠纸自然就会想到其代表作品暖暖系列,自2012年成功发行初代的2D游戏《暖暖换装物语》后,先后在2013和2015年经历了《暖暖环游世界》和《奇迹暖暖》的两次迭代,在2019年又成功发行了3D版《闪耀暖暖》,从这些年来的产品迭代和发展轨迹不难看出,叠纸游戏一直在尝试通过引入新技术结合新玩法,不断给玩家带来游戏品质和体验上的突破。
时隔多年之后,在2024年4月24日,叠纸进行了暖暖系列最新作品《无限暖暖》的官方「奇想测试」,这样的消息的确让人惊喜,而且因为本作是叠纸的开发团队转型虚幻后的首款以UE5为平台开发的开放世界游戏,打破了前作中空间的局限,暖暖和大喵会在广袤的“虚幻”大世界中开启一段全新的奇幻冒险之旅!看到这些,似乎还没体验就已经嗅到了缕缕阳光洒落在一望无际的花海所散发出的味道,闭上眼睛仿佛就能看到春日盛装登场的暖暖漫步在小镇和城堡中的画面...
Stop!笔者作为理性成熟的专业游戏人士,岂能在尚未体验核实之前就被这些烟雾轻易蒙蔽?回顾过往,暖暖系列都是在类似影棚这样的小范围场景里以捕捉和呈现各种细节见长,通过细腻的光照和华丽的材质细节把暖暖装扮的唯美精致。《无限暖暖》的世界升格成为开放世界后,无论是场景制作规模还是引入UE5等诸多技术细节都需要重新适应。简而言之,以前做的是“小而精”相对容易,这次跨度比较大如果能做到“大而全”也算合理,但想达到“大而精”就处处充满挑战,难上加难。如此看来,《无限暖暖》是否还能保持前作中的细节和高水准,走出“摄影棚”来到开放世界的暖暖能不能经得起玩家们挑剔的眼光?当然还有重中之重,本作的Slogan是“无论何时都要盛装登场”,随手拍出来的暖暖照片到底够不够惊艳!?
最终的结果,如同上面这段实机游玩视频所展示出来的效果,《无限暖暖》以美丽精致的画面和独特有趣的游戏体验诠释出“大世界游戏“该有的样子,打消了很多人先前的疑虑。但只因笔者着实在测试过程中产生了很多项目制作和引擎相关的技术问题,故而在强烈好奇心的驱使下托人帮忙联系了叠纸游戏《无限暖暖》开发团队的技术VP解卫博,于是便能得此机会带大家一起走进这款产品的开发幕后,一探究竟。
最初如何决定把《无限暖暖》作成大世界冒险游戏?
解卫博:在暖暖系列横跨12年的发展中,我们在做每一代产品时,都希望提升技术水平和规模,不断地超越自我提升产品品质的同时,我们也喜欢挑战去做不可能的事。我们一开始做换装游戏,很多人无法理解,觉得换装游戏非常小众无法支撑一家创业公司。但我们通过几代产品证明了换装游戏的市场空间,通过技术水平和规模的提升,开创了3D的换装游戏,把换装游戏从小体量产品提升到了3D工业化产品的量级。在我们提出对标3A游戏品质做3D换装游戏时,很多人觉得是天方夜谭,但我们会想办法去挑战不可能。
早期如何确立《无限暖暖》所期望达到的大世界冒险游戏的美术效果?
解卫博:我们希望为玩家展现一个温暖美好,同时也充满了奇思妙想的幻想世界。美术风格其实是美术和TA一起经过了多轮尝试和验证,制作人一直希望在卡通幻想和写实之间找到合适的平衡点。虚幻引擎的光照模型也是源于Disney的PBR模型,所以不论卡通的比例有多高,光照计算这一块我们基本按照PBR的方式来的,模型造型上很多物体有叠纸自己独特的风格,在材质的质感上我们更追求写实带来的真实感!
美术师会提供各种不同的参考,TA负责实现具体效果,尽量和参考比较接近,我们每周都会有一个美术Benchmark的会议来对齐美术风格,每隔一段时间美术风格就会统一定调。
项目最初是以UE4为平台开发,过程中很快又升级到UE5?
解卫博:项目最初是用UE4.23进行游戏开发,后面一直在跟进主版本的升级,升到了UE4.25。UE5刚出来时我们其实并没有打算升级到UE5,觉得还不成熟,毕竟还没有游戏用UE5发布过,后来经过我们的评估一致认为UE5光影质量会更好,并且对美术非常友好,可以极大提升美术打光的效率,并且还有很多引擎的优化也在UE5中落地了,所以我们才计划开始尝试。说起来非常的巧,在做这个决定后的两个星期之后Fortnite宣布新版本全面用UE5,这是一个非常强烈的信号,我们等的就是这个时机,也就是这件事情让我们下定决心将引擎升级到5.0.
因为我们改造引擎非常多,升级的工作量和难度其实是很大的,所以内部也是有很多质疑声,有的人觉得风险比较高,回报未必很多,有的人觉得难度太大最后可能搞不定,这件事情最后还是制作人做了最终的决定,他认为这个引擎升级带来的价值非常大,为美术提供了极大的方便,性能上带来的帮助和5.0的新功能对于整个项目都会有很大帮助,这对于无限暖暖项目来说极为重要,并且我们还有其他几个项目也是用的虚幻引擎,这个升级对其他项目也会有帮助,从公司发展角度看是属于技术战略!并且他也指出现在(23年5月)使用UE4发布游戏还比较有竞争力,等到无限暖暖上线的时候使用UE4就有点落伍了,所以升级到UE5这件事情再难也一定要攻克,他也坚信我们能攻克。
升级的过程中也确实遇到了很多问题,但最终还是完成了升级,这只是第一步;第二步是让策划和美术代表来CE,提出反馈,这个过程我们非常谨慎,让两批策划和美术CE了两轮;并且升级的技术人员最终提供了UE5和UE4在同一个环境下的严格对比,包括内存、CPU、GPU、包体大小,美术和策划工作流程,全面优于UE4。前面两步都是在分支进行的,完全不影响主干;第三步是合并到主干,这个过程是不允许项目组上传数据的,但仍可以继续工作,等到解封后就可以上传数据了,最终非常平滑的过渡到UE5,我要借此机会感谢下制作人对我们的信任!
换装一直是暖暖系列的灵魂,这部分在《无限暖暖》里面相较之前的作品有何区别?
解卫博:《无限暖暖》与前作最大的区别在于,我们让橱窗里的暖暖走进了广阔自由且充满想象力的大世界,开启了一场不断收集美好体验的冒险旅程。而在这个世界里,奇迹大陆中的一草一木将真实存在,玩家也会对换装玩法有更全新的认知。
1)换装跟大世界探索玩法产生强关联:
暖暖在大世界探索中的关键能力(如跳跃漂浮、净化、清洁、捕虫等)与能力套装相绑定,玩家通过收集材料->制作能力套装->解开谜题->获取更高级的材料->制作新能力套装...自然而然地在循环中完成一个又一个区域的探索。
2)实现大世界自由换装的沉浸式体验:
为了让玩家能充分感受到大世界自由换装的沉浸感,我们在服装外观设计、音效设计、视觉表现等方面下了非常大的功夫。在服装外观设计上,我们采用大世界里特有生态元素(动物/植物/怪物)做融合,比如【轻盈泡泡】漂浮套装,运用类似水母一样轻盈感的泡泡元素表现漂浮能力。在服装音效设计上,暖暖在大世界里移动走路或释放技能时,不同的衣服、鞋子、饰品、背包会与大世界里的物品产生声音上的不同交互效果,例如穿不同鞋子(高跟鞋/平底鞋)走在不同地面材质(草地/水泥/瓦片)上会发出不同脚步声效果。而在服装视觉表现上,暖暖穿着公主长裙奔跑在大世界时,会将裙角提起,伴随着昼夜光线变化,服装也会有不同的表现。
总而言之,在《无限暖暖》中我们尝试给玩家带来前所未有的体验:大世界和换装并非简单的玩法融合,而是希望通过大世界让暖暖的IP与故事鲜活地呈现在玩家面前,玩家能够在这个世界中追求与体验不同服装的过程中,深入体验到背后的故事与人文情怀。
能否介绍下关于Cloth制作的技术流程和所使用的引擎功能?以及实现不同造型和质感Cloth的静态和动态效果时遇到的挑战和困难?
解卫博:相较于之前UE4布料的制作需要从DCC软件中,绘制布料权重和属性,再导入到UE中,对于美术制作来说是很繁琐的数据导出导入的过程,而且所有的调整是不直观的。而UE5集成了整个布料的美术制作流程,可以完成布料创建、绘制权重、调整属性等,且实时看到效果,极大的提升了制作效率。
在《无限暖暖》中,暖暖走出了“摄影棚”,在广阔的大世界中自由探索。无论服装美学,还是材质效果,都会有更高的要求,这对于美术和技术部门是一个巨大挑战。
首先,最大的挑战是套装材质,这个主材质既要能实现各种布料效果又要方便美术使用,要方便合并材质ID(使用一个材质实例来实现多种不同面料质感)又要减少材质变体,需要满足不同平台的效果表现又要针对不同平台做性能优化。技术部门需要持续迭代效果和优化性能满足以上需求。
其次,套装的半透明部分也是一个难点,暖暖系列的套装有大量的半透元素,例如测试中出现的天鹅童话套装是由各种半透纱和丝绸组成,为了更好的解决半透排序问题, 技术部门二次开发了OIT,完美解决了排序问题。
此外,丰富的服装造型需要不同的动态表现,这使得我们要做出更符合认知的飘逸动态,是一个巨大的挑战。我们对服装的质感做了分类,灵活应用骨骼物理和ChaosCloth布料解算等功能,而带裙撑类型的服装是其中典型的代表,他不像布料般灵动,但也要做出符合其物理动态效果。在权衡效果和性能,也保证了多种平台上效果一致。
关于大地形的构建和实现,有那些经验或技术可以分享?
解卫博:对大地图构建和实现上,我们采用了多种优化方案来改进VHM和VT。和Tesselation类似,VHM可以实现地形非常的精细的细节,但三角形会非常多,我们采用了更精细的Cluster可以Cull掉大量地形的三角形;对于VT我们在手机上采用了ASTC格式,这无疑会比etc2的品质会更高,但也意味着需要在运行时刻用GPU对RVT进行ASTC压缩,这件事情是非常有挑战性的。但我们顺利的解决了这个问题,最终ASTC呈现的VT品质和不压缩的品质非常接近,同时还可以把地表上Decal和道路绘制到VT上,这样就可以增加地形表现的多样性。
能否分别介绍下游戏的角色和场景光照实现,过程中有遇到哪些困难?
解卫博:我们在角色和场景上一直都致力于追求打造美好的世界,这就会对角色和场景光照实现上提出更高的效果要求。
在角色光照方面,我们为角色单独开发了高质量的阴影以便实现较高的自阴影效果,而且为了使角色暗部的细节光照更好,为角色添加了独特的GI光调节,也使角色透明部分支持了聚光灯的阴影,可以处理与不透明部分的差异以及漏光的问题。
而在场景光照方面,为了更好塑造暖暖大世界独有的美术风格,我们的技术部门和美术共同研制了一套Tone mapping效果作为视觉风格的基调,并且通过GI参数调整,修改了一些遮蔽和GI追踪来让画面不失真的同时又能保证GI的特征效果,从而实现游戏独特的画面风格。
在后期处理调色中我们也保持极度的克制,提倡用灯光和雾气本身来做场景氛围渲染,给照片滤镜和后续场景的风格化场景留出表现空间。
暖暖的很多礼服上都带有大量的高反射度饰品,如何从技术上表现出更好的质感和细节?
解卫博:为了让服装饰品有更美观的展示,我们专门开发了珠宝材质来表现这些高反射效果。这个材质本身是不透明的。我们利用了Cubemap等一系列算法,来实现珠宝材质特有的折射和反射特性、SSS、以及各种高光效果,从而增加饰品的光泽、细腻感和视觉深度,使其看起来更加真实和华丽。
在UE5实时光照环境和天气变化的条件下,如何做到让不同造型和材质的服装保持统一?
解卫博:对于动态变化光照的场景,首先要求材质是尽量标准的PBR Input,在渲染的时候才会减少很多麻烦。我们遵循这个规则来进行开发,但是过程中还是遇到很多艺术化选择带来的调整问题,特别是半透明在Lumen下并不是严格按照opaque的逻辑进行渲染的。我们利用改造后的区域氛围框来调整不同的缩放参数,进行艺术调试和半透明渲染瑕疵的处理,从而达到视觉上的高度可信和风格统一。
游戏中大量的魔法特效,这些FX是使用Niagara开发的?
解卫博:是的,Niagara拥有逐粒子编程的功能,并且粒子之间可以进行通信从而让特效更加灵活生动,这是以前旧的特效编辑器所不具备的。利用Niagara方便的可编程性我们制作了很多Module优化性能,提升了效果表现,并从代码底层重新构建了粒子的碰撞系统。
通过Niagara我们实现了角色跟粒子的交互,比如落叶会受到玩家脚步移动所带来的气流的影响,有一些游戏内动物尾巴缠绕的线圈可以按照美术的设计生动灵活的来实现,而这些是传统粒子所做不到的。
游戏中的一些物理模拟方面的技术应用,比如漂浮,场景道具中纸鹤的重力和平衡效果是如何实现的?
解卫博:大世界探索过程中,我们设置了很多可交互的物体,比如风中的旗子、路边的瓶子、可踏碎的箱子等,简单的交互是通过WPO来实现的,对于精度要求比较高的采用Chaos系统来计算,严格遵守给予的Budget,对资产进行优化,也有一些对算法的调整,这使得我们可以在游戏中实时和这些物体互动,达到接近真实世界的游玩感受。
团队是否为满足游戏中个别需求而额外开发和实现相应的效果?
解卫博:我们为了让游戏实现一些特殊效果,开发了很多新的功能。
1、Fur技术:
暖暖衣服以及所有小动物上的毛发是我们引擎团队自研的一套基于ShellFur的毛发系统,适用于PC,Console和移动平台,支持美术在编辑器中以Spline的形式编辑毛发的走向,同时Runtime会以Instance地方法动态渲染毛发的每一层,Instance渲染的地好处是我们可以根据物体ScreenSize实时调整毛发的层数,来做到性能的优化。
2、GPUDriven技术:
为了适配无限暖暖极为复杂的开放世界场景以及植被渲染,我们底层引擎自研了一套适用于PC Console和移动平台的GPU驱动渲染方案,利用GPU的高效并行能力同时处理海量Instance的GPU裁剪和LOD计算,GPU的裁剪是基于我们原创的结合ComputeShader和光栅化裁剪的方法做到每个Instance的精确遮挡剔除,在此结果之上直接使用DrawIndirect和MultiDrawIndirect进行合批渲染,此外我们将部分GPU计算结果以GPUFeedBack的形式回传给CPU做DrawCall的进一步剔除以及Mesh LOD的streaming,在此技术基础上,无限暖暖的开放世界场景已经实现同屏百万颗植被的渲染。
3、骨骼链技术:
碰撞处理一直是布料仿真中的难点,尤其是在有较大运动幅度和较高性能需求的游戏场景中,使得这一问题的解决难上加难。在自研的骨骼链算法和改进的布料算法中,我们用更稳定可控的约束算法来代替耗时且不稳定的传统碰撞算法。以暖暖穿宽松裙子跑动为例,在前处理过程中,我们加入了灵活且软性的驱动约束步骤,使得在大幅度的动作,Cloth的初始形态不会与身体发生严重贯穿。在Cloth求解过程中,通过设置好的自研碰撞刚性约束算法,我们能够严格防止Cloth与碰撞体的贯穿,即使两者的相对速度是比较大的。在骨骼链算法中,我们也加入了多层Cloth之间的碰撞。在这些自研算法的加持下,我们的游戏能做到在快速运动状态下较好的Cloth碰撞效果,同时耗时也是比较低的。
4、实时穿插技术(试衣间搭配):
不同服装之间的相互搭配,会带来不可避免的模型穿插。对此,我们内部自研了一套基于计算几何的算法,这个算法专门针对搭配带来的实时穿插问题。我们的算法能够实时检测主角身上所有部件之间的相互穿插关系,并在一定的规则下对于发生穿模现象的部位进行变形以及必要的隐藏处理,同时我们也支持众多的自定义处理规则,例如小部件的刚体变化和跟随,网格平滑,区域联动处理等等。由于交叉检测的计算极为耗时,而且随着模型的增加相应的耗时也会增多,为了使玩家在随意换装时不会感觉到卡顿,我们用了一套预计算系统来预存一些耗时的计算数据,例如一些辅助的交叉检测数据,防止与人体穿模数据等,从而使得运行时的计算消耗大大降低。经过这一算法模块的处理,不管是头发与帽子之间的发型外露、还是上衣与外套之间的外露问题,亦或是裤子与上衣搭配要实现的收腰问题,都能在较小的反馈时间下得到很好的解决。
在”相片效果“上我们利用UE引擎原生支持的后期效果包括不限于晕影等为照片提供氛围感,也基于后处理过程为相机添加各种好看的滤镜为照片增添色彩。
另外当大喵给暖暖拍照时,可以让暖暖摆出各种不同的Pose,细节上还可以选择让暖暖看向镜头,这里我们综合利用了UE动画的Aim Offset,Control Rig, Blend Space等等功能并自定义实现了部分节点,整体提升了暖暖摆Pose的灵动感。
下载「陀螺科技」APP
获取前沿深度元宇宙讯息