views:

998

answers:

4

Hi, I have been developing iPhone Applications for a couple of months. I would like to know your views about the Quartz vs OpenGL ES 1.x or 2.0 learning curve. You can tell your perspective. My Questions are

*I am a wannabe game developer, So is it a good idea to first develop in quartz , then move
on to OpenGL ES or does it not make an difference *Can you please tell your experiences when you were having the similar question

Thanks :)

+3  A: 

I skipped Quartz and went right to OpenGL ES. I started with a 2D sprite based game. Thought it was pretty easy.

The key is having a good example to look at. I used the Lunar Lander clone (Crash Lander), but I don't think that's easy to find anymore. Maybe someone who has done it recently knows of a better, newer example that uses current best practices.

Nosredna
Where'd you originally find your lunar lander clone?
bobobobo
I had to ask around on boards. I'm kind of surprised at the lack of good examples now that I look around. Here are some resources: http://maniacdev.com/2009/04/8-great-resources-for-learning-iphone-opengl-es/
Nosredna
A: 

I'm in the same boat as you describe, although I have no programming background. (Although I don't know what your background is either) Currently, I am in the process of learning to code as I learn the various API's that are available. I'm an objective-c guy going backwards to the c-based Quartz API, and it's a little bit of a challenge. Luckily, Programming in Objective-C 2.0 by S. Kochan has a great chapter on underlying C features to keep you afloat.

I have taken a couple of stabs @ OpenGLES, and I have to say, that from a conceptual standpoint, I'm not ready for it. The Quartz2d API is a bit easier to learn conceptually because it's very easy to get up & running with a few commands. Right now, I'm at the point where I can define shapes and point to point images with out too much trouble.

OpenGLES is going to be something in my future, but it takes such an enormous amount of code to configure the drawing view, set up buffers, etc. If you are familiar with everything the code is doing, then it's a bit easier. However, from a learning perspective, Quartz is an easier way to get going, quickly.

Resources I'm using: The aforementioned book, and an anemic amount of blogs containing tutorials, which are limited @ best. At this point, make an appointment with the apple docs and get cozy, because it's about the best (free) stuff that's out there (& exhaustive) With that said, I'd love for someone to prove me wrong on this site by posting a great resource for learning, but that's about it. Good Luck.

samfu_1
A: 

Thank you very much for your inputs ;)

Felix
+2  A: 

Quartz 2D is not applicable for game development IMHO. It is software rendering API. It won't give you realtime rendering speed. It's good for drawing charts or vector text with shadows, or for blending several images together. Just not for games. Sooner or later you'll end up using Open GL ES or game framework build on top of it. I recommend you to check cocos2D, SIO2 engine, or examples from SDK.

noop