class Camera {
public:
Camera();
- Camera(float phi, float theta, float distance, float fov);
virtual ~Camera();
virtual Mat4 get_view_matrix() const = 0;
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);
};
Mat4 calc_projection_matrix(float fov_deg, float aspect, float n, float f);