23 lines
494 B
GLSL
23 lines
494 B
GLSL
#version 110
|
|
|
|
uniform mat4 mv_matrix, p_matrix;
|
|
uniform vec3 light_position;
|
|
|
|
attribute vec3 vertex, normal;
|
|
|
|
varying vec3 frag_normal;
|
|
varying vec3 frag_light_direction;
|
|
varying vec3 frag_eye_direction;
|
|
|
|
void
|
|
main()
|
|
{
|
|
vec4 position = mv_matrix * vec4(vertex, 1.0);
|
|
|
|
gl_Position = p_matrix * position;
|
|
frag_normal = (mv_matrix * vec4(normal, 0.0)).xyz;
|
|
frag_light_direction = (mv_matrix * vec4(light_position, 1.0)).xyz - position.xyz;
|
|
frag_eye_direction = position.xyz;
|
|
|
|
}
|