The game loop
What is a game loop anyway? Almost every game has a game loop. Even games you might suspect do not, like turn-based games, still need to synchronize player input with drawing and AI while following the rules of the underlying operating system.
There is a constant need to update the objects in the game, perhaps by moving them, draw everything in its current position all the while responding to user input. A picture might help:
Our game loop comprises three main phases.
Update all game objects by moving them, detecting collisions and processing AI (artificial intelligence) if used
Based on the just-updated data, draw the frame of animation in its latest state
Respond to screen touches from the player
We already have a draw
method for handling that part of the loop. This suggests that we will have a method to do all the updating as well. We will soon code the outline of an update
method. In addition, we know that we can respond to screen touches although we will need to adapt slightly...