Freejam 通过用户友好型开发战略培养用户对 Robocraft* 的忠诚度

作者:Karen Marcus

下载 PDF

Robocraft* 是一款需要玩家参与创建游戏内容的在线游戏即服务 (Games as a Service)。 具体而言,玩家需要建造在游戏中充当主要代理的机器人。 由于需要玩家共同创建游戏 — 而且许多玩家年仅10 岁,使用比较老旧的技术玩 Robocraft 游戏 — 因此对 Freejam 开发人员来说,用户焦点一直是创意流程的核心。 在早期开发阶段制定的关键编程和设计决策都是为了建立用户忠诚度、鼓励尽可能多的用户访问,同时为他们提供视觉效果好、趣味性强的游戏。 这些决策为开发商带来了挑战,但两年后,Freejam 依然实现了他们的目标:培养忠诚的用户,开发出视觉效果好、趣味性强的游戏。

初始阶段

Robocraft 是 Freejam 公司于 2013 年推出的在线第三人称射击 (TPS) 游戏。 游戏玩家需要使用单独的模块建造可以相互打斗的机器人。 玩家可以组队,游戏的目标是摧毁尽可能多的机器人对手,并/或占领敌军基地。

Example of unique robot - plane

图 1: 独特机器人示例 — 飞机

与类似的建设游戏一样,用户内容生成至关重要。 Freejam 联合创始人兼首席技术官 Sebastiano Mandalà 解释说: “开始时,我们知道这款游戏一定会富有创意。最后我们拥有 300 个不同的立方体以供玩家创建造型优美,战斗力强的独特机器人。” 图 1 和图 2 所示为独特机器人示例。

Example of unique robot - ship

图 2: 独特机器人示例 — 船

为了确保这种级别的用户内容生成,由五人组成的原始 Robocraft 团队必须决定哪种技术能够支持他们经济高效地进行编程。 团队选择了 Unity*。 Mandalà 表示:“我们没有内部游戏引擎,这意味着我们还没有开发特定于平台的代码。 我们就直接使用了 Unity [Technologies] 的技术,它兼容许多平台。

Unity 符合标准;但团队在实施编程细节时遇到了挑战。 “例如,” Mandalà 说,“由于专门启用了数千个立方体,因此大多数显卡很难在屏幕上渲染所有这些立方体。 最后,我们不得不采用一些技巧来对图形和物理对撞机进行批处理,以确保其顺畅运行,特别是在低端设备上。”

除用户生成内容外,这种针对低端玩家技术的考虑也非常重要。 Mandalà 表示,“Robocraft针对 10-14 岁的孩子,以及稍长一些的青少年和成年人。 但孩子通常不会拥有性能强大的计算机,因此我们不得不对游戏进行专门设计,以使其兼容较旧的技术。”

范围广泛的编程

为了培养忠诚用户群,Freejam 希望使用不同计算系统的玩家都可以访问 Robocraft。 初始编程涉及确定旧显卡和新显卡,包括集成显卡和非集成显卡。 目前,该团队使用 Unity 4 和 Microsoft DirectX* 9 进行游戏编程。

Mandalà 表示:“我们知道针对最新机器的编程‘更酷’,可能以后会专注于这方面,但目前我们希望全面控制比较低端的机器。 例如,我们可以对更详细的对象进行定义,比如着色、软阴影等,以便增强游戏的视觉效果。 这将涉及迁移至 Unity 5 以及创建面向 DirectX 11 或 12 的特定版本。 我们将针对速度更快的机器来改进本身已经非常不错的游戏。 这是一个持续的过程,并且是我们未来计划的一部分。” 目前,Robocraft 能够根据每位玩家的计算资源进行调整,检测系统规格(比如 CPU 和 GPU 填充率)并相应运行。

图形设计

平面设计带来了更多挑战。 Mandalà 解释说: “由于玩家建造机器人,因此每个机器人都有其独特的形状。 最初,借助 Unity 4,我们分别渲染每个立方体,并为其分配相应的对撞机,但渲染和物理引擎在许多机器上的运行不佳。 由于有数千个基元,Unity 4 性能远远不够,所以我们不得不重新设计代码,以便从容应对我们的场景。 我们遇到的另一个挑战是,在战斗过程中修改机器人的形状。 采用新算法后,绘制调用次数大大减少,对撞机也经过了集群和简化。  最后,在游戏上线之前,我们在设计流程中加入了这些优化。 图 3 所示为战斗中被摧毁的机器人的形状变化。

