PBR checkpoint
[opengl.git] / pbrvert.glsl
diff --git a/pbrvert.glsl b/pbrvert.glsl
new file mode 100644 (file)
index 0000000..ec37a9c
--- /dev/null
@@ -0,0 +1,24 @@
+#version 330
+in vec3 pos;
+in vec3 unscaledNormal;
+in vec2 vTexCoord;
+
+uniform mat4 model;
+uniform mat4 view;
+uniform mat4 projection;
+
+out vec3 normal;
+out vec2 texCoords;
+
+out vec3 lightPos, viewPos, worldPos;
+
+void main() {
+       texCoords = vTexCoord;
+
+       worldPos = vec3(model * vec4(pos, 1.f));
+
+       normal = mat3(transpose(inverse(model))) * unscaledNormal;
+       
+       gl_Position = projection * view * model * vec4(pos, 1.f);
+}
+