in vec4 position;
in vec3 normal;
in lowp vec4 color;
out lowp vec4 colorVarying;
uniform mat4 modelViewProjectionMatrix;
uniform mat3 normalMatrix;
void main()
{
vec3 eyeNormal = normalize(normalMatrix * normal);
vec3 lightPosition = vec3(0.0, 0.5, 1.0);
float nDotVP = min(1.0,max(0.0, dot(eyeNormal, normalize(lightPosition))));
colorVarying = color * nDotVP; // both of these produce
colorVarying = vec4(0.5, 0.5, 0.5, 1.0) * nDotVP; // translucent objects
gl_Position = modelViewProjectionMatrix * position;
}