我计划为移动设备构建一个游戏,目标平台是iOS和Android。我希望能在Windows和/或Linux上进行测试。除了一般的游戏开发经验外,所有技术对我来说都比较新,这让我有些超负荷了。我已经做了相当多的研究,得出结论:应该使用C++编写/移植游戏,以确保引擎的大部分内容可以轻松地移植到多个设备上。
另一件事是,我希望最初用Java编写游戏,然后再将其移植到C ++中,因为那是我最熟悉的语言,也是最快完成的方式。
现在我面临选择是否使用像cocos2d-x这样的游戏引擎,还是从头开始编写引擎,并使用OpenGL ES 2.0进行渲染。最初我认为使用cocos2d-x会更好,因为我对OpenGL不太熟悉。但我使用cocos2d-x的问题在于,由于我想最初使用Java编写游戏,所以我将很难将引擎移植到符合cocos2d-x的规范(或者我必须先学习cocos2d-x引擎的所有知识,然后编写我的引擎来模仿cocos2d-x引擎...这似乎有些多余)。
经过进一步考虑,我认为使用OpenGL编写自己的引擎实际上是更好的选择。我可以使用PowerVR SDK以及JOGL来模拟GLES环境。此外,它似乎很好,因为我将能够让GL为我处理大部分碰撞检测和变换工作。我对此唯一的问题是,由于游戏还将支持多人游戏,GL碰撞检测等基本无用,因为我无论如何都必须在服务器端进行碰撞检测,以防止游戏被轻易破解。当然,对于单人游戏玩法,这种方法是可行的。
显然,这个决定是主观的,并取决于我的个人喜好,但我希望已经提供了足够的背景,让一些经验丰富的人发表意见。
话虽如此,我的问题是:在这些参数的基础上,对我来说,是更好地使用cocos2d-x并忍受从头开始构建C ++游戏的困难,还是最初在Java中编写自己的引擎并努力完成其中的OpenGL方面?
另一件事是,我希望最初用Java编写游戏,然后再将其移植到C ++中,因为那是我最熟悉的语言,也是最快完成的方式。
现在我面临选择是否使用像cocos2d-x这样的游戏引擎,还是从头开始编写引擎,并使用OpenGL ES 2.0进行渲染。最初我认为使用cocos2d-x会更好,因为我对OpenGL不太熟悉。但我使用cocos2d-x的问题在于,由于我想最初使用Java编写游戏,所以我将很难将引擎移植到符合cocos2d-x的规范(或者我必须先学习cocos2d-x引擎的所有知识,然后编写我的引擎来模仿cocos2d-x引擎...这似乎有些多余)。
经过进一步考虑,我认为使用OpenGL编写自己的引擎实际上是更好的选择。我可以使用PowerVR SDK以及JOGL来模拟GLES环境。此外,它似乎很好,因为我将能够让GL为我处理大部分碰撞检测和变换工作。我对此唯一的问题是,由于游戏还将支持多人游戏,GL碰撞检测等基本无用,因为我无论如何都必须在服务器端进行碰撞检测,以防止游戏被轻易破解。当然,对于单人游戏玩法,这种方法是可行的。
显然,这个决定是主观的,并取决于我的个人喜好,但我希望已经提供了足够的背景,让一些经验丰富的人发表意见。
话虽如此,我的问题是:在这些参数的基础上,对我来说,是更好地使用cocos2d-x并忍受从头开始构建C ++游戏的困难,还是最初在Java中编写自己的引擎并努力完成其中的OpenGL方面?