1uniform float u_Time;
2uniform sampler2D u_Tex0;
3varying vec2 v_TexCoord;
4
5void main()
6{
7 vec4 col = texture2D(u_Tex0, v_TexCoord);
8
9 // Shimmer effect
10 float shimmer = sin(u_Time * 10.0) * 0.1;
11 col.rgb += shimmer;
12
13 // Twist effect
14 float twist = sin(u_Time * 2.0) * 0.2;
15 col.rgb += vec3(twist, twist, twist);
16
17 // Glitch effect
18 float glitchX = sin(u_Time * 10.0) * 0.01;
19 float glitchY = cos(u_Time * 7.0) * 0.01;
20 col.rgb += texture2D(u_Tex0, v_TexCoord + vec2(glitchX, glitchY)).rgb;
21
22 // Fade effect
23 float fade = smoothstep(0.0, 1.0, u_Time * 0.1);
24 col.rgb *= fade;
25
26 gl_FragColor = col;
27}