blob: 041c3d1ad2051690848666ca1d7b61117aaaf1e1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#version 410 core
// Inputs
layout (location = 0) in vec3 inPos;
layout (location = 1) in vec3 inNormal;
layout (location = 2) in vec2 inTexCoords;
// Uniform block
layout (std140, binding = 0) uniform MatrixBlock {
mat4 model;
mat4 view;
mat4 projection;
mat4 lightSpaceMatrix;
};
// Output
out VS_OUT {
vec3 FragPos;
vec3 Normal;
vec2 TexCoords;
vec4 FragPosLightSpace;
} vs_out;
void main() {
vs_out.FragPos = vec3(model * vec4(inPos, 1.0));
vs_out.Normal = inNormal;
vs_out.TexCoords = inTexCoords;
vs_out.FragPosLightSpace = lightSpaceMatrix * vec4(vs_out.FragPos, 1.0);
gl_Position = projection * view * model * vec4(inPos, 1.0);
}
|