From 1ede01ab671f707338b2cc13517877cccd4a4f7f Mon Sep 17 00:00:00 2001 From: Eleni Maria Stea Date: Mon, 17 Jul 2017 10:51:46 +0300 Subject: [PATCH] backup of where I was last week (nothing added) --- src/opengl/renderer-gl.cc | 15 ++++++--------- src/opengl/renderer-gl.h | 3 +-- src/renderer.cc | 5 +++++ src/renderer.h | 4 +--- 4 files changed, 13 insertions(+), 14 deletions(-) diff --git a/src/opengl/renderer-gl.cc b/src/opengl/renderer-gl.cc index 1773f40..8ff53ca 100644 --- a/src/opengl/renderer-gl.cc +++ b/src/opengl/renderer-gl.cc @@ -26,15 +26,6 @@ RendererGL::~RendererGL() { } -bool RendererGL::load_shader_program(const char *vfname, const char *ffname) -{ - return true; -} - -void RendererGL::use_shader_program() -{ -} - bool RendererGL::create() { return true; @@ -46,4 +37,10 @@ void RendererGL::draw_object(Object *object) const void RendererGL::draw() const { + //TODO + /* set state, uniforms */ + sprog->use(); + for(size_t i=0; iobjects.size(); i++) { + draw_object(scene->objects[i]); + } } \ No newline at end of file diff --git a/src/opengl/renderer-gl.h b/src/opengl/renderer-gl.h index 88ba727..ec9357e 100644 --- a/src/opengl/renderer-gl.h +++ b/src/opengl/renderer-gl.h @@ -16,8 +16,7 @@ public: virtual ~RendererGL(); - virtual bool load_shader_program(const char *vfname, const char *ffname) override; - virtual void use_shader_program() override; + bool load_program(ShaderProgram *sprog); virtual bool create() override; // load shader prog, scene data etc virtual void draw() const override; // set state from camera, set uniforms diff --git a/src/renderer.cc b/src/renderer.cc index 2c9b4c3..180f003 100644 --- a/src/renderer.cc +++ b/src/renderer.cc @@ -17,4 +17,9 @@ Renderer::Renderer(ShaderProgram *sprog, Scene *scene, Camera *camera) Renderer::~Renderer() { +} + +void Renderer::set_program(ShaderProgram *sprog) +{ + this->sprog = sprog; } \ No newline at end of file diff --git a/src/renderer.h b/src/renderer.h index 776ad9d..7c32c50 100644 --- a/src/renderer.h +++ b/src/renderer.h @@ -26,9 +26,7 @@ public: Renderer(ShaderProgram *sprog, Scene *scene, Camera *camera); virtual ~Renderer(); - virtual bool load_shader_program(const char *vfname, const char *ffname) = 0; - virtual void use_shader_program() = 0; - + virtual void set_program(ShaderProgram *sprog); virtual bool create() = 0; virtual void draw() const = 0; }; -- 1.7.10.4