#ifndef MSP_GL_STEREOCOMBINER_H_
#define MSP_GL_STEREOCOMBINER_H_
+#include <msp/geometry/angle.h>
+
namespace Msp {
namespace GL {
unsigned width_div;
unsigned height_div;
bool keep_aspect;
- float fov;
+ Geometry::Angle<float> fov;
StereoCombiner();
public:
unsigned get_width_divisor() const { return width_div; }
unsigned get_height_divisor() const { return height_div; }
bool is_aspect_kept() const { return keep_aspect; }
- float get_field_of_view() const { return fov; }
+ const Geometry::Angle<float> &get_field_of_view() const { return fov; }
virtual void render(const Texture2D &, const Texture2D &) const = 0;
};
EyeParams params;
params.fov = combiner->get_field_of_view();
- if(!params.fov)
+ if(params.fov==Geometry::Angle<float>::zero())
params.fov = base_camera.get_field_of_view();
params.aspect = base_camera.get_aspect();
#ifndef MSP_GL_STEREOVIEW_H_
#define MSP_GL_STEREOVIEW_H_
+#include <msp/geometry/angle.h>
#include "camera.h"
#include "framebuffer.h"
#include "renderable.h"
struct EyeParams
{
- float fov;
+ Geometry::Angle<float> fov;
float aspect;
float near_clip;
float far_clip;