Robot being destroyed

图 3: 被摧毁的机器人

为了面向拥有嵌入式 GPU(使用 DirectX )的 PC 优化该游戏,团队将绘制调用的次数降至最低,从而尽可能地用一个绘制调用对组成一个机器人的所有立方体进行批处理。 填充率优化对集成显卡至关重要。为了对其进行优化,团队实施了一种算法以动态跳过对被其他立方体遮挡的立方体各个面的渲染。 最后,该游戏利用 Unity LoD 系统,以减少针对远离摄像头的机器人的动态部分的绘制调用次数和多边形数量。

屏幕分辨率带来了一些问题。 Mandalà 说:“屏幕分辨率与填充率有关。 功能强大的新显卡可以轻松处理高分辨率,而传统显卡会受到严重影响。 为了解决这一问题,我们实施了多显卡分辨率设置,从 ‘最快’ 到 ‘最佳’,以及这两者之间的众多设置。 最轻模式中包含特别优化,而在最重模式下,可以针对最新显卡启用更多图形细节。 图 4 所示为快速模式下的游戏。 已启用正向渲染和阴影。 最高设置中提供延期着色和相对后处理效果。

Optimized screen resolution

图 4: 优化的屏幕分辨率

Mandalà 强调: “凭借 Unity 5 以及在新引擎中实施的出色优化,我们计划在物理和显卡方面添加更多特性,以显著增强游戏的逼真效果。”

英特尔的参与

为确保游戏能够在英特尔® 架构上顺畅运行,Freejam 团队在 Unity 中间件上运行 Robocraft。Mandalà 表示,对英特尔® 平台来说,它是一款非常出色的引擎。 他还表示:“不过,我们在游戏中引入了许多自定义优化,以提升在英特尔平台上的性能,而且,我们还针对 32 位和 64 位系统进行了优化。 在不久的将来,我们将更加注重如何发挥英特尔® 多核技术的优势,更好地为拥有高端 PC 的玩家提供支持。”

团队还使用了多种英特尔工具,尤其是用于分析和质量保证 (QA) 的工具。 Mandalà 说:“英特尔® 图形性能分析器【英特尔® GPA】帮助我们显著优化了性能。 性能对我们至关重要,因为我们发现,帧速率和玩家保留率之间有很强的关联性。 我们使用英特尔 GPA 诊断瓶颈并对优化游戏,以提高帧速率,进而保留更多玩家。”

英特尔 GPA 等工具可告知团队如何最大限度地优化渲染代码。但 Robocraft 受限于 CPU,而非 GPU。 Mandalà 指出:“我们在 CPU 上进行优化,同时尊重 GPU 正在运行的任务。” 他补充说:“英特尔始终提供一流的支持! 这些工具非常出色,特别是英特尔 GPA,但我最终的愿望是同时使用 VTune 和 Unity。”

测试和后期开发

扩展上线之前,该团队运用一个包含多次迭代的内部 QA 流程对游戏进行测试。 该流程包含针对各种英特尔 PC 的广泛测试平台,从基于英特尔® 酷睿™ Duo 处理器的 PC 到基于英特尔® 酷睿™ i7 处理器的 PC。

Robocraft 的游戏即服务性质使团队可以在封闭的用户环境下测试部分特性,从社区广泛收集各种反馈。 社区反馈会始终得到密切关注,因为它是开发流程的重要组成部分。

Freejam 是一家自发布 Robocraft 的独立开发商。 Mandalà 表示:“随着游戏的演进,我们的社区正在逐步扩大。 我们在市场方面大获成功,因为我们与英特尔、Steam* 娱乐平台,以及其他合作伙伴保持了紧密合作,吸引了全球数百万玩家。”

该团队还计划继续改进这一游戏,包括添加新的游戏模式、创意选项、社区与公共设施,以及其他元素。 虚拟现实也将成为该团队即将探索的领域。 Mandalà 指出:“我们将继续依靠英特尔的平台、支持和工具进行开发、测试和优化,以确保游戏与 CPU 和 GPU 技术方面的进展保持一致。 处理能力越强,游戏表现越出色,‘最佳’设置也越好。 未来,举个例子,我们将使用英特尔多核架构和多线程代码,降低游戏对 CPU 的依赖,进一步提高游戏的速度和图形性能。

