From 69c79c303ddb4e6ba5c3f60f12d5d9b4f4b2b148 Mon Sep 17 00:00:00 2001 From: Lendemor Date: Fri, 25 Aug 2017 19:00:29 +0200 Subject: [PATCH] inversed 0 and 1 value for glStencil --- src/deferredpipeline.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/deferredpipeline.cpp b/src/deferredpipeline.cpp index 5f07f7f..82046c0 100644 --- a/src/deferredpipeline.cpp +++ b/src/deferredpipeline.cpp @@ -148,6 +148,7 @@ void DeferredPipeline::renderGL(Scene *scene) glClearColor(0.0f, 0.0f, 0.0f, 1.f); glClearDepth(1.0f); glClearStencil(0); + glStencilMask(0xFF); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT); glStencilMask(0x01); glStencilFunc(GL_ALWAYS, 0x01, 0x01); // always draw fragments (ignore the stencil buffer values for now) @@ -204,12 +205,12 @@ void DeferredPipeline::renderGL(Scene *scene) { shader->bind(); shader->bindInteger(shader->getLocation("emissionBuffer"), GBuffer::EMISSION); - glStencilFunc(GL_EQUAL, 1, 0x01); + glStencilFunc(GL_EQUAL, 0, 0x01); SparrowRenderer::drawQuad(); } // loop on light sources - glStencilFunc(GL_EQUAL, 0, 0x01); + glStencilFunc(GL_EQUAL, 1, 0x01); for(SceneIterator* lightIt = scene->getLights(); lightIt->isValid(); lightIt->next()) {