搜索 Unity

2021年发展之路:2D团队的多重任务

2020年12月22日 类别 技术 | 8 分 阅读
Dev Diary - Road to 2021
Dev Diary - Road to 2021
涵盖的主题
分享

我们的 2021年路线图已于近期公布,而本系列将邀请各位走入Unity,近距离了解为实现这些目标而付出的团队。在系列第三篇中,我们一起来了解下2D团队。Unity 2021路线图介绍了部分明年的重点开发领域。我们将致力于根据用户反馈更新产品级功能、推出新的关键功能,但同样也将改善工作流和整体使用体验。本系列旨在带大家一窥Unity引擎背后的故事,而今天我们将与领导2D和工具团队的Paul Tham和2D产品经理Rus Scammell见面。

背景多样的团队

2D团队专职为2D创作者们提供成套的Unity功能,涵盖了2D的代码基础、场景搭建、动画、图形和物理(包括精灵渲染器,2D块图编辑器,2D光照等工具)。团队核心成员由15人组成,其中有软件工程师、测试工程师、一名设计师、一名技术写手和一名产品经理,并且还有几人为2D的发展贡献专业知识。Rus说:“这是一支能应对多个领域的团队。”

Paul补充道:“团队也非常多样化。有新加坡、美国、瑞典、英国、印度、马来西亚和中国人。成员间相互分享自己的文化,一起吃饭时气氛很活跃。” Paul和Rus一开始通过开发PlayStation 2游戏打开了两人的职业生涯。Paul随后又在Ubisoft碰到了其他现任团队成员。成员们都是热诚的游戏开发者,各自从事过从独立到大型游戏制作和工具开发的各个领域。

与2D用户建立联络

团队喜欢在2D论坛Beta论坛中与用户互动,还会密切关注推特上的话题,比如,他们就与Odd Bug Studio通过推特建立了联系,工作室当时正用2D光照开发《Tails of Iron》。

此内容由第三方提供商托管,该第三方提供商不允许在未接受“Targeting Cookies”的情况下观看视频。如果想观看来自这些提供商的视频,请将“Targeting Cookies”的 Cookie 首选项设置为“是”。

Rus说:“我们会在社区中发布抢先功能公告,方便创作者试用、反馈。我们活跃地在各种移动设备上测试,保证功能性能。从发展策略来说,我们功能的开发实际上是由用户推动的。” 团队会密切关注各工作室的2D工具使用情况,收取他们的反馈。例如在《Lost Crypt》和《Glu Mobile》制作过程中,B2tGame开发等距块图功能时就是如此。当用户提出了问题、不满,抑或提出解决方案或想法时,这个多面手团队会试着了解用户的最终目标是什么。在定位到问题领域后,再评估该解决方案的需求是否较大。比如,如果有用户指明“像素艺术”为问题领域,团队会评估常见工作流程和理想结果,在多番测试后保证最终的解决方案(包括功能和资源,这里是2D Pixel Perfect软件包)能产出理想的结果。Rus声称:“功能设计是推出新功能的关键步骤,而我们的设计有一支专门的设计团队支持。” 2D团队新加入的UX设计师会经常与论坛社区接触,搜集关于用户体验的反馈。

2021年工作重点:UX与性能表现

2D功能将于底层引擎技术和改进一道进步,但总体使用方法仍将保持原状。在Unity 2020.2中,团队简化了菜单和提高了默认资源质量,为新用户提供了流线化的菜单更高质量的默认资源,提高了2D项目的制作速度。未来2D功能的菜单和设置在新版Unity编辑器中都将保持一致。在过去的2020年里,Unity将关注点转换到了性能上,对性能的强调将自2021周期起逐渐体现出来。而2D团队也参与到了新的努力方向中,“改善Unity 2D项目的性能、简化2D游戏创作流程”,罗斯表示。2D团队当前的两个重点领域是带有Sprite Swap(精灵替换)功能的2D动画和2D图形。

此内容由第三方提供商托管,该第三方提供商不允许在未接受“Targeting Cookies”的情况下观看视频。如果想观看来自这些提供商的视频,请将“Targeting Cookies”的 Cookie 首选项设置为“是”。

Rus和Eduardo(2D产品市场)在最近的Unite Now直播中分享了一些提高引擎生产力和性能的技巧。

为大型项目加入2D Animation

