Files
bluflame/ev4k/mark_2.h
2026-04-18 22:31:51 +02:00

134 lines
3.3 KiB
C

/* File generated with Shader Minifier 1.0.3
* http://www.ctrl-alt-test.fr
*/
#ifndef MARK_2_H_
# define MARK_2_H_
const char *mark_h_2 = ""
"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)"
"{"
"vec3 o=p;"
"p.z=mod(p.z,11.)-5.5;"
"o-=p;"
"p.xy=r(p.xy,o.z+smoothstep(-.2,.2,cos(j*5.+cos(o.z*33.))));"
"s(p.xy,4.8,g/4.5);"
"return i(p.xz,1.,.3);"
"}"
"float B(vec3 p)"
"{"
"return 99.;"
"}"
"float C(vec3 p)"
"{"
"return p.z=mod(p.z,7.)-3.5,s(p.xy,0.,g/4.),max(abs(length(p.xy)-9.)-.2,3.-length(p.yz));"
"}"
"float D(vec3 p)"
"{"
"p.z+=j*33.;"
"p.xy=r(p.xy,p.z*.2-j*8.);"
"p.x+=1.;"
"float z=3.5*smoothstep(-22.,0.,p.z)-3.+Y.z*17.;"
"p.z=mod(p.z,.2)-.1;"
"return l(p.xzy,z)-1.;"
"}"
"float f(vec3 p)"
"{"
"float z=min(min(A(p),B(p)),C(p));"
"return max(length(p)-66.,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==7.)"
"p=vec3(-11.,3.,-28.-j*11.),q.yz=r(q.yz,.2),q.xz=r(q.xz,-2.+j);"
"else"
" if(k==8.)"
"p=vec3(-1.,1.,-33.-j*7.);"
"else"
" if(k==9.)"
"p=vec3(Y.z*18.+3.*smoothstep(.3,.4,j),Y.z*3.+3.,j*-60.),q.yz=r(q.yz,.1),q.xz=r(q.xz,j);"
"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(.95,1.,.95);"
"d=.18;"
"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=.6;"
"if(z>C(p))"
"z=C(p),c=vec3(0.,.6,.8)*(.9-.15/clamp(dot(n,q),-1.,-.05)),d=.1,e.y=2.;"
"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_2_H_