Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntonioya <blendergit@gmail.com>2019-06-12 18:15:50 +0300
committerAntonioya <blendergit@gmail.com>2019-06-13 14:33:04 +0300
commite0c98e18f9e808e3a5fffe191ac091343aa4887c (patch)
tree691df969e4572068dbf54b82c761ea107038ac13 /source/blender/draw
parent36faf739a71624b6ca10cec7233779f9eeace0bd (diff)
GPencil: Remove blend_opacity from shader
The opacity was already used and using it in the shader only duplicate the blend.
Diffstat (limited to 'source/blender/draw')
-rw-r--r--source/blender/draw/engines/gpencil/gpencil_engine.c2
-rw-r--r--source/blender/draw/engines/gpencil/gpencil_engine.h1
-rw-r--r--source/blender/draw/engines/gpencil/shaders/gpencil_blend_frag.glsl15
3 files changed, 7 insertions, 11 deletions
diff --git a/source/blender/draw/engines/gpencil/gpencil_engine.c b/source/blender/draw/engines/gpencil/gpencil_engine.c
index 62b893867f3..233e2ee2deb 100644
--- a/source/blender/draw/engines/gpencil/gpencil_engine.c
+++ b/source/blender/draw/engines/gpencil/gpencil_engine.c
@@ -535,7 +535,6 @@ void GPENCIL_cache_init(void *vedata)
DRW_shgroup_uniform_texture_ref(blend_shgrp, "blendDepth", &e_data.temp_depth_tx_fx);
DRW_shgroup_uniform_int(blend_shgrp, "mode", &stl->storage->blend_mode, 1);
DRW_shgroup_uniform_int(blend_shgrp, "clamp_layer", &stl->storage->clamp_layer, 1);
- DRW_shgroup_uniform_float(blend_shgrp, "blend_opacity", &stl->storage->blend_opacity, 1);
DRW_shgroup_uniform_int(mix_shgrp, "tonemapping", &stl->storage->tonemapping, 1);
/* create effects passes */
@@ -975,7 +974,6 @@ void GPENCIL_draw_scene(void *ved)
GPU_framebuffer_clear_color_depth(fbl->temp_fb_b, clearcol, 1.0f);
stl->storage->blend_mode = array_elm->mode;
stl->storage->clamp_layer = (int)array_elm->clamp_layer;
- stl->storage->blend_opacity = array_elm->blend_opacity;
stl->storage->tonemapping = DRW_state_do_color_management() ? 0 : 1;
DRW_draw_pass(psl->blend_pass);
stl->storage->tonemapping = 0;
diff --git a/source/blender/draw/engines/gpencil/gpencil_engine.h b/source/blender/draw/engines/gpencil/gpencil_engine.h
index a7e4c9d58d6..94a57c7f5d6 100644
--- a/source/blender/draw/engines/gpencil/gpencil_engine.h
+++ b/source/blender/draw/engines/gpencil/gpencil_engine.h
@@ -174,7 +174,6 @@ typedef struct GPENCIL_Storage {
int blend_mode;
int clamp_layer;
- float blend_opacity;
/* simplify settings*/
bool simplify_fill;
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 009f58b8789..22abf6f61c3 100644
--- a/source/blender/draw/engines/gpencil/shaders/gpencil_blend_frag.glsl
+++ b/source/blender/draw/engines/gpencil/shaders/gpencil_blend_frag.glsl
@@ -8,7 +8,6 @@ uniform sampler2D blendColor;
uniform sampler2D blendDepth;
uniform int mode;
uniform int clamp_layer;
-uniform float blend_opacity;
uniform int tonemapping;
#define ON 1
@@ -43,34 +42,34 @@ vec4 get_blend_color(int mode, vec4 src_color, vec4 blend_color)
outcolor = src_color;
}
else if (mode == MODE_OVERLAY) {
- mix_color.rgb = mix(src_color.rgb, mix_color.rgb, mix_color.a * blend_opacity);
+ mix_color.rgb = mix(src_color.rgb, mix_color.rgb, mix_color.a);
outcolor.r = overlay_color(src_color.r, mix_color.r);
outcolor.g = overlay_color(src_color.g, mix_color.g);
outcolor.b = overlay_color(src_color.b, mix_color.b);
outcolor.a = src_color.a;
}
else if (mode == MODE_ADD) {
- mix_color.rgb = mix(src_color.rgb, mix_color.rgb, mix_color.a * blend_opacity);
+ mix_color.rgb = mix(src_color.rgb, mix_color.rgb, mix_color.a);
outcolor = src_color + mix_color;
outcolor.a = src_color.a;
}
else if (mode == MODE_SUB) {
- mix_color.rgb = mix(src_color.rgb, mix_color.rgb, mix_color.a * blend_opacity);
+ mix_color.rgb = mix(src_color.rgb, mix_color.rgb, mix_color.a);
outcolor = src_color - mix_color;
- outcolor.a = clamp(src_color.a - (mix_color.a * blend_opacity), 0.0, 1.0);
+ outcolor.a = clamp(src_color.a - mix_color.a, 0.0, 1.0);
}
else if (mode == MODE_MULTIPLY) {
- mix_color.rgb = mix(src_color.rgb, mix_color.rgb, mix_color.a * blend_opacity);
+ mix_color.rgb = mix(src_color.rgb, mix_color.rgb, mix_color.a);
outcolor = src_color * mix_color;
outcolor.a = src_color.a;
}
else if (mode == MODE_DIVIDE) {
- mix_color.rgb = mix(src_color.rgb, mix_color.rgb, mix_color.a * blend_opacity);
+ mix_color.rgb = mix(src_color.rgb, mix_color.rgb, mix_color.a);
outcolor = src_color / mix_color;
outcolor.a = src_color.a;
}
else {
- outcolor = mix_color * blend_opacity;
+ outcolor = mix_color;
outcolor.a = src_color.a;
}