linear-1.16.2: Linear Algebra

Linear.Projection

Description

Common projection matrices: e.g. perspective/orthographic transformation matrices.

Analytically derived inverses are also supplied, because they can be much more accurate in practice than computing them through general purpose means

Synopsis

# Documentation

Arguments

 :: (Epsilon a, Floating a) => V3 a Eye -> V3 a Center -> V3 a Up -> M44 a

Build a look at view matrix

Arguments

 :: Floating a => a FOV (y direction, in radians) -> a Aspect ratio -> a Near plane -> a Far plane -> M44 a

Build a matrix for a symmetric perspective-view frustum

Arguments

 :: Floating a => a FOV (y direction, in radians) -> a Aspect ratio -> a Near plane -> a Far plane -> M44 a

Build an inverse perspective matrix

Arguments

 :: Floating a => a FOV (y direction, in radians) -> a Aspect Ratio -> a Near plane -> M44 a

Build a matrix for a symmetric perspective-view frustum with a far plane at infinite

Arguments

 :: Floating a => a FOV (y direction, in radians) -> a Aspect Ratio -> a Near plane -> M44 a

Arguments

 :: Floating a => a Left -> a Right -> a Bottom -> a Top -> a Near -> a Far -> M44 a

Build a perspective matrix per the classic `glFrustum` arguments.

Arguments

 :: Floating a => a Left -> a Right -> a Bottom -> a Top -> a Near -> a Far -> M44 a

Arguments

 :: Floating a => a Left -> a Right -> a Bottom -> a Top -> a Near -> a Far -> M44 a

Build an orthographic perspective matrix from 6 clipping planes

Arguments

 :: Floating a => a Left -> a Right -> a Bottom -> a Top -> a Near -> a Far -> M44 a

Build an inverse orthographic perspective matrix from 6 clipping planes