May 2010

Core Animation Performance Tips

In my copious free time, I've been working on a videogame for the iPad. Friends and family may interject here that it seems like I'm always working on a videogame in my free time, but I've never actually finished one. This time is different. Really.

All of my personal projects are intended primarily to be interesting and fun for me. I gave myself a couple of technical constraints to keep things challenging:

  • All the code is well-factored idiomatic Objective-C. Unlike a lot of iPhone/iPad game programmers, I'm not writing all the guts in low-level C or C++ and then sprinkling a minimal amount of Cocoa on top to interface with the OS.
  • I'm using Core Animation as my "engine", rather than the OpenGL ES API or an off-the-shelf gaming engine. (Note: My game only needs a couple dozen sprites.)

So far, things have worked out well. I was worried that using Objective-C and Core Animation might lead to performance issues on the iPad, but that hasn't been the case. I have run into a couple of issues with Core Animation that were pretty easy to fix.

My iPad Review

So, I've had an iPad for about a month and a half. Here are my impressions:

Overall, it's really nice. It fills the need for a little Internet-connected device that lets me watch video, read books, read online news, and browse the web. I used to keep my old 13-inch MacBook next to the couch for these purposes, but that MacBook is now in a closet. I've also put away my Sony Reader that I kept on the nightstand.

Looking for iPad Application Beta Testers

Some time in the next few weeks, I hope to have an iPad game ready for submission to the App Store. I am looking for people to help me test the app.