2d手机游戏开发:OpenGL ES 2.0还是cocos2d-x?

时间:2012-05-18 22:32:52

标签: java android c++ ios opengl-es

我计划建立一个移动游戏。我的目标平台是iOS和Android。我希望能够在Windows和/或Linux上进行测试。除了一般的游戏开发经验之外,我在这方面有点过头了,所有的技术对我来说都是相当新的。我做了大量的研究并得出结论,游戏应该写入/移植到C ++中,以确保我的大部分引擎都可以轻松移植到多个设备上。

我更喜欢的另一件事是最初用java编写游戏并将端口编写为C ++,因为那是我最舒服的地方,并且能够以最快的速度完成游戏。

现在我有选择是否使用cocos2d-x等游戏引擎,或者从头开始编写引擎并使用OpenGL ES 2.0进行渲染的问题。最初我认为使用cocos2d-x会更好,因为我没有很多使用OpenGL的经验。然而,使用cocos2d-x的问题在于,因为我想最初用java编写游戏,所以我很难将引擎移植到符合cocos2d-x(或者I' d必须先了解cocos2d-x引擎的所有内容,然后编写我的引擎来模仿cocos2d-x引擎......似乎多余了。

经过进一步考虑,我认为使用OpenGL编写自己的引擎实际上是更好的选择。我能够使用PowerVR SDK和JOGL来模拟GLES环境。此外它似乎很好,因为我能够允许GL在碰撞检测和转换方面为我做大部分工作。我唯一的问题是,由于游戏也将提供多人游戏支持,GL碰撞检测等基本上没有实际意义,因为我不得不做冲突检查服务器端,以防止游戏容易被黑客入侵。当然对于单人游戏来说,这种方法是可行的。

显然这个决定是主观的,取决于我个人的偏好,但我希望给一些更有经验的人提供足够的背景来发表意见。

话虽如此,我的问题是:考虑到这些参数 - 对我来说使用cocos2d-x并且遭受从C ++开始构建游戏的头部创伤会更好,还是写我的更好最初在java中拥有引擎并在OpenGL方面挣扎吗?

2 个答案:

答案 0 :(得分:0)

从头开始构建自己的引擎将是一项太多的工作,并会吸引大量的bug进入。在我看来,久经考验的引擎是更好的选择。移植将更容易,因为你将有一个工作游戏 我目前正在使用Marmalade引擎,我对它的性能非常满意。它让您可以直接访问OpenGL库,但我从未尝试过。您也应该尝试一下,虽然它不是免费的,但是90天的评估许可证可以免费查看。

答案 1 :(得分:0)

我决定使用cocos2d-x在c ++中从头开始编写它。它没有我想象的那么糟糕。

相关问题