diff options
author | HampusM <hampus@hampusmat.com> | 2023-11-12 22:38:52 +0100 |
---|---|---|
committer | HampusM <hampus@hampusmat.com> | 2023-11-12 22:57:19 +0100 |
commit | 8d821588cd4f51d4ae9c4ef52d45c0af0e1ce9e5 (patch) | |
tree | ed1b0dd30e801b9a70537b9806a445e4212978b3 /engine/vertex.glsl | |
parent | 67023d6a095f457a2579367d59d13c6c804e7108 (diff) |
feat(engine): add basic flat lighting
Diffstat (limited to 'engine/vertex.glsl')
-rw-r--r-- | engine/vertex.glsl | 7 |
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; } |