License | MIT |
---|---|

Safe Haskell | Safe |

Language | Haskell2010 |

## Synopsis

- affineIdentity :: (Vectorized a, Num a) => Mat4x4 a
- affineTranslation :: (Vectorized a, Num a) => Vec3 a -> Mat4x4 a
- affineScaling :: (Vectorized a, Num a) => Vec3 a -> Mat4x4 a
- affineLookAt :: (Vectorized a, Floating a) => Vec3 a -> Vec3 a -> Vec3 a -> Mat4x4 a
- affineAxisRotation :: Quaternionized a => Vec3 a -> a -> Quat a
- affineFromQuat :: Quaternionized a => Quat a -> Mat4x4 a
- projectionOrtho :: (Vectorized a, Floating a) => a -> a -> a -> a -> Mat4x4 a
- projectionPerspectiveFov :: (Vectorized a, Floating a) => a -> a -> a -> a -> Mat4x4 a

# Documentation

affineIdentity :: (Vectorized a, Num a) => Mat4x4 a Source #

affineTranslation :: (Vectorized a, Num a) => Vec3 a -> Mat4x4 a Source #

affineScaling :: (Vectorized a, Num a) => Vec3 a -> Mat4x4 a Source #

affineLookAt :: (Vectorized a, Floating a) => Vec3 a -> Vec3 a -> Vec3 a -> Mat4x4 a Source #

affineAxisRotation :: Quaternionized a => Vec3 a -> a -> Quat a Source #

affineFromQuat :: Quaternionized a => Quat a -> Mat4x4 a Source #

:: (Vectorized a, Floating a) | |

=> a | Width of screen in view-space units. |

-> a | Height of screen in view-space units. |

-> a | Z mapped to 0. |

-> a | Z mapped to 1. |

-> Mat4x4 a |

Orthographic projection matrix.

projectionPerspectiveFov Source #

:: (Vectorized a, Floating a) | |

=> a | Vertical field of view in radians. |

-> a | Viewport width / height. |

-> a | Linear Z mapped to homogeneous 0. |

-> a | Linear Z mapped to homogeneous 1. |

-> Mat4x4 a |

Perspective projection matrix.