uniform float u_Time; uniform sampler2D u_Tex0; varying vec2 v_TexCoord; void main() { vec4 col = texture2D(u_Tex0, v_TexCoord); // Shimmer effect float shimmer = sin(u_Time * 10.0) * 0.1; col.rgb += shimmer; // Twist effect float twist = sin(u_Time * 5.0) * 0.2; col.rgb += vec3(twist, twist, twist); // Glitch effect float glitchX = sin(u_Time * 20.0) * 0.01; float glitchY = cos(u_Time * 15.0) * 0.01; col.rgb += texture2D(u_Tex0, v_TexCoord + vec2(glitchX, glitchY)).rgb; // Fade effect float fade = smoothstep(0.0, 1.0, u_Time * 0.1); col.rgb *= fade; gl_FragColor = col; }