diff --git a/forwardmodule.cpp b/forwardmodule.cpp index 0c58bfa..05844c3 100644 --- a/forwardmodule.cpp +++ b/forwardmodule.cpp @@ -29,9 +29,6 @@ void ForwardModule::renderGL(Camera* myCamera, Scene* scene) renderTarget->bindFBO(); // render ambient lighting - glAssert(glClearColor(0, 0.1f, 0.05f, 1.)); // add attribute, and setter for clear color - glAssert(glClearDepth(1.0)); - glAssert(glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT)); glAssert(glDepthFunc(GL_LESS)); glAssert(glDisable(GL_BLEND)); diff --git a/sparrowrenderer.cpp b/sparrowrenderer.cpp index 5983d35..5bbc856 100644 --- a/sparrowrenderer.cpp +++ b/sparrowrenderer.cpp @@ -58,6 +58,9 @@ void SparrowRenderer::resizeGL(int width, int height) void SparrowRenderer::renderGL() { + glAssert(glClearColor(clearColor.r, clearColor.g, clearColor.b, 1)); + glAssert(glClearDepth(1.0)); + glAssert(glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT)); for(ModuleNode &m : modules) { if(m.isEnabled) diff --git a/sparrowrenderer.h b/sparrowrenderer.h index a86f595..e980412 100644 --- a/sparrowrenderer.h +++ b/sparrowrenderer.h @@ -3,6 +3,7 @@ #include #include +#include class Camera; class Module; @@ -11,12 +12,19 @@ class Scene; class SparrowRenderer { public: + SparrowRenderer() : + camera(NULL), + scene(NULL), + clearColor(0) + {} + // main methods void initGL(int width, int height, bool forceCrappy = false); void destroyGL(); void resizeGL(int width, int height); void renderGL(); static bool isModernOpenGLAvailable(); + void setClearColor(glm::vec3 color) {clearColor=color;} // clock methods double getFPS(); @@ -48,6 +56,7 @@ protected: Scene* scene; std::vector modules; static bool modernOpenglAvailable; + glm::vec3 clearColor; std::vector::iterator getModuleNode(std::string name); };