// https://twigl.app/?ol=true&ss=-Nexj318yXrZH0-RIZfc // Instant Build time (Team Size Coding) precision highp float;uniform vec2 resolution;uniform float time;out vec4 outColor; #define s sin #define q vec3 #define h .5 #define n(x)x*h+h #define l length #define u(p,a,t) (mix(dot(a,p)*a,p,cos(t))+cross(a,p)*s(t)) void main(){vec2 v=(gl_FragCoord.xy-h*resolution.xy)/resolution.y;v*=1.+step(.4,abs(v.y))*h;q p,o=q(v*8.,-8),z=q(0,1,.785),n=q(.3,.8,.8),d=z.xxy,f;float t=time,c,i,e,g,x,b=t*h,r=h*fract(54.7*s(dot(v.xy,vec2(45.4,95.5))));for(;i++<30.;)p=u(u(o+d*g,z.yxx,z.z*tanh(s(b)*20.+r+l(p.yz)*.1)),z.xyx,-z.z*tanh(cos(b)*20.+r*.1+l(p.xz))),p.z-=mix(t,t*mix(0.,s(round(p.y)),n(tanh(s(time*.25)*20.))),n(tanh(cos(b)*h))),p-=f=round(p),g+=e=max(.001,.9*min(l(vec2(l(p.xz)-h+abs(c=dot(cos(f),s(f*5.)))*.125,p.y))-.01,max(abs(p.y)-h,min(l(p.xy),min(l(p.yz),l(p.xz)))-.01))),x=exp(-15.*fract(b*abs(c)+dot(cos(f),s(f)))),outColor.xyz+=(n+n*cos(6.28*(q(.1,h,h)*(c+x)+q(0,h,h))))*(.005+.3*x)/exp((1.-x*h)*i*i*e);outColor=vec4(pow(outColor.xyz,q(.9,.7,.4)),1);}