]> git.tdb.fi Git - libs/gl.git/blobdiff - source/renderer.cpp
Deprecated the Renderer constructor taking a Camera pointer
[libs/gl.git] / source / renderer.cpp
index d01a1f0c4156ba319ee8c6fadd0fc4ae3d58352d..d6090d7d2cd57db6fb7318f15df8d8752abcbe30 100644 (file)
@@ -21,22 +21,30 @@ using namespace std;
 namespace Msp {
 namespace GL {
 
+Renderer::Renderer():
+       default_camera(0)
+{
+       init();
+}
+
 Renderer::Renderer(const Camera *c):
-       default_camera(c),
-       changed(0),
-       state_stack(1)
+       default_camera(c)
+{
+       init();
+
+       if(c)
+               set_camera(*c);
+}
+
+void Renderer::init()
 {
        state_stack.reserve(16);
+       state_stack.push_back(State());
        shdata_stack.reserve(32);
        state = &state_stack.back();
 
-       if(c)
-               set_camera(*c);
-       else
-       {
-               standard_shdata.uniform("projection_matrix", Matrix());
-               standard_shdata.uniform("eye_world_matrix", Matrix());
-       }
+       standard_shdata.uniform("projection_matrix", Matrix());
+       standard_shdata.uniform("eye_world_matrix", Matrix());
 }
 
 Renderer::~Renderer()