Das tecChannel 3D-Lexikon: G bis R
Phong-Shading
Das Phong-Shading ist das rechenintensivste Verfahren zur Schattierung von Polygonen und ist deshalb heute kaum in einer Echtzeitanwendung zu finden. Die Grundidee des Verfahrens ist folgende:
berechne an jedem Eckpunkt den Normalenvektor des Vertex
interpoliere die Normalenvektoren über die Kanten zwischen den Eckpunkten
interpoliere die Normalenvektoren über die Scanlines zwischen den Kanten
berechne die genaue Farbe eines jeden Pixel mit Hilfe des Skalarproduktes zwischen dem interpolierten Normalenvektor und dem Vektor des Lichts
Das ist ähnlich wie beim Gouraud-Shading, bei dem die Farben und Intensitäten linear interpoliert werden. Phong-Shading ist ein Per-Pixel-Verfahren. Das heißt, der Prozessor berechnet die Beleuchtung für jeden Pixel einzeln, was den immensen Rechenaufwand verdeutlicht. Dafür kommt das Phong-Shading am besten mit Reflektionen und Glanzlichtern zurecht, was beim Verfahren von Gouraud nur unzureichend möglich ist. Auch das vom Flat-Shading bekannte Mach Banding, das beim Gouraud-Shading bereits gemindert ist, wird noch weiter verringert.
Phong-Shading darf nicht mit dem Phong-Lighting verwechselt werden. Manche Marketingabteilungen brüsten sich gerne damit, dass ihre Applikationen das Phong-Shading-Beleuchtungsmodell verwenden. Sie benutzen aber nur das Phong-Lighting-Verfahren, das an jedem Eckpunkt den entsprechenden Lichtwert berechnet. Die tatsächliche Schattierung findet dann nur mit normalem Gouraud-Shading statt.