Previously I created a timer which fired every 1/60 second and called this method. Now I have a small loop which basically calls renderScene, processes any messages and repeats. This means the screen is redrawn as often as we can, giving the smoothest movement (and the shortest battery life?) possible.
Because we no longer know the frequency of the renderScene calls, we need to change the way we specify movement. Previously, each object had its movement given as a change in pixels per frame; eg x will increase by 4 pixels each frame. Now movement is given as pixels per second, with the movement for this frame calculates as deltaTime (time between last frame and this one, in seconds) times this value.
I've had a number of requests to get some bullets on the screen. People want to see the ship fire something when you tap the screen, but there's a few things I would like to sort out first. Number one is a better grasp of Objective C objects and memory management - I have at least one memory leak, but not the experience yet to track it down. I'm going to give this a break for a bit and write some simple practice code to hone my skills a bit.