Files
loop/shader/shadow/combine.geom
T

31 lines
742 B
GLSL

#version 450 core
layout (points) in;
layout (triangle_strip, max_vertices = 4) out;
layout (invocations = 20) in;
layout (std140, binding = 1) uniform LightsBlock
{
vec4 posBool[20];
vec4 colRad[20];
} ;
out vec3 gTexPos;
float theBool = posBool[gl_InvocationID].w;
float l = gl_InvocationID;
void main()
{
if (theBool == 1){
gTexPos = vec3(0,1,l);
gl_Position = vec4(-1,1,0,1) ;
EmitVertex();
gTexPos = vec3(0,0,l);
gl_Position = vec4(-1,-1,0,1) ;
EmitVertex();
gTexPos = vec3(1,1,l);
gl_Position = vec4(1,1,0,1) ;
EmitVertex();
gTexPos = vec3(1,0,l);
gl_Position = vec4(1,-1,0,1) ;
EmitVertex();
EndPrimitive();
}else {}
}