Frage

Das ist über DirectX 9.

Im typischen Fall mit Vertex-Shader-Rendering, gibt es ein oder mehr Strom in der Vorrichtung festgelegt Quellen, und das Format der Quellendatum definiert Vertex Erklärung verwendet wird.

Nun, wenn ein Vertex-Shader müssen einige Attribute verwendet wird (zum Beispiel ein mit D3DDECLUSAGE_NORMAL und UsageIndex 1 oder 2), aber Vertex Erklärung, hat zur Verfügung gestellt hat nicht das Attribut enthielt (dh. In Strom Quellen zur Verfügung gestellte Daten nicht umfasst das Attribut) und DrawPrimitive genannt wird, in dem DirectX-Wert für das Attribut bekommt?

War es hilfreich?

Lösung

„Wenn die Daten in dem Scheitelpunkt Strom weniger Komponenten als der entsprechende Shader-Datentyp enthalten, werden die fehlenden Komponenten auf 0 initialisiert werden (mit Ausnahme von W, das auf 1 initialisiert wird).“

Genommen von "Windows DirectX Graphics Dokumentation (August 2009)"

Inhalt> HLSL> Programming Guide> Schreiben HLSL Shaders in Direct3D 9> Wechselnde Shader-Eingänge und Semantics

Andere Tipps

Die DirectX-9-Spezifikation "default" Werte für nicht deklarierte Attribute definiert, in der Regel (0,0,0,1). Entweder ist der Gerätetreiber oder GPU schafft sie.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top