diff options
Diffstat (limited to 'shaders/glsl330/phong.vs')
| -rw-r--r-- | shaders/glsl330/phong.vs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/shaders/glsl330/phong.vs b/shaders/glsl330/phong.vs new file mode 100644 index 00000000..ee6d34bf --- /dev/null +++ b/shaders/glsl330/phong.vs @@ -0,0 +1,27 @@ +#version 330 + +// Vertex input data +in vec3 vertexPosition; +in vec2 vertexTexCoord; +in vec3 vertexNormal; + +// Projection and model data +uniform mat4 mvpMatrix; +uniform mat4 modelMatrix; + +// Attributes to fragment shader +out vec2 fragTexCoord; +out vec3 fragNormal; + +void main() +{ + // Send texture coord to fragment shader + fragTexCoord = vertexTexCoord; + + // Calculate view vector normal from model + mat3 normalMatrix = transpose(inverse(mat3(modelMatrix))); + fragNormal = normalize(normalMatrix*vertexNormal); + + // Calculate final vertex position + gl_Position = mvpMatrix*vec4(vertexPosition, 1.0); +}
\ No newline at end of file |
