xkslang/Test/spv.150.geom

40 строки
780 B
GLSL

#version 150 core
layout(triangles_adjacency) in;
layout(max_vertices = 30) out;
layout(stream = 3, triangle_strip) out;
in fromVertex {
in vec3 color;
} fromV[];
out toFragment {
out vec3 color;
} toF;
out fromVertex {
vec3 color;
};
void main()
{
color = fromV[0].color;
//?? gl_ClipDistance[3] = gl_in[1].gl_ClipDistance[2];
gl_Position = gl_in[0].gl_Position;
gl_PointSize = gl_in[3].gl_PointSize;
gl_PrimitiveID = gl_PrimitiveIDIn;
gl_Layer = 2;
EmitVertex();
color = 2 * fromV[0].color;
gl_Position = 2.0 * gl_in[0].gl_Position;
gl_PointSize = 2.0 * gl_in[3].gl_PointSize;
gl_PrimitiveID = gl_PrimitiveIDIn + 1;
gl_Layer = 3;
EmitVertex();
EndPrimitive();
}