WIP - port to Mali EGL
[mesa-demos/mali.git] / src / glsl / blinking-teapot.frag
blob0db060be057a1f6ca3e9d813073a013b5627c5f8
1 #extension GL_ARB_uniform_buffer_object : enable
3 layout(std140) uniform colors0
5     float DiffuseCool;
6     float DiffuseWarm;
7     vec3  SurfaceColor;
8     vec3  WarmColor;
9     vec3  CoolColor;
10     vec4  some[8];
13 varying float NdotL;
14 varying vec3  ReflectVec;
15 varying vec3  ViewVec;
17 void main (void)
20     vec3 kcool    = min(CoolColor + DiffuseCool * SurfaceColor, 1.0);
21     vec3 kwarm    = min(WarmColor + DiffuseWarm * SurfaceColor, 1.0);
22     vec3 kfinal   = mix(kcool, kwarm, NdotL);
24     vec3 nreflect = normalize(ReflectVec);
25     vec3 nview    = normalize(ViewVec);
27     float spec    = max(dot(nreflect, nview), 0.0);
28     spec          = pow(spec, 32.0);
30     gl_FragColor = vec4 (min(kfinal + spec, 1.0), 1.0);