Wie bestimmt der Fragment-Shader die Anzahl der Fragmente aus der Vertex-Shader-Ausgabe?

Ich bin mit Vertex- und Fragment-Shadern vertraut, bin aber immer noch verwirrt darüber, wie ein Fragment-Shader die Anzahl der Fragmente aus der Ausgabe des Vertex-Shaders bestimmt.

Wenn ich 3 Eckpunkte habe und ein Dreieck-Grundelement in GLSL zeichne, wird der Scheitelpunkt-Shader für jeden Scheitelpunkt dreimal und der Fragment-Shader mehrmals ausgeführt (abhängig von der Anzahl der Fragmente, einmal für jedes Fragment).

Ich möchte wissen, wie der Fragment-Shader die Fragmente bestimmt. Verwendet es gl_Position? Wenn ich in meinem Vertex-Shader nicht gl_Position setze, kann der Fragment-Shader dann immer noch Fragmente generieren oder nicht?

Ist gl_Position obligatorisch, um jedes Mal im Vertex-Shader gesetzt zu werden?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage