CSharpGL.glm.lookAt C# (CSharp) Method

lookAt() public static method

Build a look at view matrix. transform object's coordinate from world's space to camera's space.
public static lookAt ( vec2 eye, vec2 center, bool up ) : mat3
eye vec2 The eye.
center vec2 The center.
up bool Up.
return mat3
        public static mat3 lookAt(vec2 eye, vec2 center, bool up)
        {
            // camera's back in world space coordinate system
            vec2 back = (eye - center).normalize();
            // camera's right in world space coordinate system
            vec2 right = up.cross(back).normalize();
            if (!up) { right = -right; }

            mat3 viewMatrix = new mat3(1);
            viewMatrix.col0.x = right.x;
            viewMatrix.col1.x = right.y;
            viewMatrix.col0.y = back.x;
            viewMatrix.col1.y = back.y;

            // Translation in world space coordinate system
            viewMatrix.col3.x = -eye.dot(right);
            viewMatrix.col3.y = -eye.dot(back);

            return viewMatrix;
        }

Same methods

glm::lookAt ( vec3 eye, vec3 center, vec3 up ) : CSharpGL.mat4