移动游戏开发需要opengl吗?

时间:2012-02-01 17:21:54

标签: android iphone mobile opengl-es

我目前正在为Android和Android开发游戏iphone&我想知道我是否应该使用需要大量图像序列的逐帧动画或使用Opengl来创建动画?

对于操作图像的游戏开发,更推荐什么?

另外对于iphone我应该从提供的各种框架(Cocas2D,核心动画,核心图像,石英等)开始?

2 个答案:

答案 0 :(得分:5)

我将把我的答案分为3个部分:iOS,Android和Windows Phone,因为这些是最常见的移动操作系统。

的iOS

除非你想制作高性能游戏,否则不需要openGL。 这意味着,你可以通过软件(cpu)绘制简单的2d东西,但你将无法绘制 令人敬畏的3D世界(自我射击游戏,3D赛车游戏等)或具有过于复杂效果的2D游戏。在较新的iOS版本(不记得实际版本)2d ui的东西也是硬件加速。对于使用opengl,您应该使用第三方库,例如您提到的那些。

的Android

这里大致与iOS相同 - 你不需要使用opengl,但如果你这样做,你会在复杂性,图形和灵活性方面有更多的可能性。

直到Android 3.0(API 11),您甚至可以为2D画布图形启用硬件加速。

Windows Phone 7

这里你绝对不会使用opengl。什么?在wp7中没有很棒的游戏? 嘿,当然,它的名字是Direct3D 9.它是开源opengl的MS挂件。 简而言之,Direct3d更易于使用,具有更多功能并且证明了大多数更好的性能。所有这一切,甚至direct3d 9都有点过时,当前版本是11.1,这真的很棒。我既不是wp7也不是Windows粉丝,但direct3d只是简单的apis。 此外,Visual Studio为开发游戏提供了最佳集成(XNA + VS)。

其它

我已经在所有三个平台上编程,主要是在Android上这样说: Android上的游戏开发是三者中最难的,因为没有IDE的直接支持,它很快就会变得安静尴尬。我建议使用第三方库,例如LibGDX。 然后是iOS,它几乎不提供XCode对游戏开发的支持。 最后是Windows Phone 7,Visual Studio提供了全面的游戏开发支持。

结论

最后说:对于简单的图像处理(旋转,平移),您不需要openGL。对于复杂的转换,即使它们是2d,你也应该使用openGL。就个人而言,由于性能和较小的灵活性,我不会在没有硬件加速的情况下制作游戏。你不能说将来会发生什么!

答案 1 :(得分:0)

逐帧动画是我用于我写的iPhone游戏的动画。只要你没有太多的图像(导致大量内存使用和长时间加载),这种方法就可以了。

但是,如果你有能力生产资产,那么使用3D动画也会很好。

所以对你的问题的真正答案是,不是没有必要使用3D(我认为这是你的意思是OpenGL)。但这可能是一种更好的方式,具体取决于您的需求。

在iPhone上,我推荐Cocos2D作为一个框架,因为它有很多不错的功能并且非常稳定。这并不是说其他​​人都不好。只是科科斯很好。 :)