如果你手机游戏玩得多了,肯定会看到这样一个标志:

Unity,既不是某个游戏系列,也不是某种游戏类型,而是一个游戏引擎的名字。这也是目前移动平台上最常见的跨平台游戏引擎之一,不仅兼容iOS / Android,还支持Windows、macOS 等平台。

小至《神庙逃亡》,大如《炉石传说》,都是Unity 开发的经典作品。

除了Unity 之外,手机上常用的游戏引擎还包括Cocos,而PC 游戏常见的游戏引擎则有虚幻引擎、寒霜引擎等。

《炉石传说》游戏截图

什么是游戏引擎?

所谓游戏引擎,就是指一些已编写好的可编辑游戏系统或者一些交互式实时图像应用程序的核心组件。

这些系统为游戏设计者提供编写游戏所需的各种工具,目的在于让游戏设计者能容易和快速地做出游戏程序,而不必由零开始。

简单来说,游戏引擎也决定了游戏最初的样子。

Unity 游戏引擎操作界面

对于游戏公司来说,拿现成的游戏引擎开发游戏,当然是省时省力的做法。但如果要把握产业的基石,增强自身的核心竞争力——那么,开发自有游戏引擎十分必要。

引擎是游戏行业最重要的底层技术之一,它直接影响一个项目的研发流程与开发效率,甚至足以决定一款游戏表现力的上限。

EA 的「寒霜引擎」是最负盛名的自研游戏引擎之一。

早在2006 年,EA 就开始着手研发「寒霜引擎」,之后便一直在《战地》系列游戏中不断进行尝试改进。

最早,寒霜1.0 引擎主要是提升了游戏音效,并加入了爆破效果,允许玩家破坏某些建筑,这些新特性在《战地:叛逆连队》中都有充分体现。

《战地:叛逆连队》游戏截图

经过不断地优化之后,2014 年,大幅改进的寒霜3引擎已经可以呈现出惊人的画面效果,建筑破坏效果也大大加强,与最初版本已经是云泥之别。

《战地3》游戏截图

EA 首席执行官Andrew Wilson 曾这样强调自研引擎的重要性:

过去,EA 在的很长一段时间,用过不下二十个游戏引擎来开发游戏,而现在,我们只想专注于寒霜引擎这一个。

一个强大的引擎可以应用在不同时期的游戏平台,打造不同类型的游戏,从而满足不同玩家的需求。

国际上知名的游戏公司,如EA、CAPCOM、育碧等厂商,都有自主研发的游戏引擎。

而在国内,网易的自研游戏引擎则走在前列。

NeoX:打磨十余年的爆款引擎

2005 年,网易决定打造一款供休闲游戏开发使用的游戏引擎,NeoX 应运而生。

最开始NeoX 的功能比较简单,它使用了固定渲染管线,也不具备高级功能。但因为API 简单,许多开发者开始用Python+NeoX 的形式来开发项目原型,或是为制作培训新人的Demo。

伴随使用场景的扩展,引擎开发人员为NeoX 添加了场景编辑器、角色编辑器和特效编辑器,让它支持更多功能,更加易用,维护人员一度达到了30 多人——在当年这是一个相当可观的数字。

《梦幻西游》中的换装功能

2008 年,网易希望在《梦幻西游》和《大话西游》中实现换装功能,但2D 引擎效果较为单一,渲染功能不佳,于是项目组尝试用NeoX 完成一些功能,例如用它在后台渲染角色图片,再在内存中渲染成2D 引擎支持的格式。

在这一过程中,NeoX 开始持续优化自己的角色渲染能力,编辑器也越来越规范强大。伴随引擎功能的增强,《梦幻西游》和《大话西游》使用NeoX 的场景也越来越多。

自此,支持任意语言插件,二手手机号码支持多人协作开发模式的NeoX 开始成为网易的主流引擎。

在《镇魔曲》的研发过程中,NeoX 第一次扛起了主力引擎的重任。

网易对《镇魔曲》寄予厚望,为了达到这个目标,战魂工作室引入了物理引擎、法线贴图、defer lighting、光照烘焙等多种功能,并建立了更加系统化的场景管理机制。

《镇魔曲》游戏截图

最终,游戏画质确实有了明显跃升。

在开发《镇魔曲》期间,正值手机游戏崛起的风口,网易又让NeoX 适配iOS 与Android 平台,并基于此研发了《乱斗西游》、《功夫熊猫3》、《阴阳师》等游戏。

