From 48614f582af02b45b8e8d2b4eec043d574ab6aea Mon Sep 17 00:00:00 2001 From: Jonas Strandstedt Date: Wed, 8 Oct 2014 13:43:43 +0200 Subject: [PATCH] Fixed blending for stars default framebuffer rendering --- shaders/star_fs.glsl | 2 +- src/rendering/renderengine.cpp | 7 ++++++- src/rendering/stars/renderablestars.cpp | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/shaders/star_fs.glsl b/shaders/star_fs.glsl index ac37322e84..c428bf4777 100644 --- a/shaders/star_fs.glsl +++ b/shaders/star_fs.glsl @@ -58,7 +58,7 @@ void main(void) vec4 position = vs_position; float depth = pscDepth(position); gl_FragDepth = depth; - gl_FragDepth = 10.0; + //gl_FragDepth = 10.0; //ABufferStruct_t frag = createGeometryFragment(vec4(1,0,0,1), position, depth); //ABufferStruct_t frag = createGeometryFragment(diffuse, position, depth); diff --git a/src/rendering/renderengine.cpp b/src/rendering/renderengine.cpp index 838020047f..1a5ea93b7f 100644 --- a/src/rendering/renderengine.cpp +++ b/src/rendering/renderengine.cpp @@ -212,6 +212,7 @@ void RenderEngine::render() //glEnable(GL_CULL_FACE); glDisable(GL_DEPTH_TEST); glDisable(GL_CULL_FACE); + glDisable(GL_BLEND); // setup the camera for the current frame const glm::vec3 eyePosition @@ -237,7 +238,11 @@ void RenderEngine::render() _abuffer->preRender(); _sceneGraph->render({*_mainCamera, psc()}); _abuffer->postRender(); - _abuffer->resolve(); + + glEnable(GL_BLEND); + glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); + _abuffer->resolve(); + glDisable(GL_BLEND); #ifndef OPENSPACE_VIDEO_EXPORT // Print some useful information on the master viewport diff --git a/src/rendering/stars/renderablestars.cpp b/src/rendering/stars/renderablestars.cpp index 183c9eec7d..ac210c8192 100644 --- a/src/rendering/stars/renderablestars.cpp +++ b/src/rendering/stars/renderablestars.cpp @@ -310,7 +310,6 @@ void RenderableStars::render(const RenderData& data){ glDisable(GL_DEPTH_TEST); glEnable(GL_BLEND); glBlendFunc(GL_ONE_MINUS_DST_COLOR, GL_ONE); - //glBlendFunc(GL_ONE, GL_ONE_MINUS_DST_COLOR); #ifdef GLSPRITES glm::mat4 modelMatrix = data.camera.modelMatrix(); @@ -365,6 +364,7 @@ void RenderableStars::render(const RenderData& data){ glEnable(GL_DEPTH_TEST); #endif + glDisable(GL_BLEND); } void RenderableStars::loadTexture(){