uniform mat4 mat_camera, mat_project, mat_object2world, mat_world2uv;

attribute vec3 va_position, va_normal;

varying vec3 normalWS;
varying vec3 norm;

void main(void) {
	
	norm = (mat_camera * normalize(vec4(va_normal,0))).xyz;
	
	normalWS = (mat_object2world * vec4(va_normal, 0.0)).xyz; // TODO: NormalMatrix
	gl_Position = mat_project * (mat_camera * (mat_object2world * vec4(va_position, 1.0)));
	gl_FrontColor = gl_Color;	
}