private void OverheadCamera() { GL.MatrixMode(MatrixMode.Modelview); Vector3Ref position = new Vector3Ref(); overheadcameraK.GetPosition(platform, position); Vector3 position_ = new Vector3(position.GetX(), position.GetY(), position.GetZ()); Vector3Ref center = new Vector3Ref(); overheadcameraK.GetCenter(center); Vector3 center_ = new Vector3(center.GetX(), center.GetY(), center.GetZ()); Matrix4 camera = Matrix4.LookAt(position_, center_, up); m = new float[] { camera.M11, camera.M12, camera.M13, camera.M14, camera.M21, camera.M22, camera.M23, camera.M24, camera.M31, camera.M32, camera.M33, camera.M34, camera.M41, camera.M42, camera.M43, camera.M44 }; GL.LoadMatrix(ref camera); }