与高度工业化的虚幻引擎相比游戏开发团队结构分工,独立游戏开发者在 Unity 的早期用户群和今天的用户中占据了相当大的比例。使用 Unity 的团队,能够获得最佳用户体验的团队规模从 1 到 10 人不等。如果超过 20 人,则必须依靠专门定制的工作流程和辅助工具来保证协作的质量和效率。
Unity 开发团队所需的角色因项目而异。下面列出了每种类型的团队成员及其适用的项目范围。
逻辑实现者:工作是实现从主游戏循环到每个游戏元素的逻辑。在小团队中通常是唯一的程序员,在大团队中是 GPP(Game play Programmer)。请注意,对于独立游戏项目,在第三方插件的帮助下,非程序员也可以担任此角色。
内容设计师(发音为 cehua):基本上是大型团队中的规划职位。与传统规划不同的是,Unity团队中负责这个任务的人,基本上要摆弄场景,做prefab。仅仅会写文档是不够的。
美术:作品包括游戏概念图的设计到模型动画等美术资源的设计制作。具体细分可以参考游戏行业标准,Unity团队也不例外。
交互设计与实现:界面设计,界面实现编程,由于Unity下有很多优秀的UI插件,把设计师和程序员这个工作合并到一起。在Unity下,即使设计者自己做交互编程,也不会难。
主程序/架构师:适合大型项目或大型团队的高端职业。他们的主要任务不是制作用户可以玩的特定游戏玩法,而是为其他团队成员构建一个框架或工具集进行交流和协作。对于大型的Unity项目,如果团队中没有这样一位经验丰富、思路清晰的高手,项目很快就会突飞猛进(因为Unity开发新功能原型的速度太快,很容易让人忽视结构问题)。功能生产很麻烦,然后在没有人指导项目重构的情况下游戏开发素材,生产效率从每周一个功能下降到每个月一个功能,以及无数难以修复的错误。
服务器程序员:网络游戏项目必备音效,其描述适用于游戏行业标准,此处不再赘述。
版本管理器:适合大型项目。最好精通Git或plasticscm等分布式版本控制系统。优点是方便做分支,可以将项目拆分成多个子项目。 Unity项目大后,运行起来效率会很高。Worse,拆分项目也有利于控制不同分工的团队成员的权限。
音效设计器:可选,建议将音效外包+内部实现,因为Unity没有完全封装好的音效中间件。音效设计师要想进行实际调试,必须完全掌握Unity组件系统。在国内,这个要求还是比较高的。怕麻烦就拿外包文件,让程序员或规划师导入测试。
类似于行业标准的游戏团队配置游戏开发团队结构分工,但可以看到很多角色打破了传统编程、美术、策划三角的分界线,提倡全方位发展。因为 Unity 的场景和组件系统决定了很难像 Unreal 一样将工作流程完美地打包,让程序美术规划人员负责其中的一部分流程。对于场景中的一个重要对象,分工不同的团队成员可能要掌握其配置方法,否则无法单独修改和测试。这应该是Unity团队最大的不同。
实际项目经验证明,如果不了解游戏引擎的美术或规划,甚至在Unity项目中测试都得请人,大大影响效率。所以看到这个答案的相关开发者不妨多了解一下游戏编辑器。