Saxum/Shader/phong.vsh

30 lines
834 B
V Shell
Raw Normal View History

2014-10-20 15:31:26 +00:00
#version 150
uniform mat4 modelMatrix;
uniform mat4 modelViewProjectionMatrix;
2014-12-04 16:19:58 +00:00
uniform mat4 shadowMVP_near;
uniform mat4 shadowMVP_middle;
uniform mat4 shadowMVP_far;
2014-10-20 15:31:26 +00:00
in vec3 aPosition;
in vec3 aNormal;
2014-10-20 15:31:26 +00:00
in vec2 aTexCoord;
out vec3 vNormal;
out vec2 vTexCoord;
out vec4 fragPosition;
2014-12-04 16:19:58 +00:00
out vec4 shadowCoord_near;
out vec4 shadowCoord_middle;
out vec4 shadowCoord_far;
2014-10-20 15:31:26 +00:00
void main()
{
fragPosition = modelMatrix * vec4(aPosition, 1.0);
vNormal = inverse(transpose(mat3(modelMatrix))) * aNormal;
2014-10-20 15:31:26 +00:00
vTexCoord = aTexCoord;
2014-12-04 16:19:58 +00:00
shadowCoord_near = shadowMVP_near * modelMatrix * vec4(aPosition, 1.0);
shadowCoord_middle = shadowMVP_middle * modelMatrix * vec4(aPosition, 1.0);
shadowCoord_far = shadowMVP_far * modelMatrix * vec4(aPosition, 1.0);
gl_Position = modelViewProjectionMatrix * vec4(aPosition, 1.0);
2014-10-20 15:31:26 +00:00
}