24 lines
591 B
GLSL
24 lines
591 B
GLSL
#version 400 core
|
|
|
|
in vec3 position;
|
|
in vec2 textureCoords;
|
|
in vec3 normal;
|
|
|
|
out vec2 pass_textureCoords;
|
|
out vec3 surfaceNormal;
|
|
out vec3 toLightVector;
|
|
|
|
uniform mat4 transformationMatrix;
|
|
uniform mat4 projectionMatrix;
|
|
uniform mat4 viewMatrix;
|
|
uniform vec3 lightPosition;
|
|
|
|
void main() {
|
|
vec4 worldPosition = transformationMatrix * vec4(position, 1.0f);
|
|
gl_Position = projectionMatrix * viewMatrix * worldPosition;
|
|
pass_textureCoords = textureCoords;
|
|
|
|
surfaceNormal = (transformationMatrix * vec4(normal, 0.0f)).xyz;
|
|
toLightVector = lightPosition - worldPosition.xyz;
|
|
}
|