1 /* File generated with Shader Minifier 1.1.5
  2  * http://www.ctrl-alt-test.fr
  3  */
  4 
  5 var test_frag =
  6  "uniform mediump mat4 i;" +
  7  "uniform mediump vec4 l;" +
  8  "varying mediump vec4 c,n,r,a;" +
  9  "void main()" +
 10  "{" +
 11    "mediump vec4 m=l-a,d=normalize(m),g=normalize(r),e=normalize(n);" +
 12    "mediump float v=length(m),o=1.+.1*v+.01*v*v;" +
 13    "gl_FragColor=i[3].bbbb*max(0.,1.-4.*min(c.b,min(c.g,c.r)))+max(i[0],(i[1]*max(0.,dot(d,e))+i[2]*pow(max(0.,dot(g,reflect(-d,e))),i[3].r))/o);" +
 14  "}"
 15 
 16 /* File generated with Shader Minifier 1.1.5
 17  * http://www.ctrl-alt-test.fr
 18  */
 19 
 20 var test_vert =
 21  "uniform mat4 mv,nm,p;" +
 22  "attribute vec4 g,v,N;" +
 23  "varying vec4 c,n,r,a,m;" +
 24  "void main()" +
 25  "{" +
 26    "m=v,a=mv*v,gl_Position=p*a,n=nm*N,c=g,r=-mv*v,r.a=0.;" +
 27  "}"
 28 
 29 /* File generated with Shader Minifier 1.1.5
 30  * http://www.ctrl-alt-test.fr
 31  */
 32 
 33 var noisy_frag =
 34  "uniform mediump mat4 i;" +
 35  "uniform mediump vec4 l;" +
 36  "varying mediump vec4 c,n,r,a,m;" +
 37  "mediump vec3 v(mediump vec3 v)" +
 38  "{" +
 39    "mediump mat3 f=mat3(3,17,13,19,5,23,11,29,7);" +
 40    "mediump vec3 g=vec3(.25)+.25*sin(v*f);" +
 41    "g-=vec3(.000976563);" +
 42    "mediump vec3 t=fract(16.*g);" +
 43    "return vec3(-1.)+2.*t;" +
 44  "}" +
 45  "mediump float t(mediump vec3 f)" +
 46  "{" +
 47    "mediump float g=64.;" +
 48    "mediump vec3 d=mod(f,g),b=floor(d),t=b+vec3(0,0,1),e=b+vec3(0,1,0),o=b+vec3(0,1,1),p=b+vec3(1,0,0),u=b+vec3(1,0,1),s=b+vec3(1,1,0),z=b+vec3(1,1,1),h=d-b,x=d-t,F=d-e,C=d-o,y=d-p,w=d-u,Z=d-s,Y=d-z;" +
 49    "mediump float X=dot(h,normalize(v(mod(b,g)))),W=dot(x,normalize(v(mod(t,g)))),V=dot(F,normalize(v(mod(e,g)))),U=dot(C,normalize(v(mod(o,g)))),T=dot(y,normalize(v(mod(p,g)))),S=dot(w,normalize(v(mod(u,g)))),R=dot(Z,normalize(v(mod(s,g)))),Q=dot(Y,normalize(v(mod(z,g))));" +
 50    "mediump vec3 P=h;" +
 51    "mediump float O=X+smoothstep(0.,1.,P.r)*(T-X),N=V+smoothstep(0.,1.,P.r)*(R-V),M=W+smoothstep(0.,1.,P.r)*(S-W),L=U+smoothstep(0.,1.,P.r)*(Q-U),K=O+smoothstep(0.,1.,P.g)*(N-O),J=M+smoothstep(0.,1.,P.g)*(L-M),I=K+smoothstep(0.,1.,P.b)*(J-K);" +
 52    "return I;" +
 53  "}" +
 54  "mediump vec3 t(mediump vec3 v,mediump vec3 d,mediump vec3 f,mediump vec3 g,mediump vec3 b,mediump vec3 t,mediump vec3 e,mediump float P)" +
 55  "{" +
 56    "mediump vec3 X=d-v,o=normalize(X);" +
 57    "mediump float O=length(X),p=1.+.1*O+.01*O*O;" +
 58    "mediump vec3 u=t*max(0.,dot(o,g)),s=e*pow(max(0.,dot(f,reflect(-o,g))),P);" +
 59    "return b/p*(u+s);" +
 60  "}" +
 61  "void main()" +
 62  "{" +
 63    "mediump vec3 v=normalize(r.rgb),g=normalize(n.rgb),b=m.rgb;" +
 64    "mediump float f=.5+t(2.*b+vec3(10))+t(4.*b+vec3(.1))/2.+t(8.*b+vec3(.3))/4.+t(16.*b+vec3(.4))/6.;" +
 65    "gl_FragColor=vec4(max(i[0].rgb*f,t(a.rgb,l.rgb,v,g,vec3(1),f*i[1].rgb,i[2].rgb,16.*(1.+f))),1);" +
 66  "}"
 67 
 68 /* File generated with Shader Minifier 1.1.5
 69  * http://www.ctrl-alt-test.fr
 70  */
 71 
 72 var noisz_frag =
 73  "uniform mediump mat4 i;" +
 74  "uniform mediump vec4 l;" +
 75  "varying mediump vec4 c,n,r,a,m;" +
 76  "mediump vec3 v(mediump vec3 v)" +
 77  "{" +
 78    "mediump mat3 f=mat3(3,17,11,7,5,13,0,0,0);" +
 79    "mediump vec2 b=64.*sin(vec2(v*f)),d=sin(b),p=cos(b);" +
 80    "return vec3(d.r*p.g,d.r*d.g,p.r);" +
 81  "}" +
 82  "mediump float f(mediump vec3 b)" +
 83  "{" +
 84    "mediump float f=64.,d[8];" +
 85    "mediump vec3 p=mod(b,f),u[8],g[8],s=vec3(1,0,0);" +
 86    "u[0]=floor(p);" +
 87    "u[1]=u[0]+s.ggr;" +
 88    "u[2]=u[0]+s.grg;" +
 89    "u[3]=u[0]+s.grr;" +
 90    "for(int e=0;e<4;e++)" +
 91      "u[4+e]=u[e]+s.rgg;" +
 92    "for(int e=0;e<8;e++)" +
 93      "g[e]=p-u[e];" +
 94    "for(int e=0;e<8;e++)" +
 95      "u[e]=mod(u[e],f);" +
 96    "u[0]=v(u[0]);" +
 97    "u[1]=v(u[1]);" +
 98    "u[2]=v(u[2]);" +
 99    "u[3]=v(u[3]);" +
