Freigeben über


Dreiecksinterpolation (Direct3D 9)

Während des Renderings interpoliert die Pipeline Vertexdaten über jedes Dreieck. Vertexdaten können eine vielzahl von Daten sein und können (ist jedoch nicht beschränkt auf): diffuse Farbe, spekuläre Farbe, diffuses Alpha (Dreiecksopacity), spekuläres Alpha und ein Nebelfaktor (aus specular alpha für fixed function vertex pipeline und aus dem Nebelregister für programmierbare Vertexpipeline). Die Scheitelpunktdaten werden durch die Vertexdeklaration (Direct3D 9) definiert.

Bei einigen Vertexdaten ist die Interpolation vom aktuellen Schattierungsmodus abhängig, wie in der folgenden Tabelle dargestellt.

Schattierungsmodus BESCHREIBUNG
Flach Nur der Nebelfaktor wird im Flachschattenmodus interpoliert. Für alle anderen interpolierten Werte wird die Farbe des ersten Scheitelpunkts im Dreieck auf das gesamte Gesicht angewendet.
Gouraud Zwischen allen drei Scheitelpunkten wird eine lineare Interpolation durchgeführt.

 

Die diffuse Farbe und die spiegelförmige Farbe werden je nach Farbmodell unterschiedlich behandelt. Im RGB-Farbmodell verwendet das System die Rot-, Grün- und Blaufarbkomponenten in der Interpolation.

Die Alphakomponente einer Farbe wird als separater interpolierter Wert behandelt, da Gerätetreiber Transparenz auf zwei verschiedene Arten implementieren können: durch Texturmischung oder durch Stippling.

Verwenden Sie das ShadeCaps-Element der D3DCAPS9-Struktur , um zu bestimmen, welche Interpolationsformen der aktuelle Gerätetreiber unterstützt.

Koordinatensysteme und Geometrie