Diskussion:Shading

aus Wikipedia, der freien Enzyklopädie

"Bei den vorgestellten Verfahren haben jeweils alle Lichtquellen Einfluss auf das gesamte Polygon. Das Beleuchten eines Polygonteils, etwa mit einem Spotlight, ist nicht möglich."

Das stimmt nicht ganz. Wie schon der vorherige Absatz sagt:

"Phong Shading interpoliert für jeden Pixel aus den Normalen der Vertizes eine interpolierte Normale des Pixels und wendet das Beleuchtungsmodell für jeden Pixel mit einer neuen Normale an."

Beim Anwenden des Beleuchtungsmodelles kann also sehr wohl z.B. der Winkel zwischen Position und Lichtquelle berechnet und so geprüft werden ob der Pixel im Kegel des Spotlights liegt. Bei den beiden anderen Schattierungsverfahren ist dies wegen der Interpolation der Schattierungswerte (Gouraud shading) bzw. einem einzelnen Schattierungswert (Flat shading) nicht möglich.

Es sollte also vielleicht eher heißen:

"Bei den vorgestellten Verfahren haben jeweils alle Lichtquellen Einfluss auf das gesamte Polygon. Das Beleuchten eines Polygonteils, etwa mit einem Spotlight, ist aufgrund der Per-Pixel-Berechnung der Schattierungswerte nur beim Phong Shading möglich." -- 91.3.175.45 15:17, 13. Aug. 2007 (CEST)


Es heißt hier "Flat Shading führt keine Interpolation durch, sondern greift auf die Farbe des ersten Vertex des gerade zu zeichnenden Polygons zurück. Diese Farbe wird für alle Punkte des Polygons verwendet.", d.h. die Farbe hängt nur von der Normalen des ersten Vertex ab. Insbesondere ist sie damit von der Reihenfolge der Vertices abhängig und damit wäre es möglich, dass benachbarte Faces mit völlig anderer Ausrichtung die gleiche Farbe haben, weil die Normalen ihrer jeweils ersten Vertices identisch sind. Ich glaube daher, dieses Statement ist falsch.

Im Artikel zu Flat Shading steht auch: "Mit dieser Methode erhält jedes Pixel eines Polygons anhand der Flächennormale die gleiche Farbe und den gleichen Lichtwert.", d.h. hier geht es um die Flächennormale (gemittelte Normale aller Vertices?); solche Fälle wie oben können damit nicht mehr auftreten, IMO.

Sehe ich das richtig?

--G-hennux 13:56, 28. Aug. 2009 (CEST)