#version 400
#extension GL_EXT_geometry_shader4 : enable

// Information about this geometry shader.  It's called only once on each
//   input point, and creates at most one output point. 
layout (points, invocations = 1)   in;
layout (points, max_vertices = 1)  out;

// Data passed to our geometry shader
in  vec3 epiSpaceAngles[];

// Data we pass to our fragment shader
out vec3 epSpAngles;

void main( void )
{
	// Discard invalid samples (those that are on the light's far plane)
	if ( gl_PositionIn[0].w < 0 )
		return;

	// Pass this point down to the voxelizer
	epSpAngles = epiSpaceAngles[0];
	gl_Position = gl_PositionIn[0];
	EmitVertex();
}