Wie funktionieren sie und was sind die Unterschiede zwischen ihnen? In welchem Szenario sollten Sie welches verwenden?
Flache Schattierung ist das einfachste Schattierungsmodell. Jedes gerenderte Polygon hat einen einzelnen Normalenvektor. Die Schattierung für das gesamte Polygon ist über die Oberfläche des Polygons konstant. Mit einer kleinen Polygonzahl erhalten gekrümmte Oberflächen ein facettiertes Aussehen.
Die Phong-Schattierung ist die ausgefeilteste der drei von Ihnen aufgelisteten Methoden. Jedes gerenderte Polygon hat einen Normalenvektor pro Scheitelpunkt. Die Schattierung erfolgt durch Interpolation der Vektoren über die Oberfläche und Berechnung der Farbe für jeden interessierenden Punkt. Das Interpolieren der Normalenvektoren ergibt eine vernünftige Annäherung an eine glatt gekrümmte Oberfläche unter Verwendung einer begrenzten Anzahl von Polygonen.
Die Gourard-Schattierung liegt zwischen den beiden: Wie die Phong-Schattierung hat jedes Polygon einen Normalenvektor pro Scheitelpunkt, aber anstatt die Vektoren zu interpolieren, wird die Farbe jedes Scheitelpunkts berechnet und dann über die Oberfläche des Polygons interpoliert.
Bei moderner Hardware sollten Sie entweder eine flache Schattierung (wenn Geschwindigkeit alles ist) oder eine Phong-Schattierung (wenn Qualität wichtig ist) verwenden. Oder Sie können einen Shader für programmierbare Pipelines verwenden und die ganze Frage vermeiden.