shader_type canvas_item;
uniform sampler2D noise : repeat_enable;
uniform sampler2D noise2 : repeat_enable;
uniform float l = 100.;
void fragment() {
vec2 uv = UV;
float ll = l * 0.005;
float y = sin(uv.x*7.*ll - TIME * 3.71) * .34 + 1.
+ sin(uv.x*7.*ll - TIME * 1.24) * .70
+ sin(uv.x*7.*ll - TIME * 3.11) * .35
;
y *= .5;
y = mix(y, .5, uv.x);
y = mix(y, .5, 1.-uv.x);
float alpha = COLOR.a;
COLOR.a = smoothstep(.02, .0, abs(uv.y - y)) * .5;
COLOR *= texture(noise, UV + vec2(TIME*.17, 0.)) * texture(noise2, UV + vec2(.12*TIME, .1*floor(TIME*7.4)));
COLOR.a += smoothstep(.07, .0, abs(uv.y - y)) * .4;
COLOR.a += smoothstep(.15, .0, abs(uv.y - y)) * .2;
COLOR.a += smoothstep(.2, .0, abs(uv.y - y)) * .1;
COLOR.a += smoothstep(.4, .0, abs(uv.y - y)) * .1 * abs(sin(TIME));
COLOR.a *= smoothstep(.0, .1, uv.x);
COLOR.a *= smoothstep(.0, .2, 1.-uv.x);
COLOR.a *= alpha;
}
评论区
共 条评论热门最新