port from perforce
This commit is contained in:
116
ev4k/mark_small.h
Normal file
116
ev4k/mark_small.h
Normal file
@@ -0,0 +1,116 @@
|
||||
/* 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<e&&c>.005;r+=c)"
|
||||
"c=l(x+y*r);"
|
||||
"if(r<e)"
|
||||
"{"
|
||||
"x+=y*r;"
|
||||
"vec3 t=vec3(.04,0.,0.),w=vec3(l(x+t.xyy)-l(x-t.xyy),l(x+t.yxy)-l(x-t.yxy),l(x+t.yyx)-l(x-t.yyx));"
|
||||
"w=normalize(w);"
|
||||
"y=reflect(y,w);"
|
||||
"r=.1;"
|
||||
"float p=999.;"
|
||||
"vec3 o=vec3(.3,.2,.1);"
|
||||
"float g=.125;"
|
||||
"if(p>f(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_
|
||||
Reference in New Issue
Block a user