quick backup
[demo] / src / opengl / renderer-gl.cc
1 #include <GL/glew.h>
2
3 #include "object.h"
4 #include "scene.h"
5
6 #include "opengl/mesh-gl.h"
7 #include "opengl/renderer-gl.h"
8 #include "opengl/shader-gl.h"
9 #include "opengl/texture-gl.h"
10
11 RendererGL::RendererGL()
12 {
13         sprog = 0;
14         scene = 0;
15         camera = 0;
16 }
17
18 RendererGL::RendererGL(ShaderProgram *sprog, Scene *scene, Camera *camera)
19 {
20         this->sprog = sprog;
21         this->scene = scene;
22         this->camera = camera;
23 }
24
25 RendererGL::~RendererGL()
26 {
27 }
28
29 bool RendererGL::create()
30 {
31         return true;
32 }
33
34 void RendererGL::draw_object(Object *object) const
35 {
36         object->mesh->draw();
37 }
38
39 void RendererGL::draw() const
40 {
41         //TODO
42         /* set state, uniforms */
43         sprog->use();
44         for(size_t i=0; i<scene->objects.size(); i++) {
45                 draw_object(scene->objects[i]);
46         }
47 }