#ifndef CAMERA_H #include "point.h" #include "util.h" #include // STRUCTURE struct Camera { inline Camera(void) { position.x = 0.0f; position.y = 0.0f; position.z = 0.0f; rotation[0] = 0.0f; rotation[1] = 0.0f; rotation[2] = 0.0f; nearClip = 1.0f; farClip = 1000.0f; } inline void SetFOV(float fov, int winWidth, int winHeight) { xZoom = 1.0f / tanf(DEG_TO_RAD(fov/2.0f)); yZoom = (xZoom * winWidth) / winHeight; xScale = (0.5f * winWidth) - 0.5f; yScale = (0.5f * winHeight) - 0.5f; } Point position; float rotation[3]; float nearClip, farClip; float xZoom, yZoom; float xScale, yScale; }; #define CAMERA_H #endif