自此,这款历时十余年,经历过多次重构和迭代的引擎,成为了网易3D 手游的主流研发引擎之一。

《阴阳师》游戏截图

最终,在《镇魔曲》手游的研发过程中,战魂工作室为NeoX 进行了升级迭代,2.0 版本加入了PBR(基于物理的渲染技术),支持SSS(SubSurface Scattering),次表面散射、各向异性材质,能让游戏呈现更好的画面效果。

《终结者2:审判日》的引擎也是基于NeoX 进行专门优化的版本,除PBR 之外,它还拥有基于点云的场景光照预渲染技术以及超大视距的植被系统。

Messiah:新时代的3D 手游引擎

2013 年,网易在试水手游,尝试NeoX 引擎的跨平台研发之时,也在研发一款新的3D 游戏引擎。他们希望这款引擎抛弃2D 和端游的包袱,专门为移动平台优化,实现更高级别的美术效果。

在多年的技术积累之下,网易用3 年时间完成了Messiah 的研发,并在引擎问世之后拿下了20 余项独创性技术专利。

这项引擎支持PBR、法线贴图、GPU 粒子、实时光照等先进技术,且Draw Call(场景物件的绘制)达到了上千的水平,在不损失场景细节的基础上,大大降低了画面细节的丢失程度。

《天下》手游在研发时,当时市面上移动端的游戏仅能实现100 的Draw call,这意味着游戏细节不可避免的大量丢失,而使用Messiah 引擎的《天下》手游,Primitive 接近三十万,Draw Call 也已经达到上千的水平。

《天下》游戏截图

经历几款产品的实践与打磨之后,日渐成熟的Messiah 也成为了网易多款重点产品的选择。近期大热的《楚留香》,就是Messiah 引擎打造的游戏作品。

Messiah 还拥有不错的多线程并行能力,在《荒野行动》中,超远视距、多人同屏、复杂天气等特性都离不开Messiah 的支持。

《荒野行动》还帮助Messiah 获得了更多国际公司的适配和支持。

2017 年12 月,高通与网易宣布将面向Qualcomm 骁龙800 系列顶级移动平台共同优化Messiah,你可能已经发现了,在搭载骁龙800 系列SoC 的手机上,《荒野行动》能体现出更好的游戏画质。

为什么要自主研发游戏引擎?

在常人看来,Unity 和虚幻4 引擎都已开源,功能也都足够强大,而自研引擎却会耗费了庞大的人力物力。为什么有现成的不用,网易还要用几年甚至十几年走一条前途未卜的道路?

实际上,这也是被「逼」出来的。

从网易的经历可以看出,自研引擎和自研游戏往往会相互促进,相互成长。

游戏的需求会倒逼引擎加入更多功能,优化使用体验;而引擎又能提升游戏开发的效率,让开发者更加自如地实现个性化的功能,将技术实力发挥到极致——比如NeoX 对移动端的高度适配就与《镇魔曲》手游的研发息息相关。

常年坚持自研游戏引擎的公司可不止网易一家。

《泰坦黎明》的研发商Zynga 旗下子公司NaturalMotion 用10 余年研发出了Echo 游戏引擎和euphoria 技术,实现了7000 单位同屏的壮观场面。

《泰坦黎明》游戏截图

或许也正是出于对自主研发的重视,网易游戏才能与Zynga 达成合作,最终拿下《泰坦黎明》的代理权。

互联网行业进步的源动力来自底层技术创新,中国游戏市场份额虽然是全球第一,但在底层技术方面还远远达不到国际一流水平。

或许,只有扎扎实实进行技术创新,这才是中国的游戏企业,乃至互联网企业在长远的世界竞争中应有的格局和态度。

