Можно ли вывести новый тип примитива из геометрического шейдера, кроме того, который был введен? Я хочу ввести точку и отобразить треугольник. Точка будет использоваться как центр этого треугольника. Если нет, есть ли другой вариант для ввода просто точки и рендеринга какой-либо другой части геометрии, определенной этой точкой?
С помощью ответа здесь геометрический шейдер делает именно то, о чем я просил (если кому-то когда-либо понадобится):
#version 120
#extension GL_EXT_geometry_shader4 : enable
layout(points) in;
layout(triangle_strip) out;
void main()
{
gl_Position = gl_in[0].gl_Position;
EmitVertex();
gl_Position = gl_in[0].gl_Position+vec4(1,0,0,0);
EmitVertex();
gl_Position = gl_in[0].gl_Position+vec4(0, 1, 0, 0);
EmitVertex();
EndPrimitive();
}