[Bf-blender-cvs] [1f9119a0598] greasepencil-object: Fix multiply error when blend layer do not cover below layer
Antonioya
noreply at git.blender.org
Sun Nov 25 20:12:15 CET 2018
Commit: 1f9119a0598fbf841328f6c4479e719b027094e3
Author: Antonioya
Date: Sun Nov 25 20:12:04 2018 +0100
Branches: greasepencil-object
https://developer.blender.org/rB1f9119a0598fbf841328f6c4479e719b027094e3
Fix multiply error when blend layer do not cover below layer
===================================================================
M source/blender/draw/engines/gpencil/shaders/gpencil_blend_frag.glsl
===================================================================
diff --git a/source/blender/draw/engines/gpencil/shaders/gpencil_blend_frag.glsl b/source/blender/draw/engines/gpencil/shaders/gpencil_blend_frag.glsl
index a8f2cdc1938..9e5634b7375 100644
--- a/source/blender/draw/engines/gpencil/shaders/gpencil_blend_frag.glsl
+++ b/source/blender/draw/engines/gpencil/shaders/gpencil_blend_frag.glsl
@@ -38,7 +38,10 @@ vec4 get_blend_color(int mode, vec4 src_color, vec4 blend_color)
vec4 mix_color = blend_color;
vec4 outcolor;
- if (mode == MODE_OVERLAY) {
+ if (mix_color.a == 0) {
+ outcolor = src_color;
+ }
+ else if (mode == MODE_OVERLAY) {
mix_color.rgb = mix_color.rgb * mix_color.a * blend_opacity;
outcolor.r = overlay_color(src_color.r, mix_color.r);
outcolor.g = overlay_color(src_color.g, mix_color.g);
More information about the Bf-blender-cvs
mailing list