The app.
The camera to fly.
Called when the flight ends from the keyboard.
The field of view the flown view keeps.
Whether the camera is orthographic, which zooms rather than moving forward.
The orthographic height the flown view keeps, changed by zooming.
Units a second, changed with the wheel.
Whether forward and back zoom the view rather than moving it, as they do for an orthographic camera.
The event.
The event.
A pointer event on the canvas.
Flies a camera the app keeps drawing with. The app may move the camera itself, from a script or from code of its own, so the camera is not taken over: its transform is swapped for the flown one on the app's prerender event, after every update has run, and put back on postrender, so the frame is drawn from the flown pose while the app keeps seeing and moving its own. Its projection is held the same way, at the field of view or orthographic height it had when the flight started, as an app may animate those too. Leaving fly mode needs no restoring. An orthographic view shows no movement along its direction, so there forward and back zoom instead, and panning scales with the height of the view. The keyboard and the pointer on the canvas are taken ahead of the app while flying, and the flight runs on the wall clock, so a paused app can be flown through.