Freejam 还正在与英特尔商讨如何提升双方品牌和产品在各自社区中的知名度。

未来计划

Robocraft 用户社区一直是 Freejam 发展的重要驱动力。 Mandalà 表示:“我们始终相信这款游戏,直觉告诉我们,它一定会成为一款出色的游戏。 我们已经开始有所收获,因为热情的社区玩家表示他们非常喜欢这款游戏。 事实上,我们每天都会与大量玩家直接沟通和交流。 他们有时候讨厌我们的游戏,有时候喜欢我们的游戏。 与用户一直保持联系是一项艰苦的工作,但同时也会带来许多快乐。”

Mandalà 表示,用户社区互动能够推动游戏更新的步伐。 “我们有这些好的想法,并与社区分享和讨论我们的理论。 这就是我们发展如此迅速的原因。” 技术革新步伐在提高更新速度方面同样发挥着重要的作用。 Mandalà 表示:“高性能硬件的价格下降越快,我们就能越快地支持社区使用更好的显卡畅玩 Robocraft,因为新架构支持游戏进行更高画质的设置。”

游戏的发展意味着 Freejam 的发展。 公司创立之初,只有一个由五人组成的团队,在短短的两年时间里,公司的员工数量已增至 50 人。 Mandalà 表示,扩大规模非常必要,因为团队希望实现很多功能特性,但迁移极具挑战。 “这是一个很好的挑战。 我们必须增加公司的结构,但这种尝试有着积极的意义。 我们还需要加大营销力度,扩大投资。”

得益于这种增长,我们开发出了优秀的游戏,并收获了忠诚的追随者。 Freejam 团队注意到,自从 Freejam 发布 Robocraft 后,市场上相继出现了几款概念类似的游戏。 Mandalà 指出,游戏将继续改进,并满怀希望地说道: “由于 Robocraft 是一种在线服务,因此开发会一直持续下去。 我们的开发过程已经持续了两年多,但仍有大量工作有待完成!”

Mandalà 建议希望创建类似在线游戏即服务项目的开发人员意识到,这将是一次漫长而又艰辛的旅途。 他说:“希望不断地开发新的内容、改进功能、鼓励形成健康的社区反馈循环,并针对重要平台和技术开展合作。 不断分析游戏和玩家行为、试验创意,并改善包含最小可行产品迭代的服务。 推动获得成功的的创意,重新构思或消除不可行的创意。 最后,预见意料之外的事情,获取尽可能多的数据,并将数据融入创造力和直觉,以加快实现您与您的社区正在构建的游戏愿景。”

Freejam 团队非常欢迎其他开发人员与我们联系,非常愿意与您当面或通过 Skype* 共同讨论项目。 Mandalà 的 Twitter 帐号为 @sebify,可以随时联系他。

总结

通过使用 Unity 和 DirectX,并与英特尔合作,Freejam 开发了一款在线游戏—Robocraft。它吸引了各个年龄段的玩家,适用于各种计算技术。 由于开发团队更多地关注可用性,而非外观,因此他们制定了许多不同的决策。 例如,游戏能够兼容较旧的技术,并适应不同玩家的计算资源。 他们对这款游戏进行了优化,以确保旧系统也能够处理图形。 Robocraft 的开发仍在继续,Freejam 预计未来将发布更多令人激动的游戏更新。

关于 Freejam

Freejam 位于英国朴次茅斯,由五位坚信一种简单游戏理念 — Robocraft 的年轻人创立。 他们积累的传统开发经验加起来长达 52 年,但他们完全摒弃了这些经验。 凭借出色的创意,秉承全新的精益创业理念,他们自由地进行创新。

他们组建团队,是为了证明真正令人惊叹的游戏可以通过试验和演进创建而成。 五名团队成员都是专业游戏开发人员,技术熟练、做事有条不紊,并采用独立创作方式。 公司规模很小,但他们能够快速响应,倾听玩家的反馈,决策果断,勇于尝试新事物,并高效地创建游戏。 如同音乐家从只有几个和弦的简单即兴演奏开始,无拘无束地进行歌曲创作,Freejam 团队开发出了一款已演变成经典佳作的游戏。

开发人员所采用的方法离不开与玩家之间开放、透明的互动,他们深知,如果没有各位玩家的反馈,他们根本无法改进这款游戏。 他们不知道 Robocraft 最终走向何方,但这正是趣味所在。

有关编译器优化的更完整信息,请参阅优化通知