OffsetVanishingPoint

Author: Eric Haines (Eric5h5), thanks to the PerspectiveOffCenter function from the Unity docs

Description
Offset the vanishing point of a specified camera by an arbitrary amount. This allows such effects as "Ken Burns" pans over your 3D scene as if it was a 2D image (i.e., no perspective shifting), setting the vanishing point off to the side for special menu effects, etc.

Usage
Call OffsetVanishingPoint by passing a camera and a Vector2 containing the x and y amounts that you want shifted compared to the default vanishing point. The Vector2 is an absolute offset, not a relative offset. A sample usage snippet:

As the docs say, using projectionMatrix will make the camera no longer update its rendering based on its fieldOfView, so using this function will make the camera stick at whatever FOV it had before you used it. If you want to change the FOV after using this function, you have to call ResetProjectionMatrix first.