游戏开发 | 澳大利亚游戏音效巨头Firelight Technologies全面采用Helix Core,助力打造热门游戏音效

Firelight Technologies是一家总部位于澳大利亚墨尔本的公司,主营业务是电子游戏的音乐和音效制作,像《极限竞速》系列、《Roblox》和《我的世界》等爆款游戏的音效就出自该公司。其行业领先的工具FMOD为团队提供了一个强大的平台,用于实现交互式和自适应的音乐和音效设计。

为了创造一款可赋能工作室的工具,Firelight Technologies选择了游戏开发行业的版本控制标准——Perforce Helix Core,以帮助支持他们的团队开发,并将其内置到为客户提供的解决方案中。

“如果你在制作游戏,你就得使用Perforce Helix Core。这就是我们的口头禅。”
——Mathew Block
Firelight Technologies技术总监

创建实时音频的解决方案

Firelight Technologies的目标是帮助音效设计师创造独特的音效体验。因为游戏音效远不只是添加音乐和特效那么简单。Firelight的解决方案可以在游戏内部运行,并进行实时渲染。

为了打造这款世界领先的工具,Firelight需要一个坚实的基础。Mathew Block说:”我们在2004年开始使用Perforce Helix Core,是因为我们需要源代码控制。”使用源代码控制可以让团队对功能进行迭代,并更轻松地与Unity和Unreal等游戏引擎集成。他们可以对产品的多个方面进行修改,而不会互相影响。

“Perforce能处理所有‘基本的东西’,这对于一个由多人共同开发产品的团队来说至关重要。”
——Mathew Block
Firelight Technologies技术总监

Perforce Helix Core历史记录的优势

Firelight选择Perforce Helix Core进行源代码控制的主要原因之一是能够回溯历史。在进行更改时,它会协调代码更改,确保工作不会被覆盖或丢失。Block解释说:”Perforce Helix Core的历史记录非常宝贵。它可以保护源代码,管理签入和合并。我们经常参考它。”

有了这些历史记录,团队中的每个人都能了解某个功能为什么会以某种方式运行、是谁创建的、何时创建的。Block说:”对我来说,最重要的一点就是能看到以前发生的事。我发现自己经常追溯历史,因为我们整个产品的历史都在Perforce中。我们无论如何也不会改变这一点。”

积累的历史记录可以帮助Firelight Technologies避免重蹈覆辙。团队可以进行试验,因为他们知道万一出了什么问题,总是有一个备份。

混合开发环境

Firelight鼓励团队成员按照自己喜欢的方式工作。他们可以使用自己喜欢的任何工具来完成任务。某些人会尝试使用Git。“我们办公室有很多人都在使用Git。他们在本地有一些小的Git存储库。但当他们完成迭代后,就会将其提交给Perforce。” Block解释道。

在Perforce中保持单一可信数据源有助于团队保持一致。每个人都知道他们在做什么。

当被问及他们是否会考虑切换到另一个版本控制系统时,Block说:“我还真没发现有什么强烈的理由要更换。”说到其他系统,比如Plastic SCM,他说:“Plastic SCM通过语义合并在差异化方面提出了一些有趣的解决方案。但那只是一个额外的工具,核心引擎才是我关注的重点,还没有什么非换不可的理由。”

Perforce Helix Core为团队提供两全其美的解决方案——使用自己的工具、自己的方式,并将一切保持一致。

通过卓越的分支机制加速开发

为了帮助团队加快进度,Firelight使用Perforce Helix Core中的分支机制 Perforce流。他们随时都有两到三个活动流。有了Perforce流,从管理员到开发人员都不用担心冲突问题,也不用再猜测变更将流向何处。

“大约在九年前,我们从分支转向了Perforce流。我们想要有更智能的分支和更清晰的变更流程。”
—— Mathew Block
Firelight Technologies技术总监

他们收获了智能。Perforce流支持着他们的分支模型,使他们能够保持主流稳定,同时仍然支持过去的版本。修复和补丁可以在没有重构风险的情况下推出。Perforce流创造了自然的变更流。

“Perforce流是正确的工具,帮助我们管理一切。流图可以帮助我们了解所有的布局,并显示了合并的流程”。Block进一步解释说:”它简化了很多维护工作,并管理所有这些不同的版本,有助于我们开发出更好的软件。”有了Streams,每个人都能直观地看到代码是如何演变的。

开发人员可以查看流图,知道如何分支,在哪里合并。对于像Block这样的技术主管来说,他能够看到组织的所有布局,并有助于尽量减少需要支持的分支数量。”采用Perforce方法,我们遇到的问题变少了”。

将Perforce Helix Core构建到Firelight Technologies中

在Firelight,Perforce Helix Core不仅是他们开发环境的一部分,而且还内置在他们的产品中,使得客户能够充分利用这些优势。

Block说:”我们还有另一种使用Perforce的方式,那就是通过我们的软件本身。我们的工具有自己的项目格式,可以管理音效设计师制作的所有元数据。作为其中的一部分,我们还集成了项目管理的功能。这些项目的体量可能相当庞大,所以最终产生很多很多的文件。”

大量的文件就意味着要使用Perforce Helix Core进行版本控制。因为它是唯一能支持大型文件和超大型文件的系统,而这正是游戏开发的标准配置。Block解释说:”我们的主要源控制集成是Perforce Helix Core。它让团队成员签入和签出项目,以智能地管理所有文件。”

Firelight如何集成运作?

游戏开发者如何使用Perforce Helix Core + FMOD?有两种集成方式可供选择。一种是通过用C++编写的Perforce API,该API直接内置在工具中。另一种是调用P4命令行,用Javascript进行编写。这两种集成的主要理念是建立一个模块化的可扩展框架。

像FirelightTechnologies一样开发

为了保持团队的顺畅运作、保护历史记录并提供优秀的游戏开发工具,Firelight Technologies选择了Perforce Helix Core。“我们选择Perforce是因为我们对其非常了解。我们按照Perforce的规范构建了一切。”Block表示。

如果您也想开发一款游戏,不妨尝试使用Perforce Helix Core源代码控制工具,助力您的游戏开发。立即联系Perforce中国授权合作伙伴——龙智,可申请免费试用:

官网:www.shdsd.com

电话:400-666-7732

邮箱:marketing@shdsd.com