2D Animation也有了部分改进:如在Unity 2020.1上兼容Burst、在Unity 2020.2上集成了2D Inverse Kinematics(IK)。为了开发Unity 2021,团队一直致力于2D Animation的工作,改进了Sprite Swap(精灵替换)的流程,让角色间的动画共享更方便。 据Paul所说,团队目前的任务是将2D动画引入大型项目:“如果角色包含很多身体部位,抑或游戏里推出了众多可下载内容(DLC),角色的骨架、动画和部件最好可以共享。” 在有了各工作室使用后的反馈,2D团队进一步完善用户体验(UX)。在新改进的支持下,技术动画师可以建立起动画骨架、人体模型或动画参考,在各团队间共享资源。艺术家可以根据参考骨骼制作变体,再由动画师为其添加动画。这些初始的骨架将作为变体的参考,为各色衍生骨架(如缺少或增添了尾巴、翅膀的骨架)提供运动学基础。创作者可以遵循标准的游戏对象修改方式,在父骨骼对象下删去多余的精灵,或加上新精灵、部件,同时部件的2D动画仍会被保留。这些改进的目的是将Sprite Swap(精灵替换)功能整合到日常的精灵工作流中,而不仅用于2D动画精灵编辑器的蒙皮制作中。我们还会在编辑器的各个位置将2D功能与3D功能并列,实现所有Unity用户(包括2D开发人员)日常使用体验的进步。所有这些改动与小更新将在Unity 2021周期内推出。

精灵替换工具将移至检视器窗口中。

Unity中随处可见跨职能协作

Unity不断发展,而2D工具也会随新技术的出现而进步。Paul向我们讲述了他们与其他团队的合作经历:“我们是Burst和SRP等技术的忠实用户。每当某种技术在内部发布时,我们都会第一时间上手、并针对性地调整新技术与2D功能的兼容性。先在特定功能的基础上做出技术原型,这样就能清楚地了解到新技术是否适用于2D。经过几轮测试后,(如果通过测试)我们便会将其加入路线图。” 一个典型的例子是Unity 2020.1中Burst在2D动画里的性能改进,Burst主要用于解决包含大量蒙皮顶点的动画制作问题;另一个例子是Sprite Shape(精灵形状)网格计算的效率提升,改进后的算法可大幅提高运行时的性能表现。团队还与Cinemachine团队进行了合作,让Cinemachine能与2D Pixel Perfect兼容,又与图形团队合作完善了2D渲染器。

本<a href="https://youtu.be/DCAH1rlwAr4?t=767" target="_blank" rel="noopener noreferrer">直播</a>介绍了具备Burst性能的2D动画。

用于新图形管线的2D渲染器

2D团队在2021年的目标是让2D图形在通用渲染管线中的表现更高效,并且还致力于改善2D光照和阴影的用户体验。通用渲染管线(URP)最终将成为Unity默认渲染器,其中包括2D渲染器是2D项目的默认渲染器。该团队正在努力优化灯光渲染纹理。他们一直在密切关注帧频, 2D Lights的内存带宽,绘制调用(Draw call)和常规内存使用情况。根据Paul所说,优化工作的主要内容都是些底层优化代码。“我们与URP团队紧密合作,使用相同的代码库和审阅流程,来确保渲染器满足能2D项目的需求。” 团队还进一步改善了包含在2D渲染器中“Secondary Textures”(次级纹理,即2D光照的法线贴图和蒙版贴图)的渲染流程。Unity的性能在各种设备上持续地接受了基准测试。为了测试所有2D功能集中到单个场景时的性能,团队使用了《Lost Crypt》等其他项目和方法测试。2D的改进总体上包括了提升用户体验(UX)、提高功能使用的便利性,在2021周期中用户将能在检视器窗口管理纹理尺寸。Rus解释说,团队会全面地评估优化结果是否满足需求。“我们会与各工作室联络、了解工具在制作过程中的实际使用情况,进而从各方面考察优化效果。”

2D渲染器开发以《失落的地穴》项目中的功能表现为基准。

迎接2021周期

2D团队正在努力推动2021年URP技术的成熟,而2D渲染器将支持下一代2D图形,工作流改进则会让美术师、游戏策划等任意角色都加入到角色动画、关卡设计、视觉创作等制作流程中。我们期待在明年与大家分享新的开发进展,让Unity继续成为各平台2D项目的首选开发方案。

想要了解更多幕后故事?

开发日记主要介绍参与未来Unity版本开发的开发者们。本文为系列第三期,尚未阅读前两期的读者可在此处查看前两期博文:性能优化团队生活质量团队。如果想在以后的博客中了解某个团队或功能领域,请在下面的评论中告诉我们。

2020年12月22日 类别 技术 | 8 分 阅读
涵盖的主题