 in vec4 inVertex;
 in vec2 inTexCoords;
 in vec3 inNormal;
+in vec3 inVTan;
+in vec3 inUTan;
 in int inPartPosIndex;		// only used for particles.
 
 out vec2 passTexCoords;

	passTexCoords = inTexCoords;
	passNormal = inNormal;
	passShadowCoord = uLightMatrix * uModelMatrix * uObjectMatrix * inVertex;
	vec4 fragCoord = uProjectionMatrix * uViewMatrix * uModelMatrix * uObjectMatrix * inVertex;
	if (uIsParticle == 1)
	{

out vec4 passVertex;
out vec4 passShadowCoord;
out vec4 passFragCoord;
out vec3 passVTan;
out vec3 passUTan;

void main()
{
