引言
众所周知,我们开发小游戏可以用官方提供的开发者工具直接开发,也比较简单快捷,但是为了后续能够发布到其他平台端,例如安卓、IOS,我们这次就采用游戏开发引擎。但是目前市面上还是有比较多的游戏开发引擎的,我们应该怎么去做出选择呢?
有哪些开发引擎
国内开发小游戏可以选择以下几个引擎:
1.Cocos Creator:优点是支持多平台,易于学习和使用,缺点是功能相对较少,但是是目前主流的游戏引擎之一。
2.Egret Engine:优点是功能丰富,支持多平台,缺点是学习曲线较陡。官方已经不再更新维护。
3.LayaAir:优点是跨平台支持好,性能较好,缺点是学习曲线稍陡。3D方面优先选择。
4.Unity:优点是功能强大,开发效率高,缺点是微信小游戏的兼容性问题。适合开发中大型游戏。
5.Phaser:优点是轻量级引擎,易于学习和使用,缺点是对于复杂游戏功能支持相对较弱。相对于其他引擎小众一点。
选择开发引擎考虑的因素
选择开发引擎应考虑以下因素:
- 游戏类型:根据需求选择适合的引擎,如2D、3D、物理引擎等。
- 开发经验:选择具有适合你团队技能水平的引擎,避免过于复杂或难以掌握。
- 跨平台支持:如果需要在多个平台上发布游戏,选择支持跨平台的引擎。
- 社区支持:考虑选择有活跃社区和丰富资源的引擎,以便获得技术支持和学习资料。
- 成本和授权:根据预算和商业模式,考虑引擎的成本和授权政策。
常用的开发引擎包括Unity、Unreal Engine、Cocos2d-x等,它们具有不同的特点和适用范围。综合考虑上述因素,选择最适合你项目需求的引擎。
贪吃蛇小游戏系列选择的引擎
基于以下理由:
- 跨平台支持:Egret可以实现一次开发,多平台发布。它支持Web、iOS、Android等多个平台,为开发者节省了时间和精力。
- 强大的渲染能力:Egret采用了高性能的2D渲染引擎,并且支持使用WebGL进行硬件加速,能够呈现出流畅且精美的图形效果。
- 丰富的功能库:Egret拥有强大的功能库,包括动画、物理引擎、粒子系统等。这些库的存在使得开发过程更加高效和便捷。
- 完善的文档和社区支持:Egret提供了详细的官方文档和教程,方便开发者学习和使用。此外,Egret拥有活跃的社区,可以及时获得技术支持和交流经验。
- 成熟稳定的开发工具:Egret提供了成熟和稳定的开发工具,如Egret Wing和Egret Launcher,能够提升开发效率和便捷性。
虽然Egret官方不再维护,但是由于笔者前2款游戏也是采用的Egret引擎,为了更快地开发游戏到上线,我们还是选择了Egret。还有个原因就是github上有一个开源的Egret游戏开发使用框架,便于快速开发,以及各项目组间统一开发规范,便于开发人员调整,以及新手快速熟悉项目。因此我们选择Egret引擎这一个简易框架。
框架的简单介绍
首先感谢 yicaoyimuys 的开源框架。该框架封装实现了下列基本功能:
1:MVC模块
2:Net网络请求模块(Http、WebSocket),WebSocket支持ProtoBuf
3:Utils工具类模块
4:StarlingSwf模块
5:Scene模块
6:新手引导模块
7:dragonBones动画模块
8:Sound音乐、音效模块
9:示例Demo:Act游戏Demo(1.2分支),MVC+Eui使用Demo,Rpg游戏Demo
下面我们来简单看下:
1.框架初始的运行效果。包含了RPG示例、主界面UI、好友、商店、仓库、工厂模块,还有每日活跃、每日任务、邮箱及论坛。
2.框架的结构如下:
框架的核心部分core,里面包括了适配、mvc模块、场景、音效等核心模块的封装,我们开发的话一般不需要动这里面的内容。
仅仅需要参考example里面内容重构我们自己的核心游戏功能即可。
consts 里面放公共的常量。
module 里面放我们具体UI界面、组件等模块。
scene 里面放游戏场景。
test 里面是示例。
3.游戏资源主要放在resource目录下
模块开发流程
1.将资源放到resource目录自定义文件夹。如:
2.新建界面的皮肤文件,拼UI。如:
3.编写游戏代码。如:
4.调试代码。具体内容后面的文章我们将以贪吃蛇第一视角,给大家讲解细则。
总结
本文的重点内容主要有以下几点,不知道小伙伴们是否已经理解:
- 目前社会主流的小游戏开发引擎有哪些。
- 我们选择小游戏的开发引擎应该依据什么。
- 本系列开发贪吃蛇小游戏选择的引擎以及框架。
- 开源框架EgretGameEngine-1.4的简单介绍。
本系列是《从零开始开发贪吃蛇小游戏到上线系列》,欢迎大家订阅。
笔者已经上线的小游戏《填色之旅》《重力迷宫球》大家可以自行搜索体验。
感兴趣的小伙伴记得关注"亿元程序员"哦,学习小游戏开发不迷路。欢迎大家一起交流。
喜欢的可以点个赞同、点个在看哦!谢谢大家。