summaryrefslogtreecommitdiff
path: root/engine/vertex.glsl
diff options
context:
space:
mode:
authorHampusM <hampus@hampusmat.com>2023-11-12 22:38:52 +0100
committerHampusM <hampus@hampusmat.com>2023-11-12 22:57:19 +0100
commit8d821588cd4f51d4ae9c4ef52d45c0af0e1ce9e5 (patch)
treeed1b0dd30e801b9a70537b9806a445e4212978b3 /engine/vertex.glsl
parent67023d6a095f457a2579367d59d13c6c804e7108 (diff)
feat(engine): add basic flat lighting
Diffstat (limited to 'engine/vertex.glsl')
-rw-r--r--engine/vertex.glsl7
1 files changed, 7 insertions, 0 deletions
diff --git a/engine/vertex.glsl b/engine/vertex.glsl
index 61782c2..3279036 100644
--- a/engine/vertex.glsl
+++ b/engine/vertex.glsl
@@ -2,9 +2,12 @@
layout (location = 0) in vec3 pos;
layout (location = 1) in vec3 color;
layout (location = 2) in vec2 texture_coords;
+layout (location = 3) in vec3 normal;
out vec3 in_frag_color;
+out vec3 in_frag_pos;
out vec2 in_texture_coords;
+out vec3 in_normal;
uniform mat4 model;
uniform mat4 view;
@@ -15,5 +18,9 @@ void main()
gl_Position = projection * view * model * vec4(pos, 1.0);
in_frag_color = color;
+ in_frag_pos = vec3(model * vec4(pos, 1.0));
in_texture_coords = texture_coords;
+
+ // TODO: Do this using CPU for performance increase
+ in_normal = mat3(transpose(inverse(model))) * normal;
}