20 lines
455 B
GLSL
20 lines
455 B
GLSL
#version 330 core
|
|
|
|
layout(location = 0) in vec3 aPos;
|
|
layout(location = 1) in vec3 aN;
|
|
|
|
uniform mat4 model;
|
|
uniform mat4 view;
|
|
uniform mat4 projection;
|
|
|
|
out vec3 vWorldPos;
|
|
out vec3 vWorldNormal;
|
|
|
|
void main() {
|
|
vec4 worldPos = model * vec4(aPos, 1.0);
|
|
mat3 normalMat = transpose(inverse(mat3(model)));
|
|
vWorldPos = worldPos.xyz;
|
|
vWorldNormal = normalize(normalMat * aN);
|
|
gl_Position = projection * view * worldPos;
|
|
}
|