iPhone game: converting to CALayer

In one of my previous posts I discussed my approach to starting development of a game.  I’m still working on this, but I’ve come to the point where I may upgrade my drawing code a little bit.

In my initial development I was simply drawing into a UIView via its CGContext.  Now I’m thinking about changing to drawing into CALayers.  This gives me a few advantages.  First, it lets me separate drawing a little bit more.  I already have most of the drawing broken into separate methods in my view, but now I can set a layer for the score, and a layer for the objects (or even a layer per object).  These aren’t too much of an advantage, but I think the biggest gain is that I can put a background image in a layer and then draw the rest of the items on top of it.  I won’t need to redraw the background on the view for every frame of animation.

The second advantage is for some animations – I can just set them up and let them run.  Take, for instance, an event like an explosion.  I could create a few layers for some particles in the explosion, set them up on a path (maybe with some rotation), and then just let it run.  I don’t have to add state tracking to animate these by hand with every frame.

I’ve only just started researching this, but I think this will work out nicely.

Tags: ,

Leave a Reply

You must be logged in to post a comment.