Cyber week

获取促销礼品。限时优惠。12 月 4 日结束。
获取促销礼品。限时优惠。12 月 4 日结束。

Unity 帮助独立工作室赢得高性能游戏殊荣

在专业服务的支持下,Canuck Play 达成了关键的生产和性能里程碑。

Canuck Play:Unity 案例研究

How does a small studio successfully create a unique console game with 60 frames per second (fps) performance? For Canuck Play, Unity Professional Services is a large part of the answer. Leveraging their help to migrate Unity versions, optimize performance, and take advantage of new Unity capabilities, the studio is readying a game that lets players create their own football universe: Maximum Football.

 

挑战

帮助小型独立团队按时、按预算交付高质量、高性能的游戏主机游戏

平台

PlayStation 4、Xbox One

项目工作人员

1 名核心开发者、1 名 UI/UX 专家和 1 名功能专家

公司

6 名团队成员,在加拿大的彼得伯勒

准备好合适的开发平台

Canuck Play founder Dave Winter began creating Maximum Football with his own game engine that used an API library built around DirectX 8. Growing more confident in his game’s potential, he decided to go after the console market. “Most indies focus on Steam or mobile platforms, but consoles are in a different league, so I knew my own tools were not going to be enough. Knowing its C# core, huge user base, and reputation for multiplatform development, I switched to Unity and rewrote the game from scratch,” Winter explains. When he ran into development challenges and wanted to take his game to the next level, he contacted Unity’s Professional Services team.

结果

  • 几天内即完成了到最新 Unity 版本的迁移,节省了数周的时间
  • 提供更流畅的玩家性能(从约 30 fps 提升到约 60 fps)
  • 改善了光照、游戏物理特性、重玩系统以及障碍物/玩家躲避逻辑 
  • 为客户的动画系统提供了工具、视觉和游戏玩法方面的改进

招募合适的团队

Winter 在决定自己干之前,曾在多家大型工作室工作过 15 年以上。预算可能很高,但工作流程对他而言没有吸引力。他有自己的创意愿景,他决心以自己的方式来实现这一愿景。因此,在 2016 年,他在地下室成立了 Canuck Play,以单人独立工作室的形式开始工作。 

他的愿景是,足球比赛不是面向传统的视频游戏玩家,而是面向真正的足球爱好者,他们了解所有规则、球员和战术,无论他们追随大学球队、职业球队、美国球队还是加拿大球队。“我想创建一个盒,玩家可以在里面创建自己的足球世界。对于那些甚至想要自己设计制服和徽标的球迷来说,这绝对是理想的选择。”Winter 说。“不仅仅是 NFL!”

五年后,Canuck Play 团队要在名为 The Cube 的办公室内完成 Doug Flutie 的 Maximum Football 2020 竞赛。Winter 负责所有核心的游戏玩法工作,Eric S. 负责业务发展和社区管理。他们的团队还包括一位负责设计屏幕和菜单的 UI 专家、一位专注于特定功能的开发者以及一位新产品总监。

通过更新剧本来消除弱点

Winter 取胜策略的一个重要部分是不断地对游戏进行更新。“我对每个版本都会进行的操作之一是提供针对上一个版本的实质性更改。其他年度足球冠军也许只是改变了他们的球队名单,但是我尽力使 Maximum Football 每年都与之前大不相同。改善整体性能是 2020 年的一个重要目标。”

首先,Winter 决定将他的 Unity 2017 代码库更新为 Unity 2019,以利用许多强大的新功能。同时,他不希望迁移对他的工作效率或紧张的发布时间表产生影响。“在进行任何软件升级时,都必然会遇到一些无法预测的兼容性问题,因此,你需要考虑如何解决这些问题。”他说。其中包括获取专家建议。 

他还必须改进性能。“在播放四分卫翘起胳膊并投掷的特写镜头时,在接球手沿路线跑动、跳跃并抓住橄榄球时,你必须拥有每秒 60 帧的超流畅动画,”Winter 说。“我们以非常高的帧速捕获了动画序列,但是播放时仍然断断续续。”体育场的人群是另一个问题。“我有 60,000 多个 3D 网格独立呈现欢呼场面,但我只是没有将其加入。阴影无法按预期呈现。”

此外,Microsoft 和 Sony 对其游戏主机游戏还有许多严格要求,例如加载时间和更新序列。从发展的角度来看,Maximum Football 变得越来越大,也变得越来越复杂,因此遵守附加规则给制作日程表带来了真正的压力。

