Como o fragmento shader determina o número de fragmentos da saída do vertex shader?

Eu estou familiarizado com os shaders de vértice e fragmento, mas ainda estou confuso sobre como um shader de fragmento determina a quantidade de fragmentos da saída do shader de vértice.

Se eu tiver 3 vértices e desenhar um triângulo primitivo no GLSL, o shader de vértice será executado três vezes para cada vértice e o shader de fragmento será executado várias vezes (dependendo do número de fragmentos, uma vez para cada fragmento).

Eu quero saber como o fragmento shader determina os fragmentos? Ele usa gl_Position? Se eu não definir gl_Position no meu shader de vértice, o shader de fragmento ainda poderá gerar fragmentos ou não?

Gl_Position é obrigatório definir todas as vezes no vertex shader?

questionAnswers(1)

yourAnswerToTheQuestion