Tried to switch to geometry shaders for my square & triangle faces but ran into an issue with input, the example I followed didn’t specify an array limit for gl_in[] but when I try to compile my glsl it complains it needs a limit, yet this would defy the purpose of the geometry shader (at least the way I’m trying to use it), someone mind taking a look at telling me if there’s a way to go about doing it how I’ve tried:

```
#version 430
uint vertices = 3;
uint uquarter = ~0u / 4;
double dquarter = double(uquarter);
void emit_vertex( vec4 PosPoint, uint x, uint y )
{
vec4 point = { 0.0, 0.0, 0.0, 0.0 };
point.x = float(double(x) / dquarter);
point.y = float(double(y) / dquarter);
point.w = 1.0;
point.xy += PosPoint.xy;
gl_Position = point;
EmitVertex();
}
void main()
{
for ( int i = 0; i < gl_in.length(); ++i )
{
vec4 PosPoint = gl_in[i].gl_Position;
uint v, qtr = ~0u / 4, oct = ~0u / 8;
double aim;
double cap = double(~0u);
double max = double(3);
for ( v = 0, aim = 0.0; v < 3; ++v, ++aim )
{
uint rotate = uint((aim / max) * cap);
uint linear = rotate % qtr;
uint curved = linear + (linear / 3);
/* Normal vertex */
emit_vertex( PosPoint, linear, uquarter - linear );
/* Curve vertex */
if ( linear < oct )
emit_vertex( PosPoint, curved, uquarter - linear );
else
emit_vertex( PosPoint, linear, uquarter - curved );
}
}
}
```