26 lines
541 B
Text
26 lines
541 B
Text
|
shader_type canvas_item;
|
||
|
|
||
|
uniform float percentage:hint_range(0.0,1,.01);
|
||
|
uniform float masked_alpha:hint_range(0,1,.01)=1;
|
||
|
uniform float unmasked_alpha:hint_range(0,1,.01);
|
||
|
|
||
|
uniform bool horizontal=false;
|
||
|
uniform bool invert=true;
|
||
|
|
||
|
|
||
|
|
||
|
void fragment() {
|
||
|
vec4 main_tex=texture(TEXTURE,UV);
|
||
|
COLOR.a=main_tex.a;
|
||
|
|
||
|
float uvPOS=UV.y;
|
||
|
float step_value=unmasked_alpha+step(uvPOS,percentage);
|
||
|
|
||
|
if(horizontal){ uvPOS=UV.x; }
|
||
|
if(invert){
|
||
|
step_value=unmasked_alpha+1.0-step(uvPOS,percentage);
|
||
|
}
|
||
|
|
||
|
|
||
|
COLOR.a=(main_tex.a)*step_value*masked_alpha;
|
||
|
}
|