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:
Diffstat (limited to 'source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_rim_resolve_frag.glsl')
-rw-r--r--source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_rim_resolve_frag.glsl98
1 files changed, 0 insertions, 98 deletions
diff --git a/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_rim_resolve_frag.glsl b/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_rim_resolve_frag.glsl
deleted file mode 100644
index fa010baa32f..00000000000
--- a/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_rim_resolve_frag.glsl
+++ /dev/null
@@ -1,98 +0,0 @@
-/* ******************************************************************* */
-/* Resolve RIM pass and add blur if needed */
-/* ******************************************************************* */
-uniform sampler2D strokeColor;
-uniform sampler2D strokeDepth;
-uniform sampler2D strokeRim;
-
-uniform vec3 mask_color;
-uniform int mode;
-
-out vec4 FragColor;
-
-#define MODE_NORMAL 0
-#define MODE_OVERLAY 1
-#define MODE_ADD 2
-#define MODE_SUB 3
-#define MODE_MULTIPLY 4
-#define MODE_DIVIDE 5
-
-float overlay_color(float a, float b)
-{
- float rtn;
- if (a < 0.5) {
- rtn = 2.0 * a * b;
- }
- else {
- rtn = 1.0 - 2.0 * (1.0 - a) * (1.0 - b);
- }
-
- return rtn;
-}
-
-vec4 get_blend_color(int mode, vec4 src_color, vec4 mix_color)
-{
- vec4 outcolor;
- if (mode == MODE_NORMAL) {
- outcolor = mix_color;
- }
- else if (mode == MODE_OVERLAY) {
- 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);
- }
- else if (mode == MODE_ADD) {
- outcolor = src_color + mix_color;
- }
- else if (mode == MODE_SUB) {
- outcolor = src_color - mix_color;
- }
- else if (mode == MODE_MULTIPLY) {
- outcolor = src_color * mix_color;
- }
- else if (mode == MODE_DIVIDE) {
- outcolor = src_color / mix_color;
- }
- else {
- outcolor = mix_color;
- }
-
- /* use always the alpha of source color */
-
- outcolor.a = src_color.a;
- /* use alpha to calculate the weight of the mixed color */
- outcolor = mix(src_color, outcolor, mix_color.a);
-
- return outcolor;
-}
-
-void main()
-{
- ivec2 uv = ivec2(gl_FragCoord.xy);
-
- float stroke_depth = texelFetch(strokeDepth, uv.xy, 0).r;
- vec4 src_pixel = texelFetch(strokeColor, uv.xy, 0);
- vec4 rim_pixel = texelFetch(strokeRim, uv.xy, 0);
-
- vec4 outcolor = src_pixel;
-
- /* is transparent */
- if (src_pixel.a == 0.0f) {
- discard;
- }
- /* pixel is equal to mask color, keep */
- else if (src_pixel.rgb == mask_color.rgb) {
- outcolor = src_pixel;
- }
- else {
- if (rim_pixel.a == 0.0f) {
- outcolor = src_pixel;
- }
- else {
- outcolor = get_blend_color(mode, src_pixel, rim_pixel);
- }
- }
-
- gl_FragDepth = stroke_depth;
- FragColor = outcolor;
-}