Trivia Crack如何在多个平台一次性着陆?

Etermax选择了Unity来简化开发,访问灵活的工具,以及同时输出到iOS和Android。

Etermax:Unity开发人员案例分析

一家非常成功的工作室如何决定从双轨本机代码开发路径转移到单一的跨平台工具? 成立于2009年的Etermax是一家大型工作室,其因非常成功的Trivia Crack游戏(在西班牙市场中为Preguntados)而闻名遐迩,该游戏具有超过5亿的不同玩家。 请继续阅读,了解他们为什么在Unity上整合了他们的开发。

项目

在一个开发平台上统一多个团队,同时改进市场领先的游戏

目标是

为美术师消除冗余工作流程并利用Unity丰富的工具集

平台
项目工作人员

Trivia Crack 40(Unity 前);Trivia Crack 2:15(使用Unity)

公司

超过220,位于阿根廷布宜诺斯艾利斯(总部);乌拉圭蒙得维的亚;德国柏林

当他们开始时,Etermax并行构建了iOS和Android版本的Trivia Crack,并且对于每个版本均使用本机代码。 但是,维护多条开发轨道的开销很大。 由于Unity具有“一个代码源,多个输出”的优势,因此转向Unity有诸多好处,并且Unity深受Etermax自己的一些开发人员和游戏工作室同行的欢迎,随时间的推移,这些使他们有很好的理由进行这种转变。

结果:

  • 推出后大获成功,第一周下载量达到500万;位列美国最受欢迎益智游戏前5名。
  • 单个代码库,可快速导出到多个平台:移动、Web或PC
  • 更小的团队和更快的原型设计可实现更高效和更具创造性的开发
  • Unity的预制件资源和动画系统为他们提供了许多艺术自由和节省时间方面的好处
  • 可访问Unity Asset Store,Unity Asset Store提供成千上万个免费和价格合理的资源,可为Unity创作者节省大量的时间和精力。 

他们的用户喜欢Question Factory

CEO Maximo Cavazzani使Etermax从一系列文字游戏开始,其中最成功的游戏 – Aworded Crack(原名Angry Words)– 曾是Apple Store的2012年最佳游戏。他们还与Mattel合作推出了Pictionary的移动版本。 “在推出三款成功的游戏之后,我们开始考虑做一个益智类的应用,2013年我们在拉丁美洲推出了Trivia Crack。”

但为了保持对益智游戏的兴趣,开发新颖的内容是一项巨大挑战,尤其是本地化内容。 “例如,如果你住在墨西哥,那么你不希望照搬西班牙用户的内容”,Maximo说。 通过集思广益想出了一种独特的方法:设计让区域用户创建内容并提供自己问题和答案的游戏。 被称为“Question Factory”的这个功能非常受欢迎,自2014年12月起,Trivia Crack连续60天成为Apple Store下载量最大的应用。

由于这种成功,Etermax已成为拉丁美洲发展最快的游戏开发公司。 Cavazzani很快就指出了他们实现惊人增长的原因:“Etermax不是一家游戏公司,而是一家‘好点子’公司”。

保持两个单独版本的痛苦

尽管Trivia Crack iOS和Android版本是同时推出的,但Etermax的开发被完全分开,一个团队使用Xcode,另一个团队使用Android Studio。 Etermax必须针对每个平台寻找具有相应专业知识的人才,团队从不协调开展工作,不同的错误影响不同的平台,尽管最终产品看起来几乎相同,但它们可能由两家不同的公司构建的。

此外,像轮盘赌轮这样需要触觉传感器的功能很难使用本机代码进行编程。 诸如此类的问题使Etermax考虑抛开他们的本机工具,采用新的跨平台开发平台。

据Etermax技术所有者Pablo Iacopi称,“我们首先测试了libGDX,这是一个很好的开源库,但我们从不确定它的兼容性。 其缺点是,它有一个非常陡峭的学习曲线,你必须拼凑自己的GUI”。他们还考虑使用React Native,这会使他们基于现有的平台特定代码进行构建,并且对于新元素,他们使用一个公共逻辑层,然后导出到不同平台。 但这并不足以统一开发,这是Etermax的主要目标。

他们为什么选择Unity

许多Etermax开发人员拥有Unity经验,而Etermax了解到Unity是一个日益受欢迎的平台,他们的许多业界同行已充满热情地部署了该平台。 Etermax工程副总裁Gonzalo Huertas说:“看到其他公司已经与Unity合作给了我们很大的信心,对于推荐了该平台的我们自己的开发人员,我们信任他们,所以我们试了一下。” 实际上,他们的Trivia Crack 2首席开发人员是一位Unity专家。

