Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

peanutman

macrumors newbie
Original poster
Jun 25, 2009
1
0
Hi!

I just stepped into the amazing world of iPhone development and have some questions. I have experience in programming c++/.net/java but no objective-c yet. My grapics knowledge is pretty much restricted to 2D DirectDraw.

As my first app I wanted to make a simple 2d game, but I'm a bit confused on what to use.

From the apple tutorial videos I learned there are 3 api's for graphics (Quartz, Core Animation, OpenGL).

So my first question is, for a 2d game, should I do quartz or opengl? The game will have objects that move all the time, so a decent framerate is required. From the video I noticed quartz has everything I want (alpha, gradients, primitives, images, ...) but is it fast enough?

Secondly, are there any good tutorials that handle 2d games? stuff like rendering text, the game loop, animation, ...?
 

Darkroom

Guest
Dec 15, 2006
2,445
0
Montréal, Canada
if i were you, i would study OpenGL (ES). although the learning curve is steeper than Quartz / Core Animation, it's generally more powerful and (i believe) faster than Quartz / Core Animation. In addition, in the event you should choose to port your work to other devices, OpenGL is cross platform.
 

Muncher

macrumors 65816
Apr 19, 2007
1,465
0
California
if i were you, i would study OpenGL (ES). although the learning curve is steeper than Quartz / Core Animation, it's generally more powerful and (i believe) faster than Quartz / Core Animation. In addition, in the event you should choose to port your work to other devices, OpenGL is cross platform.

Actually, OpenGL is fairly abstract; it's not that hard to learn. If you want game development on the iPhone, OpenGL is probably the way to go. If you're learning Objective-C and OpenGL and the iPhone SDK at the same time you're up for a challenge. I would recommend learning OpenGL, then Objective C, and then the iPhone SDK. OpenGL will be easiest for you to comprehend as it is procedural.

I can't tell you much about Quartz if you want to go that route, but it doesn't sound all that bad. The main disadvantage of using OpenGL is that you have to write a game engine from scratch. With Quartz I assume there is more already in place.
 

lazydog

macrumors 6502a
Sep 3, 2005
709
6
Cramlington, UK
OpenGL ES is pretty easy to pick up especially for 2D stuff. Plus you can carry on using C++ which you already know. If you don't mind implementing your game interface using OpenGL then you could get away with only learning the minimum amount of Objective-C, just enough to handle the touch interface, accelerometer and game loop. You'll need to think about sound too - plenty of options here too that don't require you to know Objective-C.

ß e n
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.