Interface Projection

Defines a projection for a Camera.

interface Projection {
    inverseProjMatrix: Mat4;
    projMatrix: Mat4;
    transposedProjMatrix: Mat4;
    unproject(
        canvasPos: Vec2,
        screenZ: number,
        screenPos: Vec3,
        viewPos: Vec3,
        worldPos: Vec3,
    ): Vec3;
}

Implemented by

Properties

inverseProjMatrix: Mat4

The inverse of the projection matrix.

projMatrix: Mat4

The type of this projection.

transposedProjMatrix: Mat4

The transposed projection matrix.

Methods

  • Un-projects 2D View-space coordinates to 3D Screen/Clip-space, View-space, and World-space coordinates.

    Parameters

    • canvasPos: Vec2

      Inputs 2D View-space coordinates.

    • screenZ: number

      Inputs Screen-space Z coordinate.

    • screenPos: Vec3

      Outputs 3D Screen/Clip-space coordinates.

    • viewPos: Vec3

      Outputs un-projected 3D View-space coordinates.

    • worldPos: Vec3

      Outputs un-projected 3D World-space coordinates.

    Returns Vec3