port from perforce
This commit is contained in:
163
evoke-64k/ev15-4k/shader_code.h
Normal file
163
evoke-64k/ev15-4k/shader_code.h
Normal file
@@ -0,0 +1,163 @@
|
||||
/* File generated with Shader Minifier 1.0.3
|
||||
* http://www.ctrl-alt-test.fr
|
||||
*/
|
||||
#ifndef SHADER_CODE_H_
|
||||
# define SHADER_CODE_H_
|
||||
# define V_Y "v"
|
||||
# define V_Z "m"
|
||||
|
||||
const char *mark_fs = ""
|
||||
"varying vec4 v;"
|
||||
"varying vec2 m;"
|
||||
"vec3 f,z;"
|
||||
"float x=6.28319;"
|
||||
"vec2 n(vec2 f,float v)"
|
||||
"{"
|
||||
"return cos(v)*f+sin(v)*vec2(-f.y,f.x);"
|
||||
"}"
|
||||
"void i(inout vec3 v,float f)"
|
||||
"{"
|
||||
"float z=mod(atan(v.z,v.x),f)-f*.5;"
|
||||
"v.xz=length(v.xz)*vec2(cos(z),sin(z));"
|
||||
"}"
|
||||
"float i(vec3 v,float f,float z)"
|
||||
"{"
|
||||
"return length(vec2(length(v.xz)-f,v.y))-z;"
|
||||
"}"
|
||||
"float s(vec3 v,float z)"
|
||||
"{"
|
||||
"return length(v)-z;"
|
||||
"}"
|
||||
"float i(vec3 v)"
|
||||
"{"
|
||||
"return v.y+.6;"
|
||||
"}"
|
||||
"float n(vec3 v)"
|
||||
"{"
|
||||
"return min(s(v+vec3(0,8.,0),8.5),i(v,2.3,.5));"
|
||||
"}"
|
||||
"float s(vec3 v)"
|
||||
"{"
|
||||
"float z=max(s(v,6.),v.y);"
|
||||
"i(v,x/64.);"
|
||||
"v.x=abs(v.x-5.)-2.;"
|
||||
"float f=mix(length(v.yz),length(v.xyz),step(0.,v.x));"
|
||||
"return min(z,f-.4);"
|
||||
"}"
|
||||
"float l(vec3 f)"
|
||||
"{"
|
||||
"return f.y-=4.,f.xz=n(f.xz,v.y*6.),i(f,x/12.),f.yz=n(f.yz,x/4.),min(i(f,2.,.15),s(f,1.5));"
|
||||
"}"
|
||||
"float h(vec3 v)"
|
||||
"{"
|
||||
"return min(min(min(i(v),n(v)),s(v)),l(v));"
|
||||
"}"
|
||||
"int g(vec3 v)"
|
||||
"{"
|
||||
"float z=1000.;"
|
||||
"int f;"
|
||||
"if(i(v)<z)"
|
||||
"z=i(v),f=0;"
|
||||
"if(n(v)<z)"
|
||||
"z=n(v),f=1;"
|
||||
"if(s(v)<z)"
|
||||
"z=s(v),f=2;"
|
||||
"if(l(v)<z)"
|
||||
"z=l(v),f=3;"
|
||||
"return f;"
|
||||
"}"
|
||||
"vec3 p(vec3 v)"
|
||||
"{"
|
||||
"vec3 z=vec3(.04,0.,0.),f;"
|
||||
"f.x=h(v+z.xyy)-h(v-z.xyy);"
|
||||
"f.y=h(v+z.yxy)-h(v-z.yxy);"
|
||||
"f.z=h(v+z.yyx)-h(v-z.yyx);"
|
||||
"return normalize(f);"
|
||||
"}"
|
||||
"float e(vec3 v)"
|
||||
"{"
|
||||
"float z=1.;"
|
||||
"for(float f=.2;f<12.;f=f*1.1+.125)"
|
||||
"z+=min(h(v+vec3(0.,1.,0.)*f),0.);"
|
||||
"return clamp(z,.2,1.);"
|
||||
"}"
|
||||
"float e(vec3 v,vec3 f,float z,float i)"
|
||||
"{"
|
||||
"float x,y=sign(z);"
|
||||
"for(x=y*.5+.5;i>0.;i--)"
|
||||
"x-=(i*z-h(v+f*i*z*y))/exp2(i);"
|
||||
"return x;"
|
||||
"}"
|
||||
"vec3 t(vec3 v)"
|
||||
"{"
|
||||
"float z=.3+.3*dot(v,vec3(0.,1.,0.));"
|
||||
"i(v,x/16.);"
|
||||
"v.x=abs(v.x-.2)-.08;"
|
||||
"float f=mix(abs(v.z),length(v.xz),step(0.,v.x));"
|
||||
"z+=pow(smoothstep(.1,0.,f),15.);"
|
||||
"return vec3(z);"
|
||||
"}"
|
||||
"float c(vec3 v)"
|
||||
"{"
|
||||
"float z=abs(v.y-.9);"
|
||||
"return.4+.3*(1-z);"
|
||||
"}"
|
||||
"void main()"
|
||||
"{"
|
||||
"int x=int(v.y);"
|
||||
"float y=mod(v.y,1.);"
|
||||
"z=vec3(m.xy-.5,1);"
|
||||
"f=vec3(-30.-y*5.,3.,-16.+y*24.);"
|
||||
"z.xz=n(z.xz,y*-2.5);"
|
||||
"if(false)"
|
||||
"{"
|
||||
"f.x=gl_ModelViewMatrix[0][0];"
|
||||
"f.y=gl_ModelViewMatrix[0][1];"
|
||||
"f.z=gl_ModelViewMatrix[0][2];"
|
||||
"float i=gl_ModelViewMatrix[1][1],s,r;"
|
||||
"vec3 l=vec3(m.xy-.5,1);"
|
||||
"s=cos(i);"
|
||||
"r=sin(i);"
|
||||
"z.y=s*l.y-r*l.z;"
|
||||
"z.x=l.x;"
|
||||
"z.z=r*l.y+s*l.z;"
|
||||
"i=gl_ModelViewMatrix[1][0];"
|
||||
"l=z;"
|
||||
"s=cos(i);"
|
||||
"r=sin(i);"
|
||||
"z.x=s*l.x+r*l.z;"
|
||||
"z.z=-r*l.x+s*l.z;"
|
||||
"}"
|
||||
"z=normalize(z);"
|
||||
"vec3 i=vec3(0.,0.,0.);"
|
||||
"float s=1.,l=0.,r=256.,a;"
|
||||
"while(s>.1)"
|
||||
"{"
|
||||
"for(a=1.;l<r&&a>.05;l+=a)"
|
||||
"a=h(f+z*l);"
|
||||
"if(l<r)"
|
||||
"{"
|
||||
"f+=z*l;"
|
||||
"vec3 o=p(f);"
|
||||
"z=reflect(z,o);"
|
||||
"l=.1;"
|
||||
"vec3 d=vec3(.3,.2,.1);"
|
||||
"float u=.125;"
|
||||
"int M=g(f);"
|
||||
"if(M==1)"
|
||||
"d=vec3(.1,.1,.1),u=.8;"
|
||||
"if(M==2)"
|
||||
"d=vec3(.4,.3,.03),u=.2;"
|
||||
"if(M==3)"
|
||||
"d=vec3(.7,0.,0.),u=.2;"
|
||||
"d*=c(o)*e(f)*e(f,o,.4,10.);"
|
||||
"i+=s*d;"
|
||||
"s*=u;"
|
||||
"}"
|
||||
"else"
|
||||
" i+=s*t(z),s=0.;"
|
||||
"}"
|
||||
"gl_FragColor.xyz=i;"
|
||||
"}";
|
||||
|
||||
#endif // SHADER_CODE_H_
|
||||
Reference in New Issue
Block a user