#version 330 in vec3 pos; in vec3 unscaledNormal; in vec2 vTexCoord; uniform mat4 model; uniform mat4 view; uniform mat4 projection; out vec3 normal; out vec2 texCoords; out vec3 lightPos, viewPos, worldPos; void main() { texCoords = vTexCoord; worldPos = vec3(model * vec4(pos, 1.f)); normal = mat3(transpose(inverse(model))) * unscaledNormal; gl_Position = projection * view * model * vec4(pos, 1.f); }