0x18b75119…b783sent to0x381233d5…7acd·#19,676,137·view on Etherscan
[0,()=>{console.log("Artist 44. mpkoz -- platform 0");let o,e,t,n,v=!0,f=[],a=[],r=[],c=[],l=[];console.log("Several utility functions used in this script (sdf functions, shadows, poly booleans) were derived from the incredible tutorials and samples created by Inigo Quilez (thank you). The snoise function is partially derived from Ian McEwan, Ashima Arts.");function i(o,e,t){return Math.floor(m(o,e-1e-6,t))}function m(o=0,e=1,t=1){let n=R.random_dec();return Math.pow(n,t)*(e-o)+o}let d=[[2.31,4.96,.63,1.58,3,.3],[2.47,4.96,.97,1.11,3,.38],[2.75,4.67,.98,1.19,3,.32],[2.55,5.13,.96,1.37,3,.4],[2.39,4.73,.52,1.41,3,.24],[2.8,7.68,.61,1.5,4,.34],[2.76,8.07,.68,1.31,3,.32],[2.9,7.64,.54,1.34,3,.31],[2.76,7.61,.65,1.15,3,.36],[2.73,8.06,.55,1.64,4,.28],[3.04,7.89,.52,.51,4,.39],[2.9,7.96,.74,.44,4,.27],[2.94,7.82,.51,.59,4,.35],[3.1,8,.6,.49,4,.25],[3.06,7.77,.72,.44,4,.26],[3.08,7.83,.69,.49,4,.2],[2.91,7.99,.78,.5,4,.24],[3.06,7.65,.56,.58,4,.35],[2.61,7.34,.66,.64,4,.35],[2.71,6.81,.77,.76,4,.35],[2.68,6.51,.53,1.09,3,.37],[2.73,6.88,.47,.84,4,.32],[2.65,7.07,.53,.63,3,.2],[2.76,6.48,.61,.6,4,.22],[2.73,6.82,.45,1.19,4,.3]],x="precision mediump float;uniform vec2 iRR;uniform vec3 nO0;uniform float nSS,nFF,dSS,dAA,fov,bump,cOO;uniform vec3 lP;uniform int nCC,nRR;uniform float unitX,unitY,rrs[20];uniform vec3 shW;\n #define MCO 12\n #define MRO 20\n #define MLX 11*3\n uniform float xLA[MLX];\n #define MLY 19*3\n uniform float yLA[MLY];\n #define MC MCO*MRO\n uniform float isShapes[MC],shRR[MC];mat2 rotate(float v){float f=cos(v),d=sin(v);return mat2(f,d,-d,f);}float lt(float x,float v){return max(sign(v-x),0.);}vec3 hn(vec3 v){return normalize(v);}float hash12(vec2 v){vec3 f=fract(vec3(v.xyx)*.1031);f+=dot(f,f.yzx+33.33);return fract((f.x+f.y)*f.z);}float PI=acos(-1.);float random(vec2 v){return fract(sin(dot(v,vec2(12.9898,78.233)))*43758.5453123);}vec4 mod289(vec4 v){return v-floor(v*(1./289.))*289.;}float mod289(float v){return v-floor(v*(1./289.))*289.;}vec4 prm(vec4 v){return mod289((v*34.+1.)*v);}float prm(float v){return mod289((v*34.+1.)*v);}vec4 tis(vec4 v){return 1.79284291400159-.85373472095314*v;}float tis(float v){return 1.79284291400159-.85373472095314*v;}vec4 grad4(float v,vec4 f){const vec4 d=vec4(1,1,1,-1);vec4 m,u;m.xyz=floor(fract(vec3(v)*f.xyz)*7.)*f.z-1.;m.w=1.5-dot(abs(m.xyz),d.xyz);u=vec4(lessThan(m,vec4(0)));m.xyz=m.xyz+(u.xyz*2.-1.)*u.www;return m;}\n #define F4 0.309016994374947451\n float snoise(vec4 v,out vec4 f){const vec4 d=vec4(.138196601125011,.276393202250021,.414589803375032,-.447213595499958);vec4 m=floor(v+dot(v,vec4(F4))),x=v-m+dot(m,d.xxxx),y;vec3 s=step(x.yzw,x.xxx),c=step(x.zww,x.yyz);y.x=s.x+s.y+s.z;y.yzw=1.-s;y.y+=c.x+c.y;y.zw+=1.-c.xy;y.z+=c.z;y.w+=1.-c.z;vec4 u=clamp(y,0.,1.),z=clamp(y-1.,0.,1.),p=clamp(y-2.,0.,1.),w=x-p+d.xxxx,i=x-z+d.yyyy,l=x-u+d.zzzz,X=x+d.wwww;m=mod289(m);float M=prm(prm(prm(prm(m.w)+m.z)+m.y)+m.x);vec4 n=prm(prm(prm(prm(m.w+vec4(p.w,z.w,u.w,1))+m.z+vec4(p.z,z.z,u.z,1))+m.y+vec4(p.y,z.y,u.y,1))+m.x+vec4(p.x,z.x,u.x,1)),I=vec4(1./294.,1./49.,1./7.,0),r=grad4(M,I),Y=grad4(n.x,I),O=grad4(n.y,I),g=grad4(n.z,I),k=grad4(n.w,I),o=tis(vec4(dot(r,r),dot(Y,Y),dot(O,O),dot(g,g)));r*=o.x;Y*=o.y;O*=o.z;g*=o.w;k*=tis(dot(k,k));vec3 h=max(.5-vec3(dot(x,x),dot(w,w),dot(i,i)),0.);vec2 t=max(.5-vec2(dot(l,l),dot(X,X)),0.);vec3 a=h*h;vec2 F=t*t;vec3 W=a*a;vec2 R=F*F;vec3 P=vec3(dot(r,x),dot(Y,w),dot(O,i));vec2 S=vec2(dot(g,l),dot(k,X));vec3 b=a*h*P;vec2 A=F*t*S;f=-8.*(b.x*x+b.y*w+b.z*i+A.x*l+A.y*X);f+=W.x*r+W.y*Y+W.z*O+R.x*g+R.y*k;f*=109.319;return 109.319*(dot(a*a,vec3(dot(r,x),dot(Y,w),dot(O,i)))+dot(F*F,vec2(dot(g,l),dot(k,X))));}float displ(vec3 v){if(abs(v.x)>.5||abs(v.y)>.8889)return 1e3;vec3 f=vec3(v);vec2 m=vec2(v)+nO0.xy,d=vec2(v.yx)+nO0.yz;vec4 x;float p=snoise(vec4(m*dSS,0,1),x)*2.,y=snoise(vec4(d*dAA,0,1),x)*3.;vec2 s=rotate(p*PI)*vec2(y,0);f*=nSS;f.z+=-nO0.x;f.xy+=s;float u=.03,r=0.,z=1.,i=mix(3.,4.,lt(rrs[11],0.));for(int n=0;n<4;n++){vec4 o=vec4(0);float M=snoise(vec4(f.xyz*.5,1),o);r+=o.w*u;f*=nFF;f+=bump*o.xyz*z;if(n==2)z*=-1.;u*=.5;if(n+1>=int(i))break;}return r;}float sdBox(vec3 v,vec3 f){f*=.5;vec3 m=abs(v)-f;return length(max(m,0.))+min(max(m.x,max(m.y,m.z)),0.);}float bFr(vec3 v,vec3 f,float m){f*=.5;v=abs(v)-f;vec3 d=abs(v+m)-m;return min(min(length(max(vec3(v.x,d.yz),0.))+min(max(v.x,max(d.y,d.z)),0.),length(max(vec3(d.x,v.y,d.z),0.))+min(max(d.x,max(v.y,d.z)),0.)),length(max(vec3(d.xy,v.z),0.))+min(max(d.x,max(d.y,v.z)),0.));}float sdSphere(vec3 v,float f){return length(v)-f;}float opSmoothUnion(float v,float m,float x){float f=clamp(.5+.5*(m-v)/x,0.,1.);return mix(m,v,f)-x*f*(1.-f);}float opUnion(float v,float f){return v<f?v:f;}float opSmoothSubtraction(float v,float m,float x){float f=clamp(.5-.5*(m+v)/x,0.,1.);return mix(m,-v,f)+x*f*(1.-f);}float map(vec3 v){float f=35.55556,d=20.,x=.4,m=1e3,y=1.,z=3.;vec3 n=vec3(0,f*.5-y*.5,0);float u=sdBox(v+n,vec3(d,y,z));vec3 M=vec3(0,-f*.5+y*.5,0);float l=sdBox(v+M,vec3(d,y,z));vec3 s=vec3(-d*.5+y*.5,0,0);float i=sdBox(v+s,vec3(y,f,z));vec3 r=vec3(d*.5-y*.5,0,0);float w=sdBox(v+r,vec3(y,f,z));m=opUnion(m,u);m=opUnion(m,l);m=opUnion(m,i);m=opUnion(m,w);float p=1e3;for(int O=0;O<MLX;O+=3)if(xLA[O+2]>0.){float g=xLA[O],X=xLA[O+1];vec3 A=vec3(g,X,0);float I=sdBox(v+A,vec3(.05,xLA[O+2],3.5));p=opUnion(p,I);}for(int O=0;O<MLY;O+=3)if(yLA[O+2]>0.){float g=yLA[O],X=yLA[O+1];vec3 A=vec3(g,X,0);float I=sdBox(v+A,vec3(yLA[O+2],.05,3.5));p=opUnion(p,I);}m=opSmoothUnion(p,m,.8);for(int O=0;O<MRO;O++){float X=-f*.5+unitY*.5+float(O)*unitY;for(int g=0;g<MCO;g++){float A=-d*.5+unitX*.5+float(g)*unitX;if(isShapes[O*MCO+g]>.1){vec3 I=vec3(A,X,0);float Y=1.,o=3.,c=shRR[O*MCO+g],k=1e3;k=c<shW.x?bFr(v+I,vec3(Y*unitX,unitY*Y,o),.12):c<shW.y?sdSphere(v+I,min(unitX,unitY)*.35):c<shW.z?sdBox(v+I,vec3(.5*unitX,unitY*.5,o)):sdBox(v+I,vec3(Y*unitX,unitY*Y,o));m=opUnion(m,k);}if(g+1>=nCC)break;}if(O+1>=nRR)break;}float X=v.z*.4+displ(v*.05)*10.;X*=.5;float g=sdBox(v+vec3(0,0,-8),vec3(d,f,10)),O=opSmoothSubtraction(g,X,.1);O=opSmoothUnion(m,O,x);return O;}vec3 nrml(vec3 v){vec2 m=vec2(.01,0);return normalize(map(v)-vec3(map(v-m.xyy),map(v-m.yxy),map(v-m.yyx)));}float sha(vec3 v,vec3 m,float f,float x){float d=1.,z=f;for(int O=0;O<16;O++){float y=map(v+m*z);y=max(y*.08,0.);d=min(d,x*y/z);z+=clamp(y,.02,.5);if(y<1e-5)break;}return clamp(d,0.,1.);}float pCl(float v,float m,float f){return pow(clamp(v+m,0.,1.),f);}void main(){float v=hash12(-gl_FragCoord.yx),d=hash12(iRR.xy+random(gl_FragCoord.yx));vec2 f=(gl_FragCoord.xy/iRR.xy-vec2(.5))*vec2(2,16./9.*2.);f.x+=(v-.5)*5e-4;f.y-=(d-.5)*5e-4;float m=hash12(gl_FragCoord.xy);vec3 x=vec3(0,0,fov+1.5),y=hn(vec3(f.x,-f.y,-fov*.1));vec2 n=vec2(1,fov*4.);vec3 O=x+y*.1,z;float p=0.,u=0.;const float s=128.;float M=0.;for(float o=s;o>0.;--o){float g=map(O);g*=.6+.4*m;u+=g;O+=y*g;p=o;if(g<.01||u>n.y)break;}z=nrml(O);vec3 o=x,X=y,g=o+u*X,I=hn(lP);float A=sha(g,I,.01,80.),i=pow(p/s+.04,2.);vec3 r=vec3(i);float k=mix(.95,1.,(fov-15.)*1.1764*.01);r*=vec3(251./255.,245./255.,243./255.)*k;float Y=pow(dot(reflect(y,z),vec3(-1,1,0)),2.),w=pow(dot(z,I),2.),l=dot(z,vec3(1,0,0));vec3 F=cos(O.z+cOO+vec3(1,2,3)+.1*O.y);r+=.2*w;r*=.7+A*.3;float c=.4,P=4.,a=.2;vec3 h=vec3(pCl(r.x,c,P),pCl(r.y,c,P),pCl(r.z,c,P))*a+(1.-a);r*=h;r+=.125*F*l;r+=.03*Y*k;r=clamp(r,0.,1.);gl_FragColor=vec4(r,1);}",s="attribute vec3 aPosition;attribute vec2 aTexCoord;varying vec2 vTexCoord;void main(){vec4 positionVec4=vec4(aPosition,1);positionVec4.xy=positionVec4.xy*2.-1.;gl_Position=positionVec4;}";function y(){let o=i(3,12.999),n=o-1,v=i(4,20.999),x=v-1,s=35.5556,y=20/o,u=s/v;for(let o=0;o<11;o++){let e=0,t=0,a=0;if(o<n){e=y*o-10+y;let n=m(0,100);if(n<25)a=35.5556,t=0;else if(n<30);else{a=2*i(1,floor(.5*v)+.4999)*u,t=.5*s-.5*a-i(0,(s-a)/u+.999)*u}}f.push(e,t,a)}for(let e=0;e<19;e++){let t=-1,n=-1,v=-1;if(e<x){n=u*e-.5*s+u;let f=m(0,100);if(f<25)v=20,t=0;else if(f<30);else{v=2*i(1,floor(.5*o)+.4999)*y,t=10-.5*v-i(0,(20-v)/y+.999)*y}}a.push(t,n,v)}shader(t);let g=i(0,d.length);console.log(g);let z=d[g],O=z[0],w=z[1],b=z[2],A=z[3],C=(z[4],z[5]),X=[m(-1,1),m(-1,-.65),m(.7,1)],S=[0,0,0,0];p(S);let M=S[0],Y=S[1],F=S[2],k=S[3],I=M+Y+F+k,L=.55;M+Y+F==0&&(L=.7);for(let o=0;o<20;o++)for(let o=0;o<12;o++)m(0,1)>L?r.push(1):r.push(0),c.push(m(0,1));M/=I,Y=Y/I+M,F=F/I+Y,k=k/I+F;let P=[M,Y,F],B=i(20,100,1.5);h("xLA",f),h("yLA",a),h("isShapes",r),h("shRR",c),h("lP",X),h("nSS",w),h("nFF",O),h("dSS",b),h("dAA",A),h("shW",P),h("fov",B),h("bump",C),h("cOO",m(0,100)),h("nCC",o),h("nRR",v),h("unitX",y),h("unitY",u),h("rrs",l),h("iRR",[e.x,e.y]);let U=1e3;h("nO0",[m(-U,U),m(-U,U),m(-U,U)])}function u(o,e){let t=-1;return t="x"==e?(o+10)/20*255:(o+17.777778)/35.555556*255,t}function p(o){let e=i(1,3.9999),t=[0,1,2,3];g(t);for(let n=0;n<t.length;n++)o[t[n]]=n<e?1:0}function h(o,e){t.setUniform(o,e)}function g(o){for(var e=o.length-1;e>0;e--){var t=Math.floor(m()*(e+1)),n=o[e];o[e]=o[t],o[t]=n}}function z(o){return.01*round(100*o)}function O(){e=createVector(2160,3840),resizeCanvas(e.x,e.y),document.body.style.margin="0",document.body.style.padding="0";window.innerWidth,window.innerHeight;w(),o.width=e.x,o.height=e.y}function w(){isPortrait=!0,document.body.style.background="#e6e1dc",o.style("transform","rotate(0deg)"),o.style("-webkit-transform","rotate(0deg)"),o.style("-ms-transform","rotate(0deg)"),o.style("-o-transform","rotate(0deg)"),o.style("-moz-transform","rotate(0deg)"),o.style("position","fixed"),o.style("margin","0px"),o.style("width","auto"),o.style("height","100%");let t=windowHeight/e.y*e.x,n=.5*windowWidth-.5*t;o.position(n,0)}setup=function(){e=createVector(2160,3840),pixelDensity(1),setAttributes("antialias",!0),o=createCanvas(e.x,e.y,WEBGL),t=createShader(s,x);for(let o=0;o<20;o++)l.push(i(-1e3,1e3));document.getElementById("defaultCanvas0").getContext("webgl");y(),console.log(tokenData.hash),O()},draw=function(){v&&rect(-width/2,-height/2,width,height),v=!1};
}],