Source tone contours peel into drifting, curled strips with open gaps. Floating shape for FX Stack stickers.
GLSL fragment shader
The effect's own code. The uniforms and helpers above it — uTex, uFeedback, the depth proxy, the frame ring, depthAt(), timeAt() — are the same header every Ether-MOSH shader opens with, and are documented once on the registry rather than reprinted on all 143 pages.
void main(){ vec4 base=texture2D(uTex,vUv); float t=uTime*uSpeed; vec2 p=vUv-0.5; vec2 offset=vec2(sin(p.y*12.0+t),cos(p.x*11.0-t*0.7))*uCurl*uAmount*0.035; vec2 uv=clamp(vUv+offset,0.0,1.0); vec4 art=texture2D(uTex,uv); float l=dot(art.rgb,vec3(0.299,0.587,0.114)); vec2 px=2.0/uResolution; float lx=dot(texture2D(uTex,clamp(uv+vec2(px.x,0.0),0.0,1.0)).rgb,vec3(0.299,0.587,0.114)); float ly=dot(texture2D(uTex,clamp(uv+vec2(0.0,px.y),0.0,1.0)).rgb,vec3(0.299,0.587,0.114)); float edge=length(vec2(lx-l,ly-l)); float bands=abs(fract(l*7.0+p.x*uCurl+sin(t*0.35)*0.1)-0.5); float contour=1.0-smoothstep(uWidth*2.0,uWidth*2.0+0.025,bands); float support=smoothstep(0.003,0.04,edge); float reach=1.0-smoothstep(uSize*0.28,uSize*0.58,length(p)); float gaps=smoothstep(-0.6,0.15,sin(p.y*24.0+p.x*16.0+t)); float coverage=max(contour,support*0.8)*reach*gaps; art.rgb*=0.85+0.3*sin(l*15.0+t*0.3); gl_FragColor=floatingResult(base,art,coverage); }