如果你经常玩手机游戏,你肯定会看到这样的标志:
Unity既不是一个游戏系列,也不是一个游戏类型,而是一个游戏引擎的名字。它也是移动平台上最常见的跨平台游戏引擎之一,不仅兼容iOS/Android,还支持Windows、macOS等平台。
从《神庙逃亡》这样的小游戏到《炉石传说》这样的大游戏,都是Unity开发的经典作品。
除了Unity之外,手机上其他常用的游戏引擎还有Cocos,而PC游戏常见的游戏引擎则有Unreal Engine、Frostbite Engine等。
炉石传说截图
什么是游戏引擎?
所谓游戏引擎,是指一些预先写好的可编辑的游戏系统或者一些交互式的实时图形应用程序的核心组件。
这些系统为游戏设计师提供了编写游戏所需的各种工具,目的是让游戏设计师能够轻松、快速地创建游戏程序,而不必从头开始。
简单来说,游戏引擎也决定了游戏最初的样子。
Unity游戏引擎操作界面
对于游戏公司来说,使用现成的游戏引擎来开发游戏当然是省时省力的做法,但如果想要把握行业基石,提升核心竞争力,那么研发自己的游戏引擎就十分必要。
引擎是游戏行业最重要的底层技术之一游戏开发,它直接影响一个项目的研发进程和效率,甚至足以决定一款游戏表现力的上限。
EA的“寒霜引擎”是当今最负盛名的自研游戏引擎之一。
早在2006年,EA便开始研发“寒霜引擎”,并在此后于《战地》系列游戏中不断尝试完善它。
最初寒霜1.0引擎主要改进了游戏音效,并加入了爆破特效,让玩家可以摧毁某些建筑,这些新特性在《战地:叛逆连队》中得到了充分的体现。
《战地:叛逆连队》截图
经过不断的优化,2014年,大幅改进的寒霜3引擎能够呈现出令人惊叹的画面以及大幅增强的建筑破坏特效,与原版有着天壤之别。
战地 3 截图
EA CEO Andrew Wilson 曾经强调自研引擎的重要性:
过去 EA 曾长期使用不少于二十个游戏引擎来开发游戏,但现在我们只想专注于寒霜引擎。
强大的引擎可以应用于不同时期的游戏平台,创造出不同类型的游戏,满足不同玩家的需求。
国际知名的游戏公司,例如EA、CAPCOM、Ubisoft等厂商,均有自己独立开发的游戏引擎。
在国内,网易自研的游戏引擎走在了前列。
NeoX:历经十余年打磨的重磅引擎
2005年,网易决定打造一个专门用于休闲游戏开发的游戏引擎,NeoX诞生。
NeoX 最初功能比较简单,采用固定的渲染管线,缺乏高级功能,但由于 API 比较简单,不少开发者开始使用 Python+NeoX 来开发项目原型,或者制作用于培训新开发者的 demo。
随着使用场景的扩大,引擎开发人员为 NeoX 添加了场景编辑器、角色编辑器和特效编辑器,使其功能更加丰富,使用更加方便。维护人员数量一度达到 30 多人——这在当时已经是相当可观的数字了。
梦幻西游中的装扮功能
2008 年,网易想在《梦幻西游》和《大话西游Online》中实现换装功能,但 2D 引擎效果比较简单,渲染功能较差,于是项目组尝试使用 NeoX 完成一些功能,比如用它渲染背景中的人物,然后在内存中将图像渲染成 2D 引擎支持的格式。
在这个过程中,NeoX开始不断优化人物渲染能力,编辑器也变得更加规范和强大,随着引擎功能的增强,《梦幻西游》和《大话西游》中越来越多使用NeoX的场景被运用。
自此,支持任意语言插件、支持多人协作开发模式的NeoX成为了网易的主流引擎。
在《天谕》开发过程中,NeoX首次承担了主引擎的职责。
网易对《天谕》寄予厚望,为了实现这一目标,斗魂工作室引入了物理引擎、法线贴图、延迟光照、灯光烘焙等多种功能,并建立了更加系统的场景管理机制。
《镇妖歌》游戏截图
最终,游戏的图像确实有了明显的改善。
在《天谕》开发期间,手机游戏方兴未艾,网易将NeoX改编至iOS和Android平台,并以其为基础开发了《大话西游》《功夫熊猫3》《阴阳师》等多款游戏。
此后,这款历经十余年研发、多次重构迭代的引擎,已成为网易3D手游主流研发引擎之一。
阴阳师游戏截图
最后,在《战魔曲》手游的开发过程中,战魂工作室对NeoX进行了升级迭代,2.0版本新增了PBR(物理渲染技术),支持SSS(SubSurface Scattering)、次表面散射、各向异性材质等,可以让游戏呈现出更优秀的画面效果。
《终结者2:审判日》的引擎也是基于NeoX特别优化的版本,除了PBR之外,还拥有基于点云的场景光照预渲染技术、超大可视距离的植被系统等。
弥赛亚:新时代的3D移动游戏引擎
2013年,网易在试水手游、尝试用NeoX引擎进行跨平台开发的同时,也在研发一款全新的3D游戏引擎,他们希望这款引擎能够摆脱2D和PC游戏的包袱,针对移动平台进行专门的优化,实现更高层次的艺术效果。
凭借多年的技术积累,网易用3年时间完成了弥赛亚的研发,并在引擎问世后获得了20多项原创技术专利。
这款引擎支持PBR、法线贴图、GPU粒子、实时光照等先进技术,Draw Call(场景物体的绘制)达到了上千级水平,在不丢失场景细节的情况下大大降低了画面细节的损失程度。
天下在开发的时候,市面上的手游最多只能做到100个Draw Call,这意味着不可避免地会丢失很多游戏细节,然而采用Messiah引擎的手游天下游戏开发,Primitive的Draw Call数量却接近30万个,Draw Call数量更是达到了数千个。
天下游戏截图
经过多款产品的实践打磨,日趋成熟的弥赛亚也成为网易多款重点产品的选择,近期爆红的《楚留香》便是一款采用弥赛亚引擎打造的游戏。
Messiah还拥有不错的多线程并行能力,在《荒野行动》中,超远观看距离、多人同屏、复杂天气等特性都离不开Messiah的支持。
《利刃出鞘》也帮助《弥赛亚》获得了更多国际公司的改编和支持。
2017年12月,高通与网易宣布将联合针对高通骁龙800系列顶级移动平台对《弥赛亚》进行优化,大家可能已经发现,《荒野行动》在搭载骁龙800系列SoC的手机上能够展现出更佳的游戏画质。
为什么要开发自己的游戏引擎?
在普通人眼中,Unity和虚幻引擎4都是开源的,足够强大,但开发自研引擎需要耗费巨大的人力和物力,网易为什么要用现成的引擎,而不是走一条用几年甚至十几年都不确定的道路?
其实,这也是“被迫”的。
从网易的经历我们可以看到,自研引擎与自研游戏往往是相互促进、相互成长的。
游戏的需求会倒逼引擎加入更多功能、优化用户体验;引擎可以提高游戏开发效率,让开发者能够更轻松地实现个性化功能,最大化发挥自己的技术实力——比如NeoX对于移动端的高度适配,就与《天谕》手游的研发息息相关。