2020-02-16 22:28:24 -08:00
|
|
|
#version 330 core
|
|
|
|
|
|
|
|
layout (location = 0) in vec3 VertPosition;
|
2020-02-17 18:10:15 -08:00
|
|
|
layout (location = 1) in vec3 VertNormal ;
|
2020-02-16 22:28:24 -08:00
|
|
|
|
2020-02-17 18:10:15 -08:00
|
|
|
out vec3 FragPosition;
|
|
|
|
out vec3 Normal ;
|
2020-02-16 22:28:24 -08:00
|
|
|
|
|
|
|
uniform mat4 ModelSpace ;
|
2020-02-17 18:10:15 -08:00
|
|
|
uniform mat4 Viewport ;
|
|
|
|
uniform mat4 Projection ;
|
|
|
|
|
2020-02-16 22:28:24 -08:00
|
|
|
uniform mat4 InverseModelSpace;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void main()
|
|
|
|
{
|
2020-02-17 18:10:15 -08:00
|
|
|
FragPosition = vec3(ModelSpace * vec4(VertPosition, 1.0));
|
2020-02-16 22:28:24 -08:00
|
|
|
|
2020-02-17 18:10:15 -08:00
|
|
|
Normal = mat3(transpose(InverseModelSpace)) * VertNormal;
|
|
|
|
// Normal = VertNormal;
|
2020-02-16 22:28:24 -08:00
|
|
|
|
2020-02-17 18:10:15 -08:00
|
|
|
gl_Position = Projection * Viewport * ModelSpace * vec4(FragPosition, 1.0);
|
2020-02-16 22:28:24 -08:00
|
|
|
}
|