Afterglow.Graphics.Cameras.Stand.CalculateViewMatrix C# (CSharp) Method

CalculateViewMatrix() public static method

Calculates the view matrix.
public static CalculateViewMatrix ( Vector3 position, Vector3 direction, Vector3 up ) : Matrix
position Afterglow.Math.Vector3 The position.
direction Afterglow.Math.Vector3 The direction.
up Afterglow.Math.Vector3 The up direction.
return Matrix
        public static Matrix CalculateViewMatrix(Vector3 position, Vector3 direction, Vector3 up)
        {
            var n = -direction.Normalized();
            var u = up.Cross(n).Normalized();
            var v = n.Cross(u);
            var e = -position;

            return new Matrix(
                u.X, v.X, n.X, 0,
                u.Y, v.Y, n.Y, 0,
                u.Z, v.Z, n.Z, 0,
                u.Dot(e), v.Dot(e), n.Dot(e), 1);
        }