Add specular and normal mapping
[opengl.git] / vertex.glsl
index e2d30b74d109577a524be5636ecfb94365e7c432..341b26a1771d0a0d164b2310f50703427ca9cfe0 100644 (file)
@@ -2,17 +2,22 @@
 in vec3 vPosition;
 in vec4 vColor;
 in vec3 vNormal;
+in vec2 vTexCoord;
 uniform mat4 model;
 uniform mat4 view;
 uniform mat4 projection;
 out vec4 color;
 out vec3 normal;
 out vec3 fragPos;
+out vec3 normalEye;
+out vec2 texCoord;
 
 void main() {
        vec4 pos = model * vec4(vPosition, 1.f);
        gl_Position = projection * view * pos;
        fragPos = vec3(pos);
        color = vColor;
-       normal = vNormal;
+       normal = mat3(transpose(inverse(model))) * vNormal;
+       normalEye = vec3(view * vec4(normal, 0.0));
+       texCoord = vTexCoord;
 }