/* File generated with Shader Minifier 1.0.3 * http://www.ctrl-alt-test.fr */ #ifndef MARK_0_H_ # define MARK_0_H_ const char *mark_h_0 = "" "varying vec4 Y,Z;" "float j,k,g=acos(-1.),h=sqrt(.75);" "vec2 r(vec2 v,float y)" "{" "return cos(y)*v+sin(y)*vec2(-v.y,v.x);" "}" "void s(inout vec2 v,float x,float y)" "{" "float z=mod(atan(v.y,v.x),y)-y*.5;" "v=length(v)*vec2(cos(z),sin(z));" "v.x-=x;" "}" "float l(vec3 p,float f)" "{" "return length(vec2(length(p.xz)-f,p.y));" "}" "float i(vec2 p,float y,float z)" "{" "return length(max(abs(p)-vec2(y)+vec2(z),0.))-z;" "}" "float u(vec3 p)" "{" "return fract(sin(p.x*151.+p.y*33.+p.z)*11.);" "}" "float w(vec3 p)" "{" "vec2 e=vec2(1.,0.);" "vec3 o=smoothstep(0.,1.,fract(p));" "p=floor(p);" "vec4 n=mix(vec4(u(p+e.yyy),u(p+e.xyy),u(p+e.yxy),u(p+e.xxy)),vec4(u(p+e.yyx),u(p+e.xyx),u(p+e.yxx),u(p+e.xxx)),o.z);" "e=mix(n.xy,n.zw,o.y);" "return mix(e.x,e.y,o.x);" "}" "float A(vec3 p)" "{" "return p.y-w(p+j*3.)*.2+1.;" "}" "float B(vec3 p)" "{" "return min(length(p+vec3(0.,8.,0.))-8.5,l(p,2.3)-.5);" "}" "float C(vec3 p)" "{" "p.xz=r(p.xz,Y.z*11.);" "float d1=max(length(p)-6.,p.y);" "s(p.xz,5.,g/32.);" "p.x=abs(p.x)-2.;" "float dist=mix(length(p.yz),length(p.xyz),step(0.,p.x));" "return min(d1,dist-.4);" "}" "float D(vec3 p)" "{" "p.y-=4.;" "p.xz=r(p.xz,j*6.);" "s(p.xz,0.,g/1.5);" "p.yz=r(p.yz,g/2.);" "float z=l(p,2.4)-.5;" "return min(max(.5-z,length(p)-1.5-Y.z*22.),z);" "}" "float f(vec3 p)" "{" "float z=min(min(A(p),B(p)),C(p));" "return max(length(p)-33.,min(z,max(.5-z,D(p))));" "}" "void main()" "{" "k=Y.x;" "j=Y.y;" "vec3 q=vec3(Z.xy-.5,1.),p;" "if(k==0.)" "p=vec3(12.,1.,0.),q.yz=r(q.yz,1.+j*-1.2),q.xz=r(q.xz,3.-j*1.5);" "else" " if(k==1.)" "p=vec3(-3.,3.,-16.+j*10.),q.xz=r(q.xz,j*-.6);" "else" " if(k==2.)" "p=vec3(0.,12.-j*8.,-16.+j*12.),q.yz=r(q.yz,.4+j*.4);" "else" " if(k==3.)" "p=vec3(2.,2.,-6.-Y.z*22.);" "q=normalize(q);" "vec3 b=vec3(0.,0.,0.);" "float a=1.,t=w(q*666.)*.2,y,z,d,m=0;" "while(m++<2.)" "{" "for(d=1.;t<66.&&d>t*.003;t+=max(.01,d+.01))" "d=f(p+q*t);" "if(t>66.)" "{" "break;" "}" "p+=q*t;" "vec2 e=vec2(.04,0.);" "vec3 n=vec3(f(p+e.xyy)-f(p-e.xyy),f(p+e.yxy)-f(p-e.yxy),f(p+e.yyx)-f(p-e.yyx));" "n=normalize(n);" "z=A(p);" "vec3 c=vec3(.05,.1,.2)*(t+5.)*.2;" "d=.7;" "if(z>D(p))" "z=D(p),c=vec3(1.,0.,0.),d=.15;" "if(z>B(p))" "z=B(p),c=vec3(.1),d=.8;" "if(z>C(p))" "z=C(p),c=vec3(0.,.6,.8)*(.9-.15/clamp(dot(n,q),-1.,-.05)),d=.2,e.y=8.;" "n+=(w(p*e.y)+w(p*e.y*2.)+w(p*e.y*4.))*e.x;" "n=normalize(n);" "q=reflect(q,n);" "y=6.;" "for(z=1.;y>0.;y--)" "z-=(y*.5-f(p+n*y*.5))/exp2(y);" "c*=z;" "n.yz=r(n.yz,.6);" "c*=.4+.3*(1.-abs(n.y-.9));" "b+=a*c;" "a*=d;" "t=.3;" "}" "p=vec3(.8);" "q.yz=r(q.yz,.6);" "p+=q.y*.2;" "if(m<2)" "p*=vec3(.95,1.1,1.2);" "if(q.y>0.)" "s(q.xz,.4,g/8.),q.x=abs(q.x)-.2,p+=pow(smoothstep(.2,0.,mix(abs(q.z),length(q.xz),step(0.,q.x))),22.);" "vec3 color=b+a*p;" "gl_FragColor.xyz=length(color)*(cos((Z.y+color)*g*2)*.125+.5);" "}"; #endif // MARK_0_H_