简体   繁体   中英

diff between various frameworks for iOS game development?

Struggling to distinguish between frameworks for iOS game development. Looking to draw a comparison amongst following frameworks i came across :

How to choose between frameworks or we can mix/match these together, what goes with what ?

  1. Cocos2d
  2. Quartz2D
  3. OpenGL ES
  4. sparrow
  5. any other frameworks out there to consider ?

Which collision detection framework to use :

  1. Box2D or chipmunk ?
  2. is this a choice only with cocos2d ? what if i am using any of the other frameworks listed above , eg openGL ES - can box2d be used with that or some other popular framework serves a better combination ?

edit #1 When we start a fresh cocos2d project following lines of code seems to be ref to openGl - does that mean we can mix and match the two or one is built on top of other... ?

EAGLView *glView = [EAGLView viewWithFrame:[window bounds]
                               pixelFormat:kEAGLColorFormatRGB565   // kEAGLColorFormatRGBA8
                               depthFormat:0                        // GL_DEPTH_COMPONENT16_OES
                    ];

// attach the openglView to the director
[director setOpenGLView:glView];

Ok, Regarding physics engine of Box2d or chipmunk, i think both are great, each having its own benefits, it depends on you, using which engine you are more comfortable with?

Chipmunk is written in C, while Box2d is c++.

Box2D does support Continuous Collision Detection, but Chipmunk does not.

I personally use Box2d, may be i will be little biased, but i prefer Box2d. You can search more on cocos2d forum http://www.cocos2d-iphone.org/forum/ .

Now regarding the frameworks, then what i know cocos2d and sparrow are the game engines while openGL ES and Quartz 2D are the graphics rendering API.

there is a post regarding the difference between a framework and the engine given below What's the difference between an "engine" and a "framework"?

cocos2d uses openGL ES for drawing , difference between cocos2d and sparrow is well defined in the link given by bryanmac.

Using an engine is far more better to start than using an API and create your own framework. You will get many well defined functions already written in the engine which you have to code yourself if you use only rendering API.

I don't know much about sparrow but cocos2d is thoroughly developed, well documented, open source, Objective C language, so i will prefer cocos2d.

For what I have seen Cocos 2d is very powerful, you have full control of the scene, and it is still high-levelly as a framework. The learning curve is somehow steep, but it worth it. Of course you can integrate with Box2d http://www.raywenderlich.com/28602/intro-to-box2d-with-cocos2d-2-x-tutorial-bouncing-balls

Now, Sparrow for me is a speed framework, it is not as versatile as cocos-2d, but you can develop a game in a few days. In my experience, without knowing squat of sparrow, I took 15 days to develop a full simple game, where 60% of time I spent in designing the sprites and backgrounds. And yes you can use Box2d http://www.codeandweb.com/blog/2012/05/07/physicseditor-sparrow-box2d .

If you are starting, and your game is sprity, use sparrow, then little by little start moving to cocos-2d.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM