diff options
Diffstat (limited to 'source/blender/draw/engines/overlay/shaders/overlay_paint_texture_frag.glsl')
-rw-r--r-- | source/blender/draw/engines/overlay/shaders/overlay_paint_texture_frag.glsl | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/source/blender/draw/engines/overlay/shaders/overlay_paint_texture_frag.glsl b/source/blender/draw/engines/overlay/shaders/overlay_paint_texture_frag.glsl new file mode 100644 index 00000000000..e5af0e7bd88 --- /dev/null +++ b/source/blender/draw/engines/overlay/shaders/overlay_paint_texture_frag.glsl @@ -0,0 +1,14 @@ +#pragma BLENDER_REQUIRE(common_colormanagement_lib.glsl) + +void main() +{ + vec4 mask = vec4(texture_read_as_srgb(maskImage, maskImagePremultiplied, uv_interp).rgb, 1.0); + if (maskInvertStencil) { + mask.rgb = 1.0 - mask.rgb; + } + float mask_step = smoothstep(0.0, 3.0, mask.r + mask.g + mask.b); + mask.rgb *= maskColor; + mask.a = mask_step * opacity; + + fragColor = mask; +} |