lecture 3: tile-based worlds and scrolling