国内外六大手游开发引擎优劣

无论是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。