手游开发引擎对比分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
手游开发引擎对比分析
无论是2D游戏还是3D游戏,游戏引擎都充当着游戏骨架的角色,没有游戏引擎就无法做出一款真正的游戏。通过游戏引擎,制作者可以把画面、剧情、关卡、操作等元素拼接在一起,成为一款完整的游戏,同时赋予制作者实现其设计理想的可能性。
近几年来,移动互联网的兴起,也让手游产业飞速发展;更多的手游引擎也开始崭露头角,Cocos2d, libgdx, OGEngine等这些名字,也逐渐被开发者所熟知。
下面我们就来对比分析一下主流的手游开发引擎:
其中部分的介绍和分析如下:
1.Cocos2d-x
简介
Cocos2d-x是一个开源的移动2D游戏框架,MIT许可证下发布的。这是一个C++ Cocos2d-iPhone项目的版本。Cocos2d-X发展的重点是围绕Cocos2d跨平台。Cocos2d-x提供的框架外,手机游戏,可以写在C++或者Lua中,使用API是Cocos2d-iPhone完全兼容。Cocos2d-x项目可以很容易地建立和运行在iOS,Android,黑莓Blackberry等操作系统中。Cocos2d-x还支持Windows、Mac和Linux等桌面操作系统,因此,我可以编写的源代码很容易在桌面操作系统中编辑和调试。
2.OGEngine
简介:
OGEngine是国际著名开源引擎AndEngine的一个分支,遵循LGPL开源协议使用
OpenGL ES进行图形绘制。同时集成了Box2D物理引擎,因此可以实现复杂的物理效果。
OGEngine主要使用Java语言开发,但在大运算量的耗时功能时,OGEngine 使用了C/C++本地代码进行开发。比如物理引擎及音频处理。作为用户,你只需要关注Java端就可以了,它已经把所有的本地代码封装好了。相比于其他android游戏引擎,OGEngine的效率优势十分明显。
优点:
OGEngine在AndEngine开源框架下做了以下工作以便开发者更好的学习和使用:
1、逻辑线程和渲染线程实现线程独立;
2、编写了UI体系,提供以线性布局,相对布局,绝对布局,帧布局为基础的UI组件;
3、修改资源加载并提供相应工具,使得加载资源工作量大大减少;
4、增加动画编辑器,关卡编辑器,UI编辑器进行数据对接,引擎可以跟工具结合使用开发;
5、编写场景跳转体系,提供方便的场景跳转方法以及数据传输;
6、对实体相关类重做和分离,给实体操作提供更多方法和更方便复合实体操作;
7、提供完整的事件系统;
8、提供完整的开发文档和学习教程。
缺点:
官方申明OGEngine支持多运行平台,不过当前发布版本只支持安卓;同时支持安卓和iOS的版本会在后续版本才发布。
3.Rokon
简介
Rokon是一款Android 2D游戏引擎,基于OpenGL ES技术开发,物理引擎为Box2D,因此能够实现一些较为复杂的物理效果,该项目最新版本为 2.0.3 (09/07/10)。优点
开发文档相当之完备,并且项目作者对反馈Bug的修正非常之神速,所以该框架的使用在目前也最为广泛,有人干脆将它称为Cocos2d-iPhone引擎的Android 版(业务逻辑和编码风格上也确实很像)。
4.LGame
简介
LGame是一款国人开发的Java游戏引擎,有Android及PC(J2SE)两个开发版本(测试版添加了C#开发版本)。最低运行环境要求为Android 1.1。其底层绘图器LGrpaphics封装有J2SE以及J2ME提供的全部Graphics API(PC版采用
Graphics2D封装,Android版采用Canvas模拟实现),所以能够将J2SE或J2ME 开发经验直接套用其中。
优点
1、作为支持Java桌面游戏以及网页游戏开发的全功能引擎,LGame无论对画面绘制、精灵碰撞、特效渲染、窗体组件,还是XML操作,文本数据库操作,HTTP 操作,日志操作等都提供有完善的内部解决方案,避免了多包配置的繁琐与不便,同时也降低了用户的学习曲线。
2、出于效率与程序体积两方面考虑,LGame中所有组件皆不依赖Swing,完全采取AWT绘制而成,因此它可以将自身的运行环境压缩到最小,一个压缩后不足4MB的精简JRE,已足够支持它的运行。
缺点
(1)该引擎除了基本的音效、图形、物理、精灵等常用组件以外,也内置有Ioc、xml、http等常用Java组件的封装,代价是jar体积较为庞大,PC版已突破1.2MB,Android版有所简化也在500KB左右。
(2)唯一遗憾的是,该项目作者是个极其懒惰的家伙,开发文档从去年说到今年依旧没有提供,只有游戏示例可供下载。
5.Libgdx
简介
libGdx是一个跨平台的2D/3D的游戏开发框架,它由Java/C/C++语言编写而成。它基于Apache License, Version 2.0协议,对商业使用和非商业使用均免费。
缺点
(1)精灵类等相关组件在使用上不够简化
(2)而且文档也较为匮乏。
(3)仅支持2的次方的图片尺寸。
6. JPCT
简介
jPCT是一款基于OpenGL技术开发的3D图形引擎(PC环境为标准OpenGL,Android 为OpenGL ES),以Java语言为基础的,拥有功能强大的Java 3D解决方案。该引擎与LGame(此为2D游戏引擎)相类似,目前拥有PC(J2SE)以及Android 两个开发版本。最低运行环境要求为Android 1.5。