From ae48cb072ded868ea5fd3d9225dd2e4931542eb9 Mon Sep 17 00:00:00 2001 From: itsmattkc Date: Sat, 31 Aug 2019 17:25:42 +1000 Subject: [PATCH] clear backbuffer when attaching --- app/render/renderframebuffer.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/app/render/renderframebuffer.cpp b/app/render/renderframebuffer.cpp index 1149355d5..5fc21178c 100644 --- a/app/render/renderframebuffer.cpp +++ b/app/render/renderframebuffer.cpp @@ -86,18 +86,33 @@ void RenderFramebuffer::Release() void RenderFramebuffer::Attach(RenderTexturePtr texture) { + if (context_ == nullptr) { + return; + } + texture_ = texture; AttachInternal(texture_->texture()); } void RenderFramebuffer::AttachBackBuffer(RenderTexturePtr texture) { + if (context_ == nullptr) { + return; + } + texture_ = texture; AttachInternal(texture_->back_texture()); + + context_->functions()->glClearColor(0.0f, 0.0f, 0.0f, 0.0f); + context_->functions()->glClear(GL_COLOR_BUFFER_BIT); } void RenderFramebuffer::Detach() { + if (context_ == nullptr) { + return; + } + QOpenGLFunctions* f = context_->functions(); // bind framebuffer for attaching