Shader code
shader_type canvas_item;
uniform float speed = 0.5;
uniform float intensity = 1.5;
uniform float radius = 0.5;
void fragment() {
vec2 uv = UV;
vec4 c = vec4(0.0);
vec2 shift = vec2(sin(TIME * speed), cos(TIME * speed)) * 0.2;
float d1 = distance(uv, vec2(0.0, 0.0) + shift);
float d2 = distance(uv, vec2(1.0, 0.0) - shift);
float d3 = distance(uv, vec2(0.0, 1.0) - shift.yx);
float d4 = distance(uv, vec2(1.0, 1.0) + shift.yx);
vec4 color1 = vec4(0.5 + 0.5*sin(TIME), 0.5 + 0.5*sin(TIME+1.0), 0.5 + 0.5*sin(TIME+2.0), 1.0);
vec4 color2 = vec4(0.5 + 0.5*sin(TIME+3.0), 0.5 + 0.5*sin(TIME+4.0), 0.5 + 0.5*sin(TIME+5.0), 1.0);
vec4 color3 = vec4(0.5 + 0.5*sin(TIME+6.0), 0.5 + 0.5*sin(TIME+7.0), 0.5 + 0.5*sin(TIME+8.0), 1.0);
vec4 color4 = vec4(0.5 + 0.5*sin(TIME+9.0), 0.5 + 0.5*sin(TIME+10.0), 0.5 + 0.5*sin(TIME+11.0), 1.0);
c += color1 * pow(max(0.0, 1.0 - d1/radius), intensity);
c += color2 * pow(max(0.0, 1.0 - d2/radius), intensity);
c += color3 * pow(max(0.0, 1.0 - d3/radius), intensity);
c += color4 * pow(max(0.0, 1.0 - d4/radius), intensity);
COLOR = c;
}
Live Preview
Tags
concert