Freigeben über


Shadercodeformat

Ein Befehl zum Erstellen eines Pixels- oder Vertex-Shaders besteht aus einer Gruppe von Shadercodes. Diese Codes weisen den Treiber an, wie der Shader erstellt wird. Das Format von Token innerhalb jedes Shadercodes bestimmt seine Eindeutigkeit. Ein Shadercodetoken ist ein DWORD mit einem bestimmten Format.

Die DirectX3D-Laufzeit überprüft Shadercode, bevor der Code an einen Treiber übergeben wird. Wenn Shadercode beim Treiber eingeht, kann der Treiber den Code interpretieren, da das Format des Codes gültig ist. Der Treiber liest die Token des Shaders vor, um den Code zu interpretieren.

Jeder einzelne Shadercode ist mit einem allgemeinen Tokenlayout formatiert. Das erste Token muss ein Versionstoken sein. Das Versionstoken liefert die Versionsnummer des Codes und entscheidet außerdem, ob der Code für einen Pixel- oder Vertex-Shader geeignet ist. Shader-Inhalte folgen dem Versionstoken und bestehen aus verschiedenen Anweisungstoken, die möglicherweise mit Kommentartoken und Leerzeichen durchmischt sind. Abhängig von dem genauen Vorgang, den ein Anweisungstoken angibt, können Bezeichnungs-, Zielparameter- und Quellparametertoken auch Teil des Shaderinhalts sein und einem Anweisungstoken folgen. Wenn das Anweisungstoken beispielsweise eine ADD-Anweisung angibt, bestimmt der Treiber, dass ein Ziel und zwei Quellparametertoken dem Anweisungstoken folgen. Ein Endtoken schließt den Shadercode ab.

Setupanweisungen (z. B. D3DSIO_DCL und D3DSIO_DEF) enthalten eindeutig formatierte Token.

Jede Shaderanweisung enthält ein bestimmtes Tokenformat. Im Abschnitt "Shader-Vorgangscodes " wird das Tokenformat jeder Shaderanweisung beschrieben.

Shaderanweisungen beginnen mit der primären Anweisung und enden mit einer D3DSIO_RET- oder D3DSIO_END-Anweisung. Unterroutinen folgen der D3DSIO_RET Anweisung.

Weitere Informationen zu Vorgängen, die in Anweisungstoken angegeben werden können, finden Sie in der neuesten DirectX SDK-Dokumentation in der Referenz zu Pixel-Shadern und Vertex-Shadern.

Anforderungen

Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme.