Improving the camera
Our camera code works well; it follows the player wherever they fly. However, we can improve the camera to enhance the flying experience. In this section, we will add two new features:
Zoom the camera out as Pierre Penguin flies higher, reinforcing the feeling of increasing height.
Suspend vertical centering when the player drops below the halfway point of the screen. This means the ground never fills too much of the screen, and adds the feeling of cutting upwards into the air when Pierre flies higher and the camera starts tracking him again.
Follow these steps to implement these two improvements:
In
GameScene.swift
, create a new variable in theGameScene
class to store the center point of the screen:Â Â Â Â Â Â Â var screenCenterY = CGFloat()
In the
didMove
function, set this new variable with the calculated center of the screen's height:Â Â Â Â Â Â Â // Store the vertical center of the screen: Â Â Â Â Â Â screenCenterY = self.size.height / 2
We need to rework the
didSimulatePhysics...