X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fstereoview.h;h=911f5f8f1ffd922984d4c705782f07c7af9cdc7f;hb=cb460150f6870c172a70237f283c9753250be361;hp=b1e0473029fec0e05ceb848f1aefd5c9f0fbe700;hpb=932308a72ce197108007681dcc94dd8015a683f5;p=libs%2Fvr.git diff --git a/source/stereoview.h b/source/stereoview.h index b1e0473..911f5f8 100644 --- a/source/stereoview.h +++ b/source/stereoview.h @@ -13,7 +13,7 @@ namespace VR { class StereoCombiner; -class StereoView: public GL::Renderable +class StereoView { private: struct RenderTarget @@ -42,11 +42,9 @@ private: void create_target(unsigned, unsigned); void setup_frame(const GL::Camera &, const GL::Vector3 &, float, const EyeParams &) const; - void render(const GL::Renderable &, const GL::Tag &) const; + void render(const GL::Renderable &) const; }; - unsigned width; - unsigned height; const GL::Camera &base_camera; const GL::Renderable &renderable; const StereoCombiner *combiner; @@ -54,20 +52,18 @@ private: Eye right; float eye_spacing; Geometry::Angle strabismus; - mutable GL::Vector3 offset_axis; public: - StereoView(unsigned, unsigned, const GL::Camera &, const GL::Renderable &, const StereoCombiner &); + StereoView(const GL::Camera &, const GL::Renderable &, const StereoCombiner &); void set_combiner(const StereoCombiner &); void set_eye_spacing(float); void set_strabismus(const Geometry::Angle &); - virtual void setup_frame() const; - virtual void finish_frame() const; - - virtual void render(const GL::Tag & = GL::Tag()) const; - virtual void render(GL::Renderer &, const GL::Tag & = GL::Tag()) const; +private: + void setup_frame() const; +public: + void render() const; }; } // namespace VR