研发游戏引擎那么难,为什么还应该砸钱去干?相关推荐

  1. 【转】研发游戏引擎那么难,为什么还应该砸钱去干?

    [转]研发游戏引擎那么难,为什么还应该砸钱去干? 研发游戏引擎那么难,为什么还应该砸钱去干? posted on 2019-04-23 09:12 时空观察者9号 阅读(...) 评论(...) 编辑 ...

  2. 明知道员工不喜欢干一件事,干不好一件事,你还一定要他去干,犯贱就贱在和员工讲道理争输赢,有意思吗?人尽其才,物尽其用(转)...

    下午员工辞职了,我又成了"光杆司令"一枚.谨以此文记. 导火索是因为他坚持他的看法,我不同意.我告诉他,这个问题没有这么简单,我们把它单列出来放在一边,先把其他的事情做了.他不以为 ...

  3. 病毒先生:还在砸钱做IP?真正的IP营销应该这么玩!

    前几日翻看黄历才惊晓竟已立秋,先生吹着空调喝着冰啤啃着鸭脖,真是一点也未曾感觉到热浪稍减:就像近年来营销圈里非常火爆的一个词语--"IP营销"一样,不但没有随着时间的推移降温,反而 ...

  4. 从自行研发到海外购买 论国产游戏引擎发展史

    十六年的仙剑,姚仙三年亲自操刀全力打造 -- <仙剑奇侠传5>.<仙剑>是国内经典的游戏大作,浓缩了国内游戏制作人员技术精华,代表每个时期国产游戏的发展水平,折射出国产游戏引擎 ...

  5. 什么是 游戏引擎 ?各个主流引擎的区别

    在之前的元宇宙中有提及到游戏主播这个行业,那对应的就会有游戏开发者,对于开发最快捷的方式当然是使用游戏引擎进行开发了呀,那接下来我们就来说说这方面的内容吧 ! 本篇文章主要讲解,游戏开发中常用的5个游 ...

  6. 浅谈3D网游引擎变迁史 看国产游戏引擎趋势

    玩家们在享受游戏带来的快乐时,其实很少想到游戏引擎到底发挥了多么重要的作用.无论是2D游戏还是3D游戏,游戏引擎都充当着游戏骨架的角色,没有游戏引擎就无法做出一款真正的游戏,通过游戏引擎制作者可以把画 ...

  7. 如何从零开始用 C++ 开发一款游戏引擎?

    原文链接:https://hackernoon.com/build-a-game-engine-from-scratch-in-c 游戏开发一直很能激励学生学习高级计算机科学.可能有些人认为游戏是孩子 ...

  8. 5款常用的html5游戏引擎以及优缺点分析

    如果您是游戏开发人员,并且正在寻找JavaScript和html5无缝协作的游戏引擎. 虽然市场上有很多免费和付费的游戏引擎,但一款让专业游戏开发者满意的游戏引擎,必须包含独特的东西,所以游戏开发者对 ...

  9. 迪士尼收购HTML5游戏引擎公司Rocket Pack

    http://rocketpack.fi/engine/ 北京时间3月3日消息,据国外媒体报道,迪士尼公司闪电收购了一家名为Rocket Pack的基于HTML5游戏引擎公司.业界估计迪士尼准备自立门 ...

最新文章

  1. as 不显示gradle视图_Python构建RESTful网络服务[Django篇:基于类视图的API]
  2. 心急如焚!程序员拥有 2.2 亿美元巨款,却想不起密码
  3. 变量作用域函数作用域
  4. Python基础38(进程基础)
  5. OpenCV 错误级别分析ELA的实例(附完整代码)
  6. android进程 系统启动过程 android boot sequence
  7. 这些职场办公神器,你会喜欢的!
  8. SpringBoot + SpringBatch + Quartz整合定时批量任务
  9. svn主干开辟分支、分支合并到主干
  10. 数据库:mongodb与关系型数据库相比的优缺点zz (转)
  11. popoverController简单介绍
  12. python教程ppt第五章_Python 3基础教程 第5章面向对象编程.ppt
  13. js页面刷新事件 ,Javascript刷新页面的几种方法
  14. 【matlab图像处理】图像处理工具箱(1)
  15. linux 极路由救砖,极路由刷机教程 极路由救砖方法图文详解
  16. 谈谈PRNU 光响应非均匀性
  17. 【Java 8 新特性】Java CompletableFuture applyToEither()
  18. notepad集成jsonviewer 查看json
  19. 半年成长 —— 任平生
  20. [java]自动生成指定长度的英文名字

热门文章

  1. yum配置文件 重启后还原_配置 yum 源的两种方法
  2. 【超详细的贝叶斯滤波原理】(不看后悔)
  3. 数字图像处理第二章——空间滤波
  4. Mysql中表的创建、修改与删除
  5. spring boot+vue小说网站项目-novelbar
  6. PC网页版、移动客户端、Wap版 有什么不同
  7. javascript教程系列-4.函数
  8. 类:实验2家中的电视
  9. keras安装配置指南【linux环境】【转】
  10. html css xml,XML HTML CSS理论知识复习