寻找自由代理

“我自己做了大量的工作,但后来遇到了一些技术和性能方面的障碍。随着截止日期的逼近,我意识到必须向外寻求支援。”Winter 说。巧合的是,他在那个时候收到了 Unity 专业服务的促销电子邮件。为了了解公认的 Unity 最佳实践,他通过几次聊天和电话会议与 Unity 展开了对话。Unity 专业服务团队对这一小型工作室的出色成就印象深刻,因为他们创造了通常大型工作室中的众多团队才能完成的游戏。

Winter、Eric S. 和专业服务共同制定了一份具有明确目标和时间表的自定义行动计划。Eric S. 说:“从一开始,与 Unity 专业服务的合作就非常顺利和轻松。他们明白我们的技术需求,也了解小型工作室需要看到清晰、明确的成本花费和交付成果。从始至终,我们与 Unity 专业服务的合作都很愉快,取得了巨大的成果。”

将复杂问题简单化

As part of the engagement, two Unity engineers came onsite to: 

  • Complete the Unity version migration
  • Review game code to pinpoint bottlenecks and performance issues
  • Write/rewrite custom systems as needed
  • Help Canuck Play take advantage of some new Unity 2019 features

The performance optimizations were diverse. For example, the single-threaded pathfinding system (e.g., to allow players to go around obstacles like goalposts) was identified as a performance bottleneck. Winter explains, “The existing code worked, but it was chewing up CPU capacity. Professional Services showed us how to use multithreading in the new Unity C# Job System that was far more efficient, and it dramatically increased frame rates.” In another instance, the Unity team fine-tuned inverse kinematics and blend-trees for a number of gameplay situations.

“Professional Services pointed out how I could use less post-processing rendering as well as improve my API methodology in places,” says Winter. They also helped improve the game’s recording feature by improving memory usage with Unity’s NativeContainers. And to deal with the spectator shadowing issues, Unity modified the spectator system to use culling groups, improve instance batching, and remove visual artifacts.

Unity 的主场优势

As well as the assistance from Professional Services, Winter thinks Unity’s extensive developer community is a boon to his productivity. “The Unity forums are rich – I always find tips on how to do things better,” he says. Another important resource is the Unity Asset Store. He’s used it a number of ways. For example, in his game’s practice mode, when there’s an empty stadium, he adds background buildings and views popped in from a number of Asset Store offerings. 

Early in development, he bought the open-source PuppetMaster character physics system and, over the years, has almost completely rewritten it for his own specific needs. On the other hand, he dropped the Rewired input system for consoles into his code “out of the box” for intelligent hot-plugging.

Winter has confidence typical of winners from Vince Lombardi to Wally Buono and from Joe Montana to Doug Flutie: “I have an incredible team with Unity, its developer community, its support, and our Canuck Play specialists,” says Winter. I don’t think there’s any studio or game out there that we couldn’t take on.” With the help of Unity Professional Services to tackle the most-challenging performance issues and to get the most out of Unity’s real-time 3D development platform, Doug Flutie’s Maximum Football 2020 is sure to wow football gamers when it’s released later this year.

Dave Winter, President/Founder and Lead Developer, Canuck Play

“我自己做了大量的工作,但后来遇到了一些技术和性能方面的障碍。随着截止日期的逼近,我意识到必须要向...Unity 专业服务寻求支援了。”

Dave Winter, President/Founder and Lead Developer, Canuck Play
Eric S., Business Development Manager, Canuck Play

“从一开始,与 Unity 专业服务的合作就非常顺利和轻松。他们明白我们的技术需求,也了解小型工作室需要看到清晰、明确的成本花费和交付成果。从始至终,我们与 Unity 专业服务的合作都很愉快,取得了巨大的成果。”

Eric S., Business Development Manager, Canuck Play
Dave Winter, President/Founder and Lead Developer, Canuck Play

“The existing code worked, but it was chewing up CPU capacity. Professional Services showed us how to use multithreading in the new Unity C# Job System that was far more efficient, and it dramatically increased frame rates.”

Dave Winter, President/Founder and Lead Developer, Canuck Play
Dave Winter, President/Founder and Lead Developer, Canuck Play

“我有一个令人难以置信的团队,Unity 的开发者社区、其支持以及我们的 Canuck Play 专家。我认为,我们能与任何工作室合作开发任何游戏。”

Dave Winter, President/Founder and Lead Developer, Canuck Play

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

明白了