我目前正在为Android和Android开发游戏iphone&我想知道我是否应该使用需要大量图像序列的逐帧动画或使用Opengl来创建动画?
对于操作图像的游戏开发,更推荐什么?
另外对于iphone我应该从提供的各种框架(Cocas2D,核心动画,核心图像,石英等)开始?
答案 0 :(得分:5)
我将把我的答案分为3个部分:iOS,Android和Windows Phone,因为这些是最常见的移动操作系统。
这里大致与iOS相同 - 你不需要使用opengl,但如果你这样做,你会在复杂性,图形和灵活性方面有更多的可能性。
直到Android 3.0(API 11),您甚至可以为2D画布图形启用硬件加速。
这里你绝对不会使用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作为一个框架,因为它有很多不错的功能并且非常稳定。这并不是说其他人都不好。只是科科斯很好。 :)