X-Git-Url: http://git.mutantstargoat.com?a=blobdiff_plain;f=src%2Fcamera.h;h=0f70040c991c42bf2d4fa2695909cf9713ce6411;hb=05d269a194496bcef85da78652b947f5bf1c9bcf;hp=cbd543fb65dbd2552ccef4492caf4f4f185ffc3c;hpb=369d75c73bf926a6dbcf4d740c8664bbb401602a;p=demo diff --git a/src/camera.h b/src/camera.h index cbd543f..0f70040 100644 --- a/src/camera.h +++ b/src/camera.h @@ -6,11 +6,9 @@ class Camera { public: Camera(); - Camera(float phi, float theta, float distance, float fov); virtual ~Camera(); virtual Mat4 get_view_matrix() const = 0; - virtual void use() const; }; class OrbitCamera : public Camera { @@ -19,16 +17,18 @@ protected: float phi; float distance; + Vec3 position; + public: OrbitCamera(); - OrbitCamera(float theta, float phi, float distance); virtual ~OrbitCamera(); virtual Mat4 get_view_matrix() const override; - void set_orbit_params(float phi, float theta, float distance); + void set_orbit_params(float theta, float phi, float distance); + void set_position(float x, float y, float z); }; -Mat4 calc_projection_matrix(float f, float n, float aspect, float fov); +Mat4 calc_projection_matrix(float fov_deg, float aspect, float n, float f); -#endif // CAMERA_H_ \ No newline at end of file +#endif // CAMERA_H_