#version 450

in mat4 mvp[];
in vec4 normal[];
layout(triangles, invocations=1) in;
in vec4 tes_colorout[]; 
layout(line_strip, max_vertices=6) out;
out vec4 gs_colorout;

void main(void) {

	gl_Position = mvp[0] * (10 * normal[0] + gl_in[0].gl_Position);
 	gs_colorout = tes_colorout[0];
	EmitVertex();
	gl_Position = mvp[1] * (10 * normal[0] + gl_in[1].gl_Position);
 	gs_colorout = tes_colorout[1];
	EmitVertex();
	gl_Position = mvp[2] * (10 * normal[0] + gl_in[2].gl_Position);
 	gs_colorout = tes_colorout[2];
	EmitVertex();
	gl_Position = mvp[0] * (10 * normal[0] + gl_in[0].gl_Position);
 	gs_colorout = tes_colorout[0];
	EmitVertex();
	EndPrimitive();
}
