[Bf-blender-cvs] [e21a475fae5] master: Fix T74229: EEVEE Bloom + Transparency

Jeroen Bakker noreply at git.blender.org
Thu Feb 27 12:47:31 CET 2020


Commit: e21a475fae589b9a09ca156bfcb33d45f863b7b1
Author: Jeroen Bakker
Date:   Thu Feb 27 12:45:16 2020 +0100
Branches: master
https://developer.blender.org/rBe21a475fae589b9a09ca156bfcb33d45f863b7b1

Fix T74229: EEVEE Bloom + Transparency

Bug was introduced by the render passes. We had to tweak the bloom
shader a bit so we could reuse it. After that tweaking the original
alpha was ignored.

This patch will read and store the correct alpha channel.

===================================================================

M	source/blender/draw/engines/eevee/shaders/effect_bloom_frag.glsl

===================================================================

diff --git a/source/blender/draw/engines/eevee/shaders/effect_bloom_frag.glsl b/source/blender/draw/engines/eevee/shaders/effect_bloom_frag.glsl
index 18f92c0dd33..489e87e9a7d 100644
--- a/source/blender/draw/engines/eevee/shaders/effect_bloom_frag.glsl
+++ b/source/blender/draw/engines/eevee/shaders/effect_bloom_frag.glsl
@@ -202,9 +202,9 @@ vec4 step_resolve(void)
 #else
   vec3 blur = upsample_filter(sourceBuffer, uvcoordsvar.xy, sourceBufferTexelSize);
 #endif
-  vec3 base = bloomAddBase ? textureLod(baseBuffer, uvcoordsvar.xy, 0.0).rgb : vec3(0.0);
-  vec3 cout = base + blur * bloomColor;
-  return vec4(cout, 1.0);
+  vec4 base = bloomAddBase ? textureLod(baseBuffer, uvcoordsvar.xy, 0.0) : vec4(0.0);
+  vec3 cout = base.rgb + blur * bloomColor;
+  return vec4(cout, base.a);
 }
 
 void main(void)



More information about the Bf-blender-cvs mailing list