#version 330 core
layout (location = 0) in vec3 aPos;
layout (location = 1) in vec3 normal;
layout (location = 2) in vec4 position;


out vec3 TexCoords;
out vec3 Normal;
out vec3 FragPos;
out vec4 smCoords;
out vec3 Position;


uniform mat4 tModel;
uniform mat4 view;
uniform mat4 projection;
uniform mat4 M_VL_PL_L;

void main()
{

	TexCoords = aPos;
    gl_Position = projection * view * tModel * vec4(aPos, 1.0);
	FragPos = vec3(tModel * vec4(aPos, 1.0));
	Normal = 
	vec3(view * tModel * vec4(normal, 0.0));
	//mat3(transpose(inverse(tModel))) * normal;
	smCoords = M_VL_PL_L * tModel * vec4(aPos, 1.0);
	//Position = vec3(tModel * position);
	//gl_Position = vec4(aPos, 1.0f);
	
}