100    "u[4]=v(u[4]);" +
101    "u[5]=v(u[5]);" +
102    "u[6]=v(u[6]);" +
103    "u[7]=v(u[7]);" +
104    "for(int e=0;e<8;e++)" +
105      "d[e]=dot(g[e],u[e]);" +
106    "for(int e=0;e<4;e++)" +
107      "d[e]=d[e]+smoothstep(0.,1.,g[0].r)*(d[4+e]-d[e]);" +
108    "g[0]=g[0].gbr;" +
109    "for(int e=0;e<2;e++)" +
110      "d[e]=d[e]+smoothstep(0.,1.,g[0].r)*(d[2+e]-d[e]);" +
111    "g[0]=g[0].gbr;" +
112    "for(int e=0;e<2;e++)" +
113      "return d[e]=d[e]+smoothstep(0.,1.,g[0].r)*(d[1+e]-d[e]);" +
114  "}" +
115  "mediump vec3 f(mediump vec3 v,mediump vec3 f,mediump vec3 b,mediump vec3 e,mediump vec3 g,mediump vec3 d,mediump vec3 u,mediump float p)" +
116  "{" +
117    "mediump vec3 s=f-v,o=normalize(s);" +
118    "mediump float t=length(s),h=1.+.1*t+.01*t*t;" +
119    "mediump vec3 z=d*max(0.,dot(o,e)),x=u*pow(max(0.,dot(b,reflect(-o,e))),p);" +
120    "return g/h*(z+x);" +
121  "}" +
122  "void main()" +
123  "{" +
124    "mediump vec3 v=normalize(r.rgb),e=normalize(n.rgb),d=m.rgb;" +
125    "mediump float b=.5+f(2.*d+vec3(10))+f(4.*d+vec3(.1))/2.+f(8.*d+vec3(.3))/4.+f(16.*d+vec3(.4))/6.;" +
126    "gl_FragColor=vec4(max(i[0].rgb*b,f(a.rgb,l.rgb,v,e,vec3(1),b*i[1].rgb,i[2].rgb,16.*(1.+b))),1);" +
127  "}"
128 
129