/* File generated with Shader Minifier 1.0.3 * http://www.ctrl-alt-test.fr */ #ifndef MARK_SMALL_H_ # define MARK_SMALL_H_ # define V_Y "v" # define V_Z "m" const char *mark_fs_0 = "" "varying vec4 v;" "varying vec2 m;" "float z=6.28319;" "vec2 n(vec2 v,float m)" "{" "return cos(m)*v+sin(m)*vec2(-v.y,v.x);" "}" "void n(inout vec2 v,float m,float l)" "{" "float z=mod(atan(v.y,v.x),l)-l*.5;" "v=length(v)*vec2(cos(z),sin(z));" "v.x-=m;" "}" "float f(vec3 v,float z)" "{" "return length(vec2(length(v.xz)-z,v.y));" "}" "float f(vec3 v)" "{" "return v.y+.6;" "}" "float n(vec3 v)" "{" "return min(length(v+vec3(0,8.,0))-8.5,f(v,2.3)-.5);" "}" "float s(vec3 v)" "{" "float m=max(length(v)-6.,v.y);" "n(v.xz,5.,z/64.);" "v.x=abs(v.x)-2.;" "float l=mix(length(v.yz),length(v.xyz),step(0.,v.x));" "return min(m,l-.4);" "}" "float h(vec3 m)" "{" "m.y-=4.;" "m.xz=n(m.xz,v.y*6.);" "n(m.xz,0.,z/3.);" "m.yz=n(m.yz,z/4.);" "float l=f(m,2.4)-.5;" "return min(max(.5-l,length(m)-1.5),l);" "}" "float l(vec3 v)" "{" "return min(min(min(f(v),n(v)),s(v)),h(v));" "}" "void main()" "{" "vec3 y=vec3(m.xy-.5,1),x=vec3(-30.-v.y*5.,3.,-16.+v.y*24.);" "y.xz=n(y.xz,v.y*-2.5);" "y=normalize(y);" "vec3 i=vec3(0.,0.,0.);" "float a=1.,r=0.,e=99.,c;" "while(a>.1)" "{" "for(c=1.;r.005;r+=c)" "c=l(x+y*r);" "if(rf(x))" "p=f(x);" "if(p>n(x))" "p=n(x),o=vec3(.1,.1,.1),g=.8;" "if(p>s(x))" "p=s(x),o=vec3(.4,.3,.03),g=.2;" "if(p>h(x))" "p=h(x),o=vec3(.7,0.,0.),g=.3;" "p=1.;" "for(float u=.2;u<12.;u=u*1.1+.125)" "p+=min(l(x+vec3(0.,1.,-.5)*u),0.);" "o*=clamp(p,.2,1.);" "float u=10.;" "for(p=1.;u>0.;u--)" "p-=(u*.4-l(x+w*u*.4))/exp2(u);" "o*=p;" "w.yz=n(w.yz,.6);" "o*=.4+.3*(1.-abs(w.y-.9));" "i+=a*o;" "a*=g;" "}" "else" "{" "y.yz=n(y.yz,.6);" "float u=.4+.4*y.y;" "if(y.y>0.)" "{" "n(y.xz,.2,z/16.);" "y.x=abs(y.x)-.08;" "float o=mix(abs(y.z),length(y.xz),step(0.,y.x));" "u+=pow(smoothstep(.2,0.,o),40.);" "}" "i+=a*u.xxx;" "a=0.;" "}" "}" "gl_FragColor.xyz=i;" "}"; #endif // MARK_SMALL_H_