5200ba4dbe
Next up is attenuation
29 lines
571 B
C++
29 lines
571 B
C++
#pragma once
|
|
|
|
#include <glm/glm.hpp>
|
|
|
|
#include "Poseable.h"
|
|
|
|
namespace charcoal
|
|
{
|
|
using namespace glm;
|
|
|
|
class Camera
|
|
{
|
|
public:
|
|
Camera() : m_view_matrix(1.0f), m_projection_matrix(1.0f) {}
|
|
|
|
mat4 get_world_to_view_matrix() const { return m_projection_matrix * m_view_matrix; }
|
|
|
|
const vec3& get_position() const { return m_position; }
|
|
|
|
const mat4& get_view_matrix() const { return m_view_matrix; }
|
|
|
|
const mat4& get_projection_matrix() const { return m_projection_matrix; }
|
|
|
|
protected:
|
|
vec3 m_position;
|
|
mat4 m_view_matrix;
|
|
mat4 m_projection_matrix;
|
|
};
|
|
} |