过去一个月忙著做IEG各级游戏客户端的通道评审、实习生评审、校园招聘,还去了一周大阪团建,今天我所在的部门(魔方工作室群)终于完成了到新建大楼的搬迁,终于整顿下来,想写一点东西。
首先,《腾讯游戏开发精粹》出版了!一年多前,我发起这个项目,希望同事能有一个对外分享技术的途径。这个项目从成立编委会、规划、招稿、摘要评审、编辑、排版、管理层审核、出版,经历了不少困难,最终能看到实体的出版物,有种金石为开的感觉。第一次做这样的工作,有很多不足之处,期待大家的反馈。如果顺利,希望能继续有第二册,在内容范围、形式上也可以再作创新,例如考虑对业界学界公开招稿,这方面也期待有读者提供意见。
另一个出版相关的「喜讯」是,《游戏引擎架构》第二版终于完成编辑排版,快将出版。两周前写的译序,简直就是一篇忏悔录,先睹为快:
不知不觉,本书原版第1版已出版十年。十年前 iPhone 3GS 面世,《愤怒的小鸟》在同年上架 Apple Store。随着智能手机的渗透率不断增长,全球范围内移动游戏极速超越PC和游戏机,成为最多用户及最高收入的游戏平台。我开始翻译本书时,正任职于麻辣马开发PC/游戏机平台游戏,之后幸运地在2011年前加入腾讯,从事游戏引擎技术的研发工作,也亲历了这个浪潮。
2013年国内《天天爱消除》和《天天酷跑》这两款2D手游成为行业爆款,而我在当年第1版译序中写下〝还可预料,现时单机/游戏机的一些较高级的架构及技术,将在不远的未来着陆移动终端平台。〞那个时候,不少人认为手机只适合这些消闲游戏,也许不需要前沿技术。然而,随后各种游戏类型陆续爆发,MOBA的王者属《王者荣耀》,ACT有《火影忍者》,FPS有《穿越火线》以至本年的《和平精英》。我追索这十多年的游戏硬件发展,虽然移动平台的性能和顶级游戏机有稳定十年的差距,但至少在架构和技术上,移动平台的游戏已逐渐贴近前沿。
在端游时代,游戏项目的技术选型多姿多采,有选择自研引擎的(如《天涯明月刀》的QuickSilver引擎),也有选择各种商业和开源的游戏引擎。但在2013-17年期间,除了网易继续自研引擎,国内大部分手游项目都选择了 Unity。Unity引擎具有非常友好的工具及编程环境,它采用的 C# 语言也减轻了开发者的负担,令游戏团队能非常高效地生产。但与此同时,它的黑盒性质也极大地影响了这一代游戏程序员。这个情况在我做公司内部晋级评审时深有感受:以往一些工作可能需要深入了解技术原理,并寻找最适合项目的最优方案,然后把技术从无到有去实现出来,过程中对人员的技术成长很有帮助;而面对黑盒,很多时候是通过猜想个中的实现,再尝试以打补丁方式去解决问题,更少机会完整地实现一些技术,对于较底层的开发能力更易缺失。但当手游竞争越趋激烈,游戏开发周期从三个月上升至三年,开发团队的技术能力也变得越重要。2015年 Unreal 提供源代码给所有人,并且大力增强移动平台的支持,开始成为手游项目的另一可行选项。如果仅考虑对开发人员的成长,我会建议尽量使用具源代码的工具,并多了解它内部如何运作,在适当时候作出修改。期待我们能继续提升技术水平,并发挥创新能力,进一步提升游戏的品质。
在第1版译本出版以来,我收到大量读者反馈,一些错漏之处也在每次印刷中修正。不时有朋友告诉我,他们因为读这本译作而对游戏引擎技术产生兴趣,最后还加入到这个行业之中,身为译者也感到欣慰。2014 年我在美国三藩市游戏开发大会遇到原作者 Jason Gregory,也是令人兴奋的时刻。但对于一直期待第2版的朋友,面对以年为单位的等待,本人实在难辞其咎。虽然百词莫辩,也必须作出点交代。除了繁忙的工作,在数年里我花了不少工余时间在知乎上回答问题及写技术文章,学习并实践多方面的兴趣,也在近不惑之年才开始注重身体健康而去系统锻鍊。由于个人的能力及时间有限,我也希望能和其他人合作去推动知识分享,例如刚出版的《腾讯游戏开发精粹》便是我通过腾讯游戏学院发起的项目,而另一本和同事合译作品《基于物理的建模与动画(暂名)》希望也能尽快与大家见面。
由于有些读者已读过第1版,所以我特意在新增的章节标题中加入剑标符,以方便挑选阅读。最后,期望这本书能引发你对游戏技术的兴趣,在未来可以玩到你的游戏作品。
回想到我来腾讯 IEG 也有 8 年了,前 4 年在研发部,而后 4 年在魔方。2015年我觉得和一线开发有点距离,想重新投入产品的相关技术研发。我选择了魔方,主要是考虑到他之前的产品以页游为主,在技术上的积累较少,我可能可以帮助他提升技术水平。刚进去的时候,我们的引擎组是一个项目中的小组,只有几人。
2015年上线了魔方第一款3D的射击手游《独立防线》,这是一个商业上不成功的项目,但累积了3D的制作经验和FPS团队。而翌年魔方上线了爆款动作手游《火影忍者》,这个 IP 项目的商业成功,令工作室群有更多空间去投入更大型的研发项目。我们引擎组的工作也逐部扩展至多个项目的引擎技术支持,性能优化,技术攻关,各式各样。这个研发阶段非常漫长,再加上政策的影响,魔方今年才继《火影忍者》后有至少 4 款新游戏上线,包括《妖精的尾巴》、《王牌战士》、《一人之下》、《战歌竞技场》。
我的小组在这4年中,除了参与这些项目的技术攻关及性能优化,也主导一些技术要求更高的预研项目。同时,我们也有机会尝试研发一些创新的游戏引擎技术。引擎组也变成了引擎中心,人数从几个人涨到了 25 人。曾经可以为每个成员亲手做生日蛋糕,现在也变得不太可能了。
我觉得魔方还是需要一直蜕变,除了令自己和同事成长,也需要有新血,才能做更多有趣的事情。相对于攻关技术难题,招聘是令我更烦恼的任务。由于游戏业务的持续增长,公司内外的人才竞争都很厉害。
如果你已从事游戏业界一段日子,对游戏技术有追求,希望来和我共事,可以直接联系我。我们现在招一些比较专门的社招职位:
- 28937-UE4客户端开发工程师(UE4 Client-side Engineer)
- 28937-游戏AI系统开发Leader(Game AI System Leader)
- 28937-游戏AI系统开发工程师(Game AI System Engineer)
- 28937-游戏引擎开发工程师(Game Engine Engineer)
- 28937-游戏图形开发工程师(Game Graphics Engineer)
- 28937-游戏物理开发工程师(Game Physics Engineer)
- 28937-游戏工具开发工程师(Game Tool Engineer)
- 28937-游戏客户端开发运营工程师(Game Client-side DevOps Engineer)
- 28937-程序化生成技术美术(Procedural Content Generation Technical Artist)
另外,如果你是2020/21年毕业、对游戏开发有热情的本硕博学生,也可把 CV 电邮给我。