273 lines
6.9 KiB
C
273 lines
6.9 KiB
C
/* File generated with Shader Minifier 1.1.1
|
|
* http://www.ctrl-alt-test.fr
|
|
*/
|
|
#ifndef INTRO_SMALL_H_
|
|
# define INTRO_SMALL_H_
|
|
# define U_Y "v"
|
|
|
|
char intro_fs[] = ""
|
|
"const int z=0x0;"
|
|
"uniform vec4 v;"
|
|
"float i,y,f,m,l=6.28319;"
|
|
"int e;"
|
|
"vec2 r;"
|
|
"vec3 x,a,s=vec3(0.),w=vec3(0.),d=vec3(3.,2.5,2.),t=vec3(.7,.6,.4);"
|
|
"vec4 b;"
|
|
"vec2 n(vec2 a,float y)"
|
|
"{"
|
|
"return cos(y)*a+sin(y)*vec2(-a.y,a.x);"
|
|
"}"
|
|
"float n(inout vec2 a,float v,float y)"
|
|
"{"
|
|
"float z=atan(a.y,a.x),m=mod(z,y)-y*.5;"
|
|
"a=length(a)*vec2(cos(m),sin(m));"
|
|
"a.x-=v;"
|
|
"return z-m;"
|
|
"}"
|
|
"void h(inout float z,float y)"
|
|
"{"
|
|
"z=mod(z-y*.5,y)-y*.5;"
|
|
"}"
|
|
"void h(inout float z,float y,float x)"
|
|
"{"
|
|
"z=max(abs(z)-x,mod(z-y*.5,y)-y*.5);"
|
|
"}"
|
|
"float p(float z,float y)"
|
|
"{"
|
|
"return floor((z-y*.5)/y);"
|
|
"}"
|
|
"float p(in vec3 z,in vec3 y,float a)"
|
|
"{"
|
|
"return length(max(abs(z)-y+vec3(a),0.))-a;"
|
|
"}"
|
|
"float c(in vec2 z,in vec2 y,float a)"
|
|
"{"
|
|
"return length(max(abs(z)-y+vec2(a),0.))-a;"
|
|
"}"
|
|
"float c(float z,float y,float x,float i)"
|
|
"{"
|
|
"return sin(z+y+i*sin(z+x));"
|
|
"}"
|
|
"float o(float y,float z,float x)"
|
|
"{"
|
|
"float a=clamp(.5+.5*(z-y)/x,0.,1.);"
|
|
"return mix(z,y,a)-x*a*(1.-a);"
|
|
"}"
|
|
"float c(vec2 z)"
|
|
"{"
|
|
"float y=dot(z,vec2(23.2,15.7));"
|
|
"return fract(sin(y)*232.45);"
|
|
"}"
|
|
"float h(vec2 y)"
|
|
"{"
|
|
"vec2 a=vec2(1.,0.),z=floor(y),v=fract(y);"
|
|
"v*=v*(3.-2.*v);"
|
|
"return-.5+mix(mix(c(z+a.yy),c(z+a.xy),v.x),mix(c(z+a.yx),c(z+a.xx),v.x),v.y);"
|
|
"}"
|
|
"float n(vec3 a)"
|
|
"{"
|
|
"a.y+=4.*c(1.1,y*3.+a.z*.02,.4,a.z*.02);"
|
|
"a.x+=4.*c(.9,y*4.+a.z*.02,-1.4,a.z*.02);"
|
|
"float z=p(a.z,24.);"
|
|
"h(a.z,24.);"
|
|
"a.xy=n(a.xy,z+c(1.1,y*4.,1.3,z*.2));"
|
|
"z=max(12.-length(a.xz),length(length(a.xy)-32.)-1.);"
|
|
"n(a.xy,32.,l/5.);"
|
|
"return min(z,max(length(a.z)-1.,length(length(a.xy)-18.)-1.));"
|
|
"}"
|
|
"float o(vec3 y)"
|
|
"{"
|
|
"if(z>7)"
|
|
"return length(y)-32.-v.w;"
|
|
"else"
|
|
" return length(y)-48.-v.w;"
|
|
"}"
|
|
"float p(vec3 a)"
|
|
"{"
|
|
"if(z>7)"
|
|
"{"
|
|
"float i=999.;"
|
|
"for(float f=0.;f<3.;f+=1)"
|
|
"{"
|
|
"vec3 m=a;"
|
|
"m.xy=n(m.xy,f+2.3*y);"
|
|
"m.zx=n(m.zx,2.*f+4.3*y);"
|
|
"m.z+=48.+8.*c(1.1,y*2.,.4,y*.02);"
|
|
"m.yz=n(m.yz,f+5.9*y);"
|
|
"m.xy=n(m.xy,f+2.3*y);"
|
|
"i=min(i,p(m,vec3(16.,16.,16.)+v.w,3.));"
|
|
"}"
|
|
"return max(40.-length(a),o(i,length(a)-34.,24.));"
|
|
"}"
|
|
"else"
|
|
" if(z>3)"
|
|
"{"
|
|
"float i=360.-y*222.-a.z;"
|
|
"i=8.-(i<0.?0.:.001*i*i);"
|
|
"a.y-=4.*c(1.1,y*2.+a.z*.02,.4,a.z*.02);"
|
|
"a.x-=4.*c(.9,y*2.+a.z*.02,-1.4,a.z*.02);"
|
|
"return length(a.xy)-i-v.w;"
|
|
"}"
|
|
"else"
|
|
" return a.z+=192.-96.*y,a.xy=n(a.xy,2.3*y),a.yz=n(a.yz,1.9*y),p(a,vec3(32.,32.,32.)+v.w,0.);"
|
|
"}"
|
|
"float u(vec3 a)"
|
|
"{"
|
|
"if(z>7)"
|
|
"{"
|
|
"float i=p(a,vec3(555.,555.,555.),0.),f=1.;"
|
|
"vec3 v=a;"
|
|
"for(int m=0;m<4;m++)"
|
|
"{"
|
|
"v.x+=33.;"
|
|
"v.xz=n(v.xz,1.6+.13*y);"
|
|
"v.yz=n(v.yz,.912*y);"
|
|
"float x=444./f;"
|
|
"vec3 s=abs(.33-abs(mod(v-x*.5,x)-x*.5));"
|
|
"i=max(i,111./f-min(max(s.x,s.y),min(max(s.y,s.z),max(s.z,s.x))));"
|
|
"f*=3.;"
|
|
"}"
|
|
"return i;"
|
|
"}"
|
|
"else"
|
|
" if(z>3)"
|
|
"return n(a);"
|
|
"else"
|
|
"{"
|
|
"float i=n(a.xy,64.,l/48.),f=p(a.z,6.);"
|
|
"h(a.z,12.);"
|
|
"i=c(i,y*8.,1.3,f*.2)+.8;"
|
|
"return length(a)-i;"
|
|
"}"
|
|
"}"
|
|
"float g(vec3 a)"
|
|
"{"
|
|
"return min(min(o(a),p(a)),u(a));"
|
|
"}"
|
|
"float F(vec3 a)"
|
|
"{"
|
|
"return g(a);"
|
|
"}"
|
|
"void C(vec3 a)"
|
|
"{"
|
|
"b=vec4(-1.8,3.,.6,2.);"
|
|
"float z=.1;"
|
|
"if(z>o(a))"
|
|
"z=o(a),s=vec3(250,105,0)/255,m=.6;"
|
|
"if(z>p(a))"
|
|
"z=p(a),s=vec3(105,210,231)/255,m=.6;"
|
|
"if(z>u(a))"
|
|
"s=vec3(224,228,204)/255,m=.3;"
|
|
"}"
|
|
"vec3 C(vec3 y,vec3 z,vec2 a)"
|
|
"{"
|
|
"return smoothstep(a.x,a.y,dot(vec3(.86,.5,0.),y))*z;"
|
|
"}"
|
|
"vec3 k(vec3 y)"
|
|
"{"
|
|
"vec2 a=vec2(gl_FragCoord.xy/v.y);"
|
|
"a.x-=v.z;"
|
|
"vec2 z=2*a-1;"
|
|
"float i=min(8.*abs(sin(v.x*3.1415)),1.);"
|
|
"y*=.9+.1*sin(10.*v.x+z.x*v.y);"
|
|
"y*=.9+.1*sin(10.*v.x+z.y*v.y);"
|
|
"float m=1.5-length(z*2)*.15;"
|
|
"if(a.y>=i-.02)"
|
|
"y*=.7;"
|
|
"if(a.y>=i-.04)"
|
|
"y*=.7;"
|
|
"if(a.y<=1.02-i)"
|
|
"y*=.7;"
|
|
"if(a.y<=1.04-i)"
|
|
"y*=.7;"
|
|
"return smoothstep(0.,1.,y*m*i)*2.;"
|
|
"}"
|
|
"void main()"
|
|
"{"
|
|
"y=fract(v.x);"
|
|
"f=y*y;"
|
|
"a=vec3(gl_FragCoord.xy/v.y-.5,.8);"
|
|
"a.x-=v.z;"
|
|
"vec3 l=vec3(0.,11.,-y*33.);"
|
|
"if(z<1)"
|
|
"l=vec3(-44.,-33.,99.),a.yz=n(a.yz,-y),a.xz=n(a.xz,-y);"
|
|
"else"
|
|
" if(z<2)"
|
|
"l=vec3(22.,3.,111.*(1.-y*.3)),a.xz=n(a.xz,3.);"
|
|
"else"
|
|
" if(z<3)"
|
|
"l=vec3(-44.,-33.,-99.),a.yz=n(a.yz,-y),a.xz=n(a.xz,4.5-y);"
|
|
"else"
|
|
" if(z<4)"
|
|
"l=vec3(55.,33.,-155.*(1.-y*.6)),a.yz=n(a.yz,.4),a.xz=n(a.xz,-4.5-y);"
|
|
"else"
|
|
" if(z<5)"
|
|
"l=vec3(11.,0.,-111.),a.xz=n(a.xz,3.);"
|
|
"else"
|
|
" if(z<6)"
|
|
"l=vec3(-18.,-11.,-111.*(1.-y*.3)),a.yz=n(a.yz,-y*.3),a.xz=n(a.xz,-y);"
|
|
"else"
|
|
" if(z<7)"
|
|
"l=vec3(-18.,-11.,144.*(1.-y*.3)),a.yz=n(a.yz,-y*.3),a.xz=n(a.xz,-y);"
|
|
"else"
|
|
" if(z<8)"
|
|
"l=vec3(18.,-11.,111.*(1.-y*.5)),a.yz=n(a.yz,-y*.3),a.xz=n(a.xz,-.3+y*2.);"
|
|
"else"
|
|
" if(z<9)"
|
|
"l=vec3(-55.,99.,177.),a.yz=n(a.yz,-.4),a.xz=n(a.xz,3.5*(1.-y*.3));"
|
|
"else"
|
|
" if(z<10)"
|
|
"l=vec3(-290.,153.,-70.),a.yz=n(a.yz,.4),a.xz=n(a.xz,-y);"
|
|
"else"
|
|
" if(z<11)"
|
|
"l=vec3(-66.,44.,0.),a.yz=n(a.yz,.6),a.xz=n(a.xz,4.4);"
|
|
"else"
|
|
" l=vec3(-33.,33.*(1.-y),-11.),a.yz=n(a.yz,-.5),a.xz=n(a.xz,-1.);"
|
|
"a=normalize(a);"
|
|
"x=vec3(0.,0.,0.);"
|
|
"i=1.;"
|
|
"float h=0.,u,p;"
|
|
"e=0;"
|
|
"b=vec4(-3.,8.,.9,1.);"
|
|
"vec3 c=C(a,d,b.zw);"
|
|
"while(e++<5)"
|
|
"{"
|
|
"float o=222.;"
|
|
"for(m=1.;o>=0.&&h<999.&&m>h*1e-06;h+=m,w=a*h,o-=1.)"
|
|
"m=g(l+w);"
|
|
"if(o<=1)"
|
|
"{"
|
|
"o=0.;"
|
|
"h=999.3;"
|
|
"w=a*h;"
|
|
"break;"
|
|
"}"
|
|
"o=smoothstep(44.,1.,o);"
|
|
"vec3 Z=l+w;"
|
|
"l=Z;"
|
|
"r=vec2(.04,0.);"
|
|
"vec3 Y=vec3(F(l+r.xyy)-F(l-r.xyy),F(l+r.yxy)-F(l-r.yxy),F(l+r.yyx)-F(l-r.yyx));"
|
|
"C(l);"
|
|
"Y=normalize(Y);"
|
|
"if(h>999.)"
|
|
"{"
|
|
"if(e<2)"
|
|
"b=vec4(-3.,8.,.9,1.);"
|
|
"break;"
|
|
"}"
|
|
"a=reflect(a,Y);"
|
|
"u=8.;"
|
|
"for(p=1.;u>0.;u-=1.)"
|
|
"p-=.5*(u-g(l+Y*u))/exp2(u);"
|
|
"s*=p;"
|
|
"s*=C(a,t,b.xy);"
|
|
"x+=i*mix(s,c,o);"
|
|
"i*=m;"
|
|
"h=.5;"
|
|
"w=a*h;"
|
|
"}"
|
|
"gl_FragColor.xyz=step(-12.,-v.x)*k(x+i*(C(a,d,b.zw)+C(a,t,b.xy)));"
|
|
"}";
|
|
|
|
#endif // INTRO_SMALL_H_
|