added orthographic projection and common functionality header