#include "pw/scene/camera.hpp"
#include "pw/core/transform_tools.hpp"

namespace pw {

camera::camera()
	: _fov(60.0)
	, _near_plane(0.2f)
	, _far_plane(1000)
{
    set_projection(transform_tools<real_t>::perspective_projection(_fov,1,_near_plane,_far_plane));
}

void camera::set_projection(const matrix4x4 &projection)
{
	this->_projection = projection;

    // recompute the simplified parameters
}

const matrix4x4 &camera::projection() const
{
	return _projection;
}


}
