Preliminary packaging of 0.9.2-1
[fstl] / gl / mesh.frag
1 #version 120
2
3 uniform float zoom;
4
5 varying vec3 ec_pos;
6
7 void main() {
8     vec3 base3 = vec3(0.99, 0.96, 0.89);
9     vec3 base2 = vec3(0.92, 0.91, 0.83);
10     vec3 base00 = vec3(0.40, 0.48, 0.51);
11
12     vec3 ec_normal = normalize(cross(dFdx(ec_pos), dFdy(ec_pos)));
13     ec_normal.z *= zoom;
14     ec_normal = normalize(ec_normal);
15
16     float a = dot(ec_normal, vec3(0.0, 0.0, 1.0));
17     float b = dot(ec_normal, vec3(-0.57, -0.57, 0.57));
18
19     gl_FragColor = vec4((a*base2 + (1-a)*base00)*0.5 +
20                         (b*base3 + (1-b)*base00)*0.5, 1.0);
21 }