17 lines
414 B
Plaintext
17 lines
414 B
Plaintext
shader_type canvas_item;
|
|
render_mode unshaded;
|
|
|
|
uniform float cutoff: hint_range(0.0, 1.0);
|
|
uniform float smooth_size: hint_range(0.0, 0.1);
|
|
uniform sampler2D mask: hint_default_black;
|
|
|
|
void fragment() {
|
|
float value = texture(mask, UV).r;
|
|
float alpha = smoothstep(
|
|
cutoff,
|
|
cutoff + smooth_size,
|
|
value * (1.0 - smooth_size) + smooth_size
|
|
);
|
|
COLOR = vec4(COLOR.rgb, alpha);
|
|
}
|