diff --git a/src/graphics/rtts.cpp b/src/graphics/rtts.cpp index 3ed8d19c8..59c836dbf 100644 --- a/src/graphics/rtts.cpp +++ b/src/graphics/rtts.cpp @@ -269,6 +269,7 @@ RTT::RTT(size_t width, size_t height) RTT::~RTT() { + glBindFramebuffer(GL_FRAMEBUFFER, 0); glDeleteTextures(RTT_COUNT, RenderTargetTextures); glDeleteTextures(1, &DepthStencilTexture); if (CVS->isShadowEnabled()) diff --git a/src/graphics/shader_based_renderer.cpp b/src/graphics/shader_based_renderer.cpp index 18bb1cbc8..75db1dfc3 100644 --- a/src/graphics/shader_based_renderer.cpp +++ b/src/graphics/shader_based_renderer.cpp @@ -55,8 +55,13 @@ void ShaderBasedRenderer::setRTTDimensions(size_t width, size_t height) m_rtts = new RTT(width, height); } else - { + { //same dimensions; we don't need to create a new RTT + //just clear FBO_COMBINED_DIFFUSE_SPECULAR + m_rtts->getFBO(FBO_COMBINED_DIFFUSE_SPECULAR).bind(); + glClearColor(.5, .5, .5, .5); + glClear(GL_COLOR_BUFFER_BIT); + glBindFramebuffer(GL_FRAMEBUFFER, 0); return; } }