Um Spiele oder Anwendungen zu gestalten, deren bespielbare Welt über ein einziges Fenster hinaus geht, kann man eine Kamera verwenden.
Hierzu muss bei der Engine ein CameraController
registriert werden.
Dies muss zwingend erfolgen, nachdem der View aufgebaut wurde:
viewDidLoad {
// Wir erzeugen einen CameraController, der die Standard-Kamera der Engine verwendet.
val cameraController = MeinCameraController(engine.camera)
// Der Controller wird registriert
engine.registerController(cameraController)
}
Die möglichen Kamera-Aktionen finden sich in der Dokumentation
Für die Animation der Bewegungen stehen verschiedene Möglichkeiten des Easings (Dämpfung oder Abschwächung) zur Verfügung:
SMOOTH
EASE_IN_ELASTIC
EASE_OUT_ELASTIC
EASE_OUT_BOUNCE
LINEAR
EASE_IN
EASE_OUT
EASE_IN_OUT
EASE_OUT_IN
EASE_IN_BACK
EASE_OUT_BACK
EASE_IN_OUT_BACK
EASE_OUT_IN_BACK
EASE_IN_OUT_ELASTIC
EASE_OUT_IN_ELASTIC
EASE_IN_BOUNCE
EASE_IN_OUT_BOUNCE
EASE_OUT_IN_BOUNCE
EASE_IN_QUAD
EASE_OUT_QUAD
EASE_IN_OUT_QUAD
EASE_SINE