]> git.tdb.fi Git - libs/vr.git/blobdiff - source/stereoview.h
Add getters for the camera in StereoView
[libs/vr.git] / source / stereoview.h
index ff34706cc4b450d1daff8d7844b5147c282ffc5d..ec1b246530b1e41090d677c1da7126fe18cb338e 100644 (file)
@@ -37,12 +37,13 @@ private:
        struct Eye
        {
                mutable GL::Camera camera;
+               GL::Matrix offset_matrix;
                RenderTarget *target;
 
                Eye();
 
                void create_target(unsigned, unsigned);
-               void setup_frame(const GL::Camera &, const GL::Vector3 &, float, const EyeParams &) const;
+               void setup_frame(const GL::Camera &, float, const EyeParams &) const;
                void render(const GL::Renderable &) const;
        };
 
@@ -52,7 +53,6 @@ private:
        const GL::Renderable *content;
        Eye left;
        Eye right;
-       float eye_spacing;
        Geometry::Angle<float> strabismus;
 
 public:
@@ -62,8 +62,11 @@ private:
        void init();
 
 public:
+       const GL::Camera &get_base_camera() const { return base_camera; }
+       const HeadTrackingCamera *get_head_camera() const { return head_camera; }
        void set_content(const GL::Renderable *);
        void set_eye_spacing(float);
+       void set_eye_matrices(const GL::Matrix &, const GL::Matrix &);
        void set_strabismus(const Geometry::Angle<float> &);
 
 private: