[[1, 2, 3, 4, 5, 6, 128, 255], [255, 128, 64, 32, 4, 3, 2, 1]] void main() { vec2 uv = gl_FragCoord.xy / resolution.xy; vec3 col = .5 + .5 * cos(uv.xyx + time + vec3(0, 2, 4)); col *= texture(tex_avatar, uv).rgb; float dist = distance(uv, mouse.xy); float circle = smoothstep(.1, .2, dist) * .5 + .5; vec4 acolor = vec4(col * circle, circle); outColor = vec4(acolor); }