在最近的全球移动开发者大会上,Touch发布了Cocos 3D引擎; 而几乎同一时间,基于Android的OGEngine也发布了新版本,并宣布将支持跨平台。
Cocos2d-x和OGEngine都是目前深受开发者欢迎的开源免费手游开发引擎,最近越来越多的游戏开发者关注。 在中国,Cocos2d-x占据了一定的市场份额。 然而,从Android社区中成长起来的OGEngine发展迅速,吸引了越来越多开发者的关注。
有趣的是,Cocos2d-x和OGEngine的发展轨迹惊人的相似:Cocos2d-x和OGEngine都起源于国外个体开发者开发的开源游戏引擎。 Cocos2d-x起源于Cocos2d-iphone2d游戏引擎开发,由Cocos2d发展而来,在Cocos2d-iphone的基础上扩展了跨平台; 而OGEngine则源于个人开发者Nicolas Gramlich开发的Android开源游戏引擎AndEngine,并在AndEngine的基础上扩展了跨平台。 两者均由中国企业优化扩展,深受国内乃至海外开发者欢迎。
下面详细对比一下Cocos2d-x和OGEngine。
Cocos2d-x衍生自支持iOS游戏开发的Cocos2d-iphone; 而OGEngine则源自安卓游戏开源引擎AndEngine。 Cocos2d-x基于Cocos2d-iphone,扩展了Cocos2d跨平台; C++开发,目前支持iOS、Android、Windows等。OGEngine基于AndEngine,扩展了AndEngine跨平台; 它是用Java开发的,支持Android和iOS平台。
由于Cocos2d-iphone是基于Objective-C开发的,所以Cocos2d-x支持的语言是C++。 因此,使用Cocos2d-x开发游戏的开发者必须使用C++。 但是Java程序开发者占多数,而且还在不断扩大游戏动态,所以支持Java的跨平台开源引擎很受欢迎。 OGEngine正是在这样的背景下迅速发展起来的。
Cocos2d-x 比OGEngine 更难上手。 Cocos2d-x 插件兼容性较差。 如果开发者更改了引擎代码,可能会导致在不同环境下不兼容。
OGEngine主要使用Java语言开发,但在涉及到大规模、耗时的功能时2d游戏素材,OGEngine使用C/C++原生代码进行开发,如物理引擎、音频处理等。 作为开发者,你只需要专注于Java2d游戏引擎开发,OGEngine已经封装了所有原生代码。 OGEngine支持Android和iOS平台,支持使用java直接编写iOS游戏; 更多的平台支持也在扩展中。
Cocos2d-x和OGEngine的详细对比如下:
Cocos2d-x和OGEngine各有特点,面向不同的开发者群体。 对于开发者来说,这意味着他们将有更多的选择,让他们能够更方便地制作游戏。 对于整个行业而言,OGEngine的崛起将大大降低手游开发的门槛,让更多的开发者,尤其是Java程序员投入到这个行业中,创造出更多优秀的作品。