他们开发了一些原型来测试速度和性能,其结果起到了决定性作用。 Gonzalo指出:“对于拥有Android或后台经验的开发人员来说,转到C#非常简单,而对于其他团队来说,转换到Unity也非常简单。 我们选择了Unity来简化我们的流程。 我们现在只有一个开发工作流程,而不是继续在两个不同的代码库上进行开发,现在我们能够轻松从相同代码库输出到许多不同平台。”此外,Unity还整合了设计任务,以便使开发人员能够在以后无需从其他工具导入便可修改图形元素。

重要的是,转换到Unity可实现更快的原型设计和更小、更具响应性的团队,这从根本上改变了公司的游戏开发理念。 据Pablo称:“过去,我们会尽可能润色游戏来产生制作候选版本。 现在,我们创建最小可行产品(MVP),然后收集广泛指标。 这有助于我们创建更丰富的游戏。”

来自预制件资源和动画系统的许多好处

通过使用Unity 2018.3,Pablo透露说:“对于我们来说,一个非常重要的Unity功能是能够嵌套预制件资源,因为这大大简化了构建可视化界面的过程。 而且这不仅仅是针对角色而言 – 我们在不同的场景中有很多能够自动更新的常用小部件。”通过将小部件构建为预制件资源,Etermax能够进行单个代码更改,并且可同时更新所有嵌套的资源。 他补充道:“Unity能够在运行时构建字形图集 - 其动态字体功能,这可真正帮助我们处理中文和日文字符集。”

在维度方面,Trivia Crack明显的平面2D设计行之有效。 在2D中拾取对象更轻松,屏幕位置非常准确,整个UI感觉干净且简单。 Etermax充分利用了丰富且不断扩展的Unity动画系统,从而可使他们生成 2D精灵的动画,管理不同剪辑,以及使用规则/时间轴来从一个动画过渡到另一个动画。

迅雷不及掩耳的游戏玩法:分享他们的性能窍门

尽管Trivia Crack 2具有大多数原始游戏的功能和新游戏模式,但其加载速度快,感觉迅速。 Pablo分享了他们的一些诀窍:“我们开始向Trivia Crack 2添加了大量功能,然后突然初始加载速度达到了高峰。 这促使我们研究Unity的性能工具如何提供帮助。 我们开始衡量在这个加载中做了什么,基本来说,现在我们仅在将使用游戏时,以及仅在将使用游戏的位置分配游戏加载,而不是始终不加区分地加载一切。”

该公司积极与Unity社区分享其经验和学习成果。 您可以在他们工程团队的博客中找到有关他们Unity性能诀窍等的文章。

这个“好点子”公司的下一步是什么?

Etermax正在计划将Trivia Crack 2的统一和简化的工作流程复制到其他公司的游戏中,其中许多获得了数百万DAU,而使用Unity重构其中一些游戏似乎也在这些计划中。

Unity的广泛功能可使他们实验其他游戏类型,以及使他们的产品目录多样化;其中一些实验是以众所周知的Trivia Crack吉祥物为特色的3D游戏。

最近的内部Etermax黑客马拉松整合了Unity和Vuforia功能,以便创建增强现实(AR)宣传材料,这或许预示着这个创新工作室有令人兴奋的事情发生。

现在,Etermax已经使用Unity简化并加速了其开发流程,这为这家喜欢益智游戏的工作室只留下了一个非益智问题:接下来我们将被什么新的Etermax游戏所迷住?

“我们选择了Unity来简化我们的流程。 我们现在只有一个开发工作流程,而不是继续在两个不同的代码库上进行开发,现在我们能够轻松从相同代码库输出到许多不同平台。”

Gonzalo Huertas, VP of Engineering, Etermax

“对于我们来说,一个非常重要的Unity功能是能够嵌套预制件资源,因为这大大简化了构建可视化界面的过程。 而且这不仅仅是针对角色而言 – 我们在不同的场景中有很多我们能够自动更新的常用小部件。”

Pablo Iacopi, Technical Owner, Etermax

“对于我们来说,一个非常重要的Unity功能是能够嵌套预制件资源,因为这大大简化了构建可视化界面的过程。 而且这不仅仅是针对角色而言 – 我们在不同的场景中有很多我们能够自动更新的常用小部件。”

Pablo Iacopi, Technical Owner, Etermax

“看到其他公司已经与Unity合作给了我们很大的信心,对于推荐了该平台的我们自己的开发人员,我们信任他们,所以我们试了一下。”

Gonzalo Huertas, VP of Engineering, Etermax

“Unity能够在运行时构建字形图集 - 其动态字体功能,这可真正帮助我们处理中文和日文字符集。”

Pablo Iacopi, Technical Owner, Etermax

我们使用 Cookie 来确保为您提供网站的最佳体验。有关更多信息,请访问我们的 Cookie 政策页面

明白了