blob: 0554f0a95195a0c57dd4c098d9ce2e094a9a44f0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#version 330 core
layout(location=0) in vec3 aPos;
layout(location=1) in vec3 aNormal;
uniform mat4 View;
uniform mat4 Model;
uniform mat4 Projection;
out vec3 Normal;
out vec3 Position;
void main() {
// @note: This is the calculation for getting the normal vector
// one that is unaffected by non-uniform scaling that is.
// look at the lighting chapter in learnopengl.com to understand this more
Normal = mat3(transpose(inverse(Model))) * aNormal;
Position = vec3(Model * vec4(aPos, 1.0));
gl_Position = Projection * View * Model * vec4(aPos, 1.0);
};
|