iOS游戏开发的各种框架之间的差异?

时间:2012-03-20 03:09:07

标签: ios opengl-es cocos2d-iphone sparrow-framework

努力区分iOS游戏开发的框架。我希望在以下框架之间进行比较:

如何在框架之间进行选择,或者我们可以将这些框架混合在一起,具体是什么?

  1. 的cocos2d
  2. Quartz2D
  3. OpenGL ES
  4. 麻雀
  5. 要考虑的其他任何框架?
  6. 使用哪种碰撞检测框架:

    1. Box2D还是花栗鼠?
    2. 这只是cocos2d的选择吗?如果我使用上面列出的任何其他框架,例如openGL ES - 可以使用box2d或者其他一些流行的框架提供更好的组合吗?
    3. 编辑#1 当我们开始一个新的cocos2d项目时,下面的代码行似乎是对openGl的引用 - 这是否意味着我们可以混合和匹配这两个或者一个基于其他的......?

      EAGLView *glView = [EAGLView viewWithFrame:[window bounds]
                                     pixelFormat:kEAGLColorFormatRGB565   // kEAGLColorFormatRGBA8
                                     depthFormat:0                        // GL_DEPTH_COMPONENT16_OES
                          ];
      
      // attach the openglView to the director
      [director setOpenGLView:glView];
      

2 个答案:

答案 0 :(得分:3)

确定, 关于Box2d或者花栗鼠的物理引擎,我认为两者都很棒,每个都有自己的好处,这取决于你,使用哪种引擎你更舒服?

Chipmunk是用C语言编写的,而Box2d是c ++。

Box2D支持连续碰撞检测,但Chipmunk不支持。

我个人使用Box2d,可能是我会有点偏见,但我更喜欢Box2d。您可以在cocos2d论坛http://www.cocos2d-iphone.org/forum/上搜索更多内容。

现在关于框架,那么我所知道的cocos2d和sparrow是游戏引擎,而openGL ES和Quartz 2D是图形渲染API。

有关于下面给出的框架和引擎之间差异的帖子 What's the difference between an "engine" and a "framework"?

cocos2d使用openGL ES进行绘制,cocos2d和sparrow之间的区别在bryanmac给出的链接中有明确定义。

使用引擎比使用API​​并创建自己的框架要好得多。如果只使用渲染API,您将获得已经在引擎中编写的许多定义良好的函数,您必须自己编写代码。

我对麻雀了解不多,但cocos2d已经完全开发,有文档记录,开源,目标C语言,所以我更喜欢cocos2d。

答案 1 :(得分:1)

对于我所看到的,Cocos 2d非常强大,你可以完全控制场景,它仍然是一个高级别的框架。学习曲线有点陡峭,但值得。当然,您可以与Box2d http://www.raywenderlich.com/28602/intro-to-box2d-with-cocos2d-2-x-tutorial-bouncing-balls

集成

现在,Sparrow对我来说是一个速度框架,它不像cocos-2d那样多才多艺,但你可以在几天内开发游戏。根据我的经验,在不知道麻雀蹲下的情况下,我花了15天时间开发了一个完整的简单游戏,其中60%的时间用于设计精灵和背景。是的,你可以使用Box2d http://www.codeandweb.com/blog/2012/05/07/physicseditor-sparrow-box2d

如果你正在开始,并且你的游戏很精明,请使用麻雀,然后一点一点地开始转向cocos-2d。