Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- varying vec3 m_vertex;
- varying vec3 m_normal;
- uniform vec3 u_objectColor;
- void main(void)
- {
- vec3 color = u_objectColor;
- vec3 lightDir = vec3(0.0, 0.0, -1.0);
- float diffuse = dot(m_normal, -lightDir);
- vec3 viewDir = normalize(m_vertex);
- vec3 reflectedLightDir = reflect(lightDir, m_normal);
- float specular = max(dot(reflectedLightDir, -viewDir), 0.0);
- float specularAmount = 0.05;
- float diffuseAmount = 0.75;
- float ambientAmount = 1.0 - diffuseAmount;
- gl_FragColor = vec4(color * ambientAmount + color * diffuse * diffuseAmount + specular * specularAmount, 1.0);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement