From 6fa59eb26c39443eb44feecd17b7a8ea45411730 Mon Sep 17 00:00:00 2001 From: Mikko Rasa Date: Thu, 9 Dec 2010 20:56:22 +0000 Subject: [PATCH] Setting depth mask off in Framebuffer is not required Re-enable depth mask when unbinding depth test --- source/framebuffer.cpp | 4 ---- source/tests.cpp | 4 ++++ 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/source/framebuffer.cpp b/source/framebuffer.cpp index a0fcbc47..ea28d5db 100644 --- a/source/framebuffer.cpp +++ b/source/framebuffer.cpp @@ -53,7 +53,6 @@ void Framebuffer::update_attachment(unsigned mask) const if(current()==this) { GLenum color_buf = GL_NONE; - bool has_depth = false; for(unsigned i=0; i=COLOR_ATTACHMENT0 && attch.attachment<=COLOR_ATTACHMENT3) color_buf = attch.attachment; - if(attch.attachment==DEPTH_ATTACHMENT) - has_depth = true; } glDrawBuffer(color_buf); - glDepthMask(has_depth); } else dirty |= mask; diff --git a/source/tests.cpp b/source/tests.cpp index a741b268..1a2a5835 100644 --- a/source/tests.cpp +++ b/source/tests.cpp @@ -70,7 +70,11 @@ const DepthTest &DepthTest::lequal() void DepthTest::unbind() { if(set_current(0)) + { glDisable(GL_DEPTH_TEST); + // Allow glClear(GL_DEPTH_BUFFER_BIT) to work + glDepthMask(true); + } } void depth_func(Predicate func) -- 2.45.2