Prepared better shaders.
This commit is contained in:
@ -1,7 +1,15 @@
|
||||
#version 330 core
|
||||
|
||||
uniform vec3 light_dir;
|
||||
in vec3 frag_col;
|
||||
in vec3 frag_pos;
|
||||
in vec3 normal;
|
||||
out vec3 col;
|
||||
|
||||
void main() {
|
||||
col = frag_col;
|
||||
vec3 norm = normalize(normal);
|
||||
vec3 lightDir = normalize(-light_dir);
|
||||
float diff = max(dot(norm, lightDir), 0.0);
|
||||
vec3 diffuse = diff * frag_col;
|
||||
col = diffuse;
|
||||
}
|
||||
|
@ -1,9 +1,20 @@
|
||||
#version 330 core
|
||||
layout(location = 0) in vec3 vert_pos;
|
||||
layout(location = 1) in vec3 vert_norm;
|
||||
|
||||
uniform vec3 col;
|
||||
uniform mat4 mvp;
|
||||
uniform vec3 light_col;
|
||||
uniform mat4 model;
|
||||
uniform mat4 view;
|
||||
uniform mat4 proj;
|
||||
|
||||
out vec3 frag_pos;
|
||||
out vec3 frag_col;
|
||||
out vec3 normal;
|
||||
|
||||
void main() {
|
||||
gl_Position = mvp * vec4(vert_pos, 1);
|
||||
frag_col = col;
|
||||
gl_Position = model * view * proj * vec4(vert_pos, 1);
|
||||
frag_pos = vec3(model * vec4(vert_pos, 1.0));
|
||||
frag_col = col * light_col;
|
||||
normal = mat3(transpose(inverse(model))) * vert_norm;
|
||||
}
|
||||
|
Reference in New Issue
Block a user