主流游戏源码-当前主流游戏引擎分析报告

前言 游戏引擎之争和编程语言之争一样,一直是游戏开发圈的热门话题。 目前市面上的一些主流游戏引擎,我们来对比一下,了解一下它们的历史、特点,同时为了严谨起见,注意本文撰写时间为2021年4月20日编译。目前主流游戏引擎国外使用的引擎有Unity、Cocos、Laya、UE4、Egret,接下来我们来分析一下这款引擎的特点。 1:国行3D引擎Unity

Unity,使用C#或Lua语言开发。 国民3D引擎,这个称号表明了Unity在3D引擎方面的市场地位。 中大型游戏公司基本都使用Unity来制作3D游戏,很多大公司也在自己的游戏中使用Unity,比如《王者荣耀》。 美国的情况如何? ? AppStore中80%的3D游戏都是使用Unity游戏引擎开发的。 下面我们就来说说为什么Unity能够打败很多前辈,成为国民游戏引擎。 时间回到2010年左右,当时网页游戏很流行,而当时Unity引擎的定位是一款可以开发PC游戏和网页游戏的游戏引擎。 随着手机游戏时代的到来,市场迫切需要一种可以在多个平台上开发并同时发布到Android和iOS的3D游戏引擎,而Unity成为当时唯一的3D游戏引擎解决方案。 与手游市场一起,Unity经历了快速下滑。 Unity能够成为国民引擎的另一个很重要的原因是它对初学者非常友好,上手非常方便,这大大增加了3D游戏开发的难度。 Unity引擎的市场份额越来越大,技术人才、SDK、第三方插件、技术资料等也越来越齐全。 总结一下Unity的特点:

可以制作精美的3D游戏画面和自定义渲染管线,画面效果不如UE4。 可以制作和推出多种类型的3D游戏,并且每种类型的游戏都经过商业项目的验证。 生态完整,一次多项开发,平台发布(PC、android、iOS、xBox)。 Unity不是开源的,更改引擎代码需要支付许可费,发布后也需要支付许可费。 Unity开发2D游戏规模比较大。 Unity3DH5支持比较弱,不支持陌陌/抖音/华为/Facebook等H5小游戏平台。

2:国民2D游戏引擎Cocos,3D引擎新贵

CocosCreator 使用 JavanScript/TypeScript 开发。 早在2010年,手机游戏刚刚流行的时候,如果你没有听说过Cocos,那么你一定还没有进入移动会议行业。 2010年,唯一能够跨平台开发的游戏引擎是Cocos(Unity还不能支持移动平台)。 2010年,手机的硬件性能还很有限,而且大部分都是2D游戏。 Cocos成为国民手机。 中国联通的游戏引擎,当时很多手游都是基于Cocos开发的,这也让其迅速占领了开发者市场。 后来随着手机硬件的发展,3D游戏越来越多,手机游戏的市场份额逐渐被Unity取代。 Cocos引擎完全免费,软件包小,制作2D游戏的技术成熟。 CocosCreator开发工具和Unity一样简单易用,而且非常好用。 H5技术已经成熟。 近两年新引擎已全面支持3D,一次开发即可发布到PC、Android、iOS、陌陌抖音、华为等各大H5小游戏平台。 总结一下CocosCreator的特点:

引擎完全免费、开源、体积小、定制灵活; 2D游戏引擎开发经过大量验证,特别适合2D游戏开发。 新的3D引擎可以开发3D游戏,还有改进的空间。 一次性开发,多平台发布。 与传统引擎不同的是,它可以发布H5平台。 (陌陌/抖音、华为小游戏平台)Creator3D引擎生态系统还不够丰富,比如第三方插件。 CocosCreator开发的2D游戏已经验证很多,3D还需要产品验证。 CocosH5游戏运行核心在业界尤其优秀,可以提供高效的H5游戏运行解决方案。

3:Laya游戏引擎,H5上大规模运行3D游戏的游戏引擎

Laya游戏引擎,使用As、Js、Ts开发。 H5刚推出时,很多公司并不看好H5运行3D游戏。 他们觉得H5的性能不足以运行疗效良好的3D游戏。 而且H5游戏有着普通游戏无法比拟的优势。 玩。 当时,PC网页游戏已经发展成熟,同时手机网页游戏也大规模流行。 网页游戏依赖FlashPlayer,但手机上没有FlashPlayer,突然就被H5取代了。 对于页游开发者来说,如果想要将游戏移植到手机网页上,就需要将Flash开发的游戏转换为H5游戏。 Laya 是第一个实现这一目标的人。 所以Laya支持的开发语言有AS、JS、TS,也就这么产生了。 Flash 到 H5 的转换在商业上并不是很成功。 后来随着h5的发展,直接转为H53D游戏引擎。 它是第一个在 H5 上运行小型商业 3D 游戏的 H53D 引擎。 在H53D线上产品方面积累了大量的经验和成熟度,3D陌陌抖音oppovivo小游戏约80%都是由laya引擎制作的。 Laya首先是H5平台,然后是原生平台(PC、iOS、Android)。 总结一下Laya的特点:

最早经过大型商业项目验证的H53D游戏引擎,在陌陌抖音等小型游戏平台发布已经非常成熟。 功能强大且易于使用的Unity编辑器兼容3D资源。 如果一款游戏是Unity开发的,想要移植到H5,那么Laya一定是首选。

4:UE4游戏引擎,3A游戏首选引擎

UE4、开发语言C++和新蓝图。 UE4 是 AAA 游戏开发者的首选引擎,以其逼真的渲染效果而闻名。 很多小型3A游戏都是使用UE4开发的,比如腾讯的《和平精英》。 UE4是用C++开发的,虽然有新的蓝图,很多公司也即将把项目去新蓝图,改用C++来开发游戏。 相对于C#、Js/Ts来说,开发难度更大。 事实上,C++可以取得更好的性能。 UE4不支持H5,可以发布到主流游戏平台主流游戏源码,如PC、iOS、Android等,但不支持H5游戏平台。 总结一下UE4的特点:

画面效果不错,3A游戏首选。 C++开发相对来说比较困难,所以爱她的程序员和恨她的程序员一样多。 3A级游戏技术开发成熟,画面效果良好。 不支持 HTML5。

5:Egret游戏引擎

Egret引擎,开发语言为Js/Ts。 Egret游戏引擎为H5游戏做出了不可磨灭的贡献。 是最早的H5游戏引擎。 其上的很多工具非常有用,至今仍被其他引擎所使用,例如骨骼动画工具。 DragonBones 广泛应用于游戏中。 开发中。 第一批H5游戏开发者肯定用过Egret。 白鹭引擎在H5游戏领域做出了不可磨灭的贡献。 后来Egret也推出了Native平台。 总结一下白鹭的特点:

H5游戏的先驱,为H5游戏做出了不可磨灭的贡献。 H52D游戏技术成熟,已被众多商业游戏验证; 3D功能都有,但商业项目的3D游戏较少使用;

好了,我总结了身边的一些游戏引擎主流游戏源码,我该学哪一个呢? 虽然在学习游戏开发的过程中,最终明白了原理和原理,引擎是一个工具,开发者是从工具开始学习的,但并不局限于某个工具。