Import gears_using_shaders into git
[gears_using_shaders.git] / shiny.vsh
blob520abd256ee710cd58786bd5f75efbc96d8eee48
1 // Based on Point Light shader from oZone3D.Net \r
2 // http://www.ozone3d.net/tutorials/glsl_lighting_phong_p2.php\r
3 \r
4 varying vec3 normal, light_direction, eye_position;\r
5 varying float attenuation;\r
6 \r
7 void main(void)\r
8 {       \r
9   normal = gl_NormalMatrix * gl_Normal;\r
11   vec3 vVertex = vec3(gl_ModelViewMatrix * gl_Vertex);\r
12   light_direction = vec3(gl_LightSource[0].position.xyz - vVertex);\r
13   eye_position = -vVertex;\r
14         \r
15   float d = length(light_direction);\r
16         \r
17   attenuation = 1.0 / ( gl_LightSource[0].constantAttenuation + \r
18                 (gl_LightSource[0].linearAttenuation*d) + \r
19                 (gl_LightSource[0].quadraticAttenuation*d*d) );\r
21   gl_Position = ftransform();           \r
22 }\r