Files
utad-3d/src/camera.h

47 lines
716 B
C++

#ifndef CAMERA_H_
#define CAMERA_H_
#include "entity.h"
#include "../lib/glm/glm.hpp"
class Camera : public Entity {
public:
Camera();
[[nodiscard]] const glm::mat4& projection() const
{
return projection_;
}
void set_projection(const glm::mat4& proj)
{
projection_ = proj;
}
[[nodiscard]] const glm::ivec4& viewport() const
{
return viewport_;
}
void set_viewport(const glm::ivec4& vp)
{
viewport_ = vp;
}
[[nodiscard]] const glm::vec3& clear_color() const
{
return clear_color_;
}
void set_clear_color(const glm::vec3& color)
{
clear_color_ = color;
}
void prepare();
private:
glm::mat4 projection_;
glm::ivec4 viewport_;
glm::vec3 clear_color_;
};
#endif // CAMERA_H_