以下文章来源于虚幻引擎,作者BrianCrecente
《研究与战斗》巧妙地结合了回合制策略游戏和第三人称射击游戏,在游戏中玩家将扮演三位仿佛来自20世纪50年代深夜科幻电影的科学家,和一群看起来出自《史酷比》或《德克斯特的实验室》的超自然生物展开战斗。更有趣的是,科学家们还配备了一系列愚蠢的武器,他们要在战斗过程中不断改进和升级它们。
这款包含在线模式和本地多人合作模式的回合制动作游戏由一支四人团队开发。团队位于东京,其成员有着数十年的虚幻引擎开发经验。年,ImplausibleIndustries先后在东京独立游戏节和BitSummit上展示了他们正在开发的游戏,收到了宝贵的玩家反馈并获得了玩家投票奖。
我们与该团队探讨了他们如何将游戏类型、美术风格和开发技术融合在一起,创造出如此有趣的游戏。更重要的是,他们还介绍了虚幻引擎和电子表格对于构思作品及付诸实现的重要性。
ChrisWillacy(上):我从事游戏开发已有23年,我在英国、澳大利亚、中国和日本都参与过3A级游戏和独立游戏的开发。夏天,我喜欢海滩。冬天,我喜欢山区。我深爱着我的家庭和我名叫Monty的猫。
DanielMarkiewicz(中):我也是一名身兼数职的游戏开发者。有些职务很适合我。但大部分都是赶鸭子上架。
KeesGajentaan(下):我是美术师。很高兴见到你!
你们在网站上表明,丰富的虚幻引擎开发经验让你们能够快速创建原型并开发高质量的游戏。能否说说虚幻引擎是如何帮助你们做到这一点的?
DanielMarkiewicz:我不确定我们在这里所说的观点是否也在其他这类采访中被提到过,毕竟虚幻引擎包罗万象,对吧?当我们开始这个项目时,它可能还缺少一些东西(我希望当时的虚幻商城能和现在一样完善!),但如果你想制作一个3D游戏,虚幻引擎将是一个完整的工具箱,能让你在几周内(甚至几天内,取决于你的内容)制作出可用的原型。
创建新游戏玩法功能的原型很容易,特别是有蓝图的帮助。虚幻引擎提供了一些非常有用的示例项目,使原本难以理解的系统变得一目了然。射击游戏示例项目包含了所有有参考价值的信息。
图片由ImplausibleIndustries提供
是什么让你们决定将回合制策略玩法和即时射击玩法结合到《研究与战斗》的制作中?
Markiewicz:总体来说,我们最初想制作一款“完全面向垂直玩家的合作类《X-COM》”,结果发现,等待朋友完成他们的回合感觉很糟。我们制作了一个原型版本,使用同时“点击目的地移动,点击目标开火”的控制模式,但最终出现了许多摩擦,角色的移动路径可能会交叉并导致相互相撞。最后,我们意识到“行动点”和“回合”都只是角色在一个回合中行动时间的抽象概念,所以我们砍掉了中间环节,尝试让玩家直接以第三人称射击模式进行控制。这导致我们偏离了之前所设想的策略类游戏玩法,但也演化出了独特的战术元素。
《研究与战斗》的故事、主角阵容和敌人都具有强烈的20世纪50年代风格。那个时代的三流科幻小说和恐怖电影为你们的游戏设计和美术风格带来了怎样的灵感?
KeesGajentaan:在建立了第一个粗糙的原型后,为了确定《研究与战斗》的背景,我们展开了头脑风暴,当我们决定使用“超级科学家小团队与超自然力量战斗”这一背景后,许多灵感来源便自然而然地闪现出来了。
一支由各色人物组成的小队打倒经典怪物,这听起来就像发生在《史酷比》和当时许多其他汉娜·巴贝拉卡通片中的故事。对《X-COM》的热爱让我们产生了完全以科学家为主角的想法,我们希望玩家能够开发出许多酷炫的武器和装备,让战斗和垂直穿越变得新颖有趣。
我们采用了脱离现实的诙谐风格,期待创造出更多别出心裁的疯狂内容。玩家可以使用火箭靴、名为“Propellor”的便携式蹦床、MaxPlank(一种悬浮滑板)和其他几种支持短距离传送的设备到达更高的地方。玩家还可以像卡通片中那样,从遮阳棚和场景中的其他物体上弹起。
很多武器也是卡通风格,玩家可以用粘性火箭将超自然的敌人推到空中,使用超立方体送他们上天,或是将一架来自另一个维度的钢琴扔到敌人身上。
我们还需要一辆车在大陆上驰骋,完成不同的任务。就像那个时代的所有卡通片和电视剧角色一样,我认为我们的英雄团队也需要一辆酷炫的汽车来东奔西走,智能飞车RADvan因此诞生。
简单地说,游戏设计和让游戏变得有趣的愿景在很大程度上影响了美术设计。起初我们并没有打算制作一款《史酷比》或《德克斯特的实验室》风格的游戏,但这些卡通片中的许多元素很符合游戏的需要。
图片由ImplausibleIndustries提供
听说在东京独立游戏节和BitSummit上展示游戏时,你们展开了详尽的玩家调查,你们从这些游玩后调查中得到了哪些有助于改进游戏的灵感?
ChrisWillacy:这两次展会上我们得到的反馈几乎都是正面的,因此我们不必删除或重构游戏的核心部分,但还是有一些必须得到及时修复的明显问题。例如,武器“TestTubeLauncher”的初始版本能够造成非常强大的爆炸,但重新装填的速度很慢,它的替代射击模式能够根据情境提供掩护。我们发现爆炸模式过多地误伤友军,而掩护模式则没有得到充分利用。有很多诸如此类的问题。游戏的主体已经足够完善,但细节还很粗糙。它还需要进一步的改动。
每当观察新玩家试玩游戏时,你都能学到一些新东西。一定程度的自信是必要的,但你需要跳出固定框架才能理解新玩家的行为。你需要努力摆脱那种让你无法接受自己一再失败的骄傲。获得新视角至关重要。如果没有他们,我们最终只能以少数人的体验和感觉为参考制作游戏,这将是一场灾难。
最终,这些反馈让我们明白自己的方向是正确的,但游戏还需要额外的辅助系统来帮助玩家理解状况。虽然这并不轻松,但我们有能力随着时间的推移有组织地地消除这些障碍。
Gajentaan:在亲自演示游戏后,我们发现需要花费大量时间面对面地解释游戏中独特的时间机制。展会结束后不久,我们便制作了一项独立的教程任务,无论是在演示版本还是完整版本的游戏中,都能从主菜单访问该任务。如果你在家玩游戏,想要和来访的朋友在本地合作模式下玩几关,他只需要花几分钟时间游玩教程,就能完全理解游戏的机制。
Markiewicz:我们还了解到,人们普遍认为误伤友军是很滑稽的事。人类真可怕!
图片由ImplausibleIndustries提供
你们是如何将《研究与战斗》的直接控制方法运用到战略地图上的?
Gajentaan:战略地图部分的游戏机制与回合制行动任务的机制非常一致。和在任务中一样,玩家需要管理自己的时间,只要他们不移动,时间就会暂停。
Markiewicz:玩家在世界地图上驾驶,建立防御,同时进行研究。一段时间后,超自然大军将得到一个回合来强化他们的区域,并可能发动入侵,然后再次轮到玩家。最初,我们计划将这款游戏设置为四人游戏,要保持所有玩家的沉浸感,使他们感到有趣,这种方法是必需的。回想起来,如果我们知道最后会仅支持两人游玩,那么这部分游戏内容可能会大不相同,因为我不认为实时元素还会那么重要。但最终,这种方法至少与游戏的实时/回合制理念保持一致,并且在与同伴一起增强装备和选择下一个任务时也很有效。
游戏丰富多彩的美术风格如同直接取自漫画书,是什么让你们决定采用这种方法?虚幻引擎对你们做出这一决定起到了什么作用?
Gajentaan:这一决定兼顾了艺术性与实用性。
我们起初就知道游戏涉及的规模将非常大,而我们的团队却非常小,因此我需要想出一种能够减少资产创作时间的美术风格。我希望在后续制作中不用担心纹理预算的问题,也希望在不同关卡中重复利用资产。
多年来,我一直想制作一款具有独特卡通外观的游戏。当我着手开发美术风格时,我思考了卡通片中的着色与游戏中的着色有何不同。在3D游戏中,我们通常会为背景对象逼真地上色,然后使用游戏中的光线照亮它。但在卡通片里,当然是用需要的颜色上色。例如,在迪士尼的《阿拉丁》中,白天的街道和建筑被画成橙红色,在夜间场景中则被画成蓝色。
所以我开发了使用较少纹理的着色器,它们将使用参数帮助我确定颜色。着色器还会根据场景中定向光源的角度和法线贴图创建卡通着色效果,并让我为物体的主色、高光色和阴影色选择准确的颜色。
这开启了许多可能性,因为我们可以在需要的时候改变颜色,而不再局限于纹理颜色。使用材质参数集合和光照场景,我们可以全程用一套颜色绘制白天的场景,再改变颜色让它成为夜间场景。这样做有一个额外的好处:在一般玩家看来,“橙色石头”与“紫色石头”是不同的对象,在某种程度上掩盖了对象正被重复使用的事实。玩家还会重复访问游戏中的某些区域,所以白天和夜间的不同配色方案也有助于增加这些区域的多样性。
基于参数的上色技术也适用于角色。游戏中僵尸的皮肤颜色和服装颜色是随机的,玩家也能完全定制他们的超级科学家团队。
图片由ImplausibleIndustries提供
是什么让你们决定使用虚幻引擎制作《研究与战斗》?
Willacy:我们中的三个人总共有三四十年的虚幻引擎使用经验,我们用过多个版本,这个问题甚至不需要讨论,使用虚幻引擎是顺理成章的。在过去的6年里,我们一直在用自己的虚幻引擎专业知识帮助其他工作室,这为《研究与战斗》打下了基础,你参与的每个项目中都能让你学到更多。当我们学到更新的或更好的方法时,在生产初期所做的东西可能会在开发阶段被重做一两次。
引擎中是否有某些特殊元素吸引你将其用于游戏中?
Markiewicz:跨平台功能。在日常工作中,我们一直使用它来帮助客户完成他们的项目。
Willacy:我发现,只要我能够理解时机和原因,虚幻引擎就能从各学科的日常数学任务中剥离出许多实现方法,这对我这种不擅长数学的人来说非常重要。
Gajentaan:虚幻引擎一直美术师的得力工具。它提供了许多方式,让你用相对较小的简单源资产池为内容添加多样性。
你们克服了哪些设计上的挑战?
Willacy:我认为,我们遇到的大多数设计挑战都是因为我们的团队规模太小、预算有限,却想要制作一款雄心勃勃的游戏。
对我来说,在设计大量武器、装备和游戏玩法Actor时,最大的挑战是让它们无缝衔接在一起。有许多灵机一动的游戏玩法成为设计的一部分,只是因为武器和装备之间产生了一些我们没有预料到的相互作用。
游戏中有9种武器,每种武器有2种射击模式和8种升级组合,另外还有9种装备,每种装备有2种升级选项,它们之间会以不同的方式产生相互作用。这些数字让我头疼。幸运的是,团队不是只有我一个人,其他人都有着敏锐的设计意识,我们的团队足够小,能够相互交流想法并做出贡献,而不会阻碍工作流程。
一个具体的例子是我们将所有战斗数据集中在电子表格中。作为唯一负责设计关卡和编写敌人生成系统的成员,我必须编写一些能够充实战斗并快速迭代的内容。使用电子表格和虚幻引擎的数据导入系统,我能够快速查看战斗负载过高或不足的问题。我可以将它们绘制成图形,创建UE4可读链接的数组,并在导入之前对它们进行验证等等。这将在项目过程中节省数周或数月的工作时间。当你采用数据驱动的方法时,UE4是一个很好的选择,能让你节省很多时间。
另一个例子是,我在团队中也负责音频工作,但是我并没有那么多时间制作背景音乐,所以我制作了一个动态音乐系统,它会根据当前回合的操作者、控制的角色、游戏玩法事件等因素改变音乐。我首先通过虚幻引擎的时间合成器实现了这个系统,然后改为使用Quartz——这是我期待已久的功能。它让我能够创造出一直在我脑海中盘旋,但由于种种原因15年来一直没能完成的东西,这让我非常满足。如果可能,我希望在未来的项目中进一步使用它。
Markiewicz:我们游戏的核心要素之一是当角色的时间耗尽时,他们便会被冻结。不管他们是在奔跑、飞行、坠落,还是在变成布娃娃状态的过程中,这都不重要。他们需要停止当前的动作,但能够在收到通知后立即恢复行动。这一挑战比我预期的更严峻,特别是接入多人在线模式时。
例如,如果你通过爆炸把狼人送上天(为什么要这么做,你这个冷血动物?那个狼人可是有两个孩子的单亲妈妈!),她最终会被冻结在半空中,姿势完全由布娃娃物理系统决定。游戏中会同时出现许多角色和爆炸,这会产生大量冻结的布娃娃。
在我们实现这个系统的时候,通过网络同步它们还不是很可行。我尝试了一些方法,但都没有奏效,尤其是在网络条件不好的情况下。问题是,在大多数游戏中,只有角色被杀死时才会显示为布娃娃状态,仅仅作为一种装饰。
而在我们的游戏中,你仍然可以花时间去射击在爆炸中被冻结的狼人头部。(你这个冷血动物。)最终,我将用来检测武器是否命中的客户端设为权威来解决这个问题。也就是说:由客户端判断命中与否并告知服务器,而不是像通常那样由服务器判断。如果这是一款对抗性游戏,就会因此出现大量潜在的作弊问题,但我们不用过于担心。最重要的是,如果客户端玩家射击一个冻结或飞行状态的敌人的脑袋,他们一定会击中,即使那个脑袋的位置在房主看来略有不同。因为射击玩家的体验才是最重要的,我们并没有非常在乎房主是否会觉得有点奇怪。
图片由ImplausibleIndustries提供
在游戏开发过程中,你们使用了哪些PS5和XboxSeriesX/S的特性,它们对你的创作有何帮助?
Markiewicz:在开发过程中,新主机的登场太迟了,没有对设计产生什么影响。也就是说,我们在PS5平台上添加了一些自适应触发器支持,添加活动卡让我们能够在增添色彩的同时推动玩家朝着正确的方向前进。在XSX/S上,我们没有使用任何明显面向玩家的新功能,但确实利用了一些最近新增的SDK功能,简化我们的工作。当然,我们已经为新主机调整了设置。使用UE4的设备描述即可轻松做到!
在面向两代平台、PC和任天堂Switch开发游戏时,你们遇到了哪些挑战?你们是如何克服它们的?
Markiewicz:幸运的是,我们的视觉效果设计允许我们使用相当精简的内存配置,并且不会像某些拥有逼真场景的游戏一样对图形硬件造成负担,所以进军(或者说停留在)多平台并不是那么具有挑战性。当然,在Switch上,我们主要遇到了内存、CPU和GPU方面的瓶颈。我们使用动画预算插件来帮助维持CPU在敌人回合中的合理表现,并做出了一个艰难的决定:在Switch上禁用动态阴影,以保持视觉保真度和帧率的一致性。
次世代主机也带来了一些网络问题。特别是在PS5上,我们必须自己实现好友会话寻找机制。同样,Switch上的系统级好友邀请功能也是最近才添加的,我们当时也必须自己实现它。幸运的是,UE4的在线子系统架构非常一致,并且易读性强,所以我们基本上只需要看着索尼和任天堂的文档,模仿现有的内容。但我不认为现在参与UE4(或UE5)项目的人仍须担心这些问题。更何况还有Epic在线服务!
Gajentaan:尽管我们有多年经验,但从未在这么多平台上(PC、PS4、PS5、XboxOne、XboxSeriesX和Switch)同时开发游戏。当然,游戏需要同时支持Switch的掌机模式和TV模式,所以你可以把Switch当成两个平台。更重要的是,其中一些平台还有着不同的版本,所以除了它们的基本型号外,我们还需要针对XboxOneX、PS4Pro和XboxSeriesS调整游戏,以创造最佳体验。最后,我们的游戏支持分屏合作玩法。
值得庆幸的是,UE4有着大量的可延展性参数和设置,可以为每种可能的场景调整内容和渲染输出。我将这些情况称为场景,因为分屏的设置几乎总是与全屏不同。
为了不让自己陷入困境,我在电子表格中记录了所有这些参数和值,这样我就可以看到各个平台/场景之间的对比。当然,我研究了每个参数的作用以及它们对视觉效果和性能产生的影响。
对于一些平台,我们使用动态分辨率来解决GPU方面的问题。对于低端硬件上的场景,我们使用质量切换节点简化材质,并通过细节模式隐藏非必要的细节网格体和粒子。LOD距离、阴影、后期处理质量、植被密度和屏幕分辨率等许多其他内容的大小都可进行更改,以最佳适配每个场景。
图片由ImplausibleIndustries提供
关于次世代硬件和虚幻引擎的长期前景,有哪些方面最让你们和团队感到兴奋?
Willacy:我个人很期待尝试UE5中的MetaSounds。我喜欢处理音频,希望人们能够从《研究与战斗》的音频中感受到这一点。MetaSounds似乎能让玩家更加沉浸于与游戏玩法浑然一体的音效。
在硬件方面,我期待着有一天能够不用那么关心制作游戏所必需的忙碌工作。我认为我们已经在这条路上迈出了第一步,特别是这种新硬件已与UE5中的一些功能保持步调一致。
Markiewicz:Nanite与现代主机(和PC)的快速加载时间相结合,让我对游戏玩法规模(及其动态变化)的潜力感到非常兴奋。