Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- with(document.body){
- innerHTML='<canvas id=c>';
- style.margin=0
- }
- c.width=w=innerWidth;
- c.height=h=innerHeight;
- for(k in g=c.getContext('experimental-webgl'))
- g[k.match(/^..|[A-Z]|1f$/g).join('')]=g[k];
- with(g){
- p=crP();
- s=function(n,t){
- a=crS(t);
- shS(a,n);
- coS(a);
- atS(p,a)
- }
- s('attribute vec4 p;void main(){gl_Position=p;}',t=35633);
- s('precision lowp float;uniform float t;float b(vec3 p,vec3 b){vec3 q=abs(p)-b;return min(max(q.x,max(q.y,q.z)),length(max(q,0.)));}float h(vec3 p){vec3 q=vec3(2.5),a,r,k=vec3(1e2,1,0);p=mod(p,q)-q/2.;float d=b(p,vec3(1)),s=1.;for(int i=0;i<3;i++){a=mod(p*s,2.)-1.;s*=(2.+t)/3.;r=1.5-3.0*abs(a);d=max(d,-min(b(r,k.xyy),min(b(r.yzx,k.yxy),b(r.zxy,k.yyx)))/s);}return d;}void main(){vec2 q=-1.+2.*gl_FragCoord.xy/vec2('+w+','+h+');q.x*='+(w/h)+';float d=0.;vec3 p=vec3(.1*sin(t),.5,6.*t),w=normalize(-p),u=normalize(cross(vec3(cos(6.*t),sin(6.*t),0),w)),r=normalize(q.x*u+q.y*normalize(cross(w,u))+w);for(int i=0;i<64;i++){d=h(p)-.001;if(d<.001)break;p+=r*d/4.;}d=0.;for(float i=0.;i<9.;i++)d+=h(p+vec3(cos(i),sin(i),-cos(i))/4.);t<1.?d*=t:d;gl_FragColor=vec4(h(p+.1)*vec3(1,.4,.2)*d*d,1);}',--t);
- biB(t-=670,crB(liP(p)));
- buD(t,new Float32Array([1,1,1,-3,-3,1]),t+82);
- t=0;
- setInterval(function(){
- drA(4,enVAA(veAP(usP(p),2,5126,false,un1f(geUL(p,'t'),t+=.006),0)),3)
- },20)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement