Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
HLSL-Kompilierungsoptionen.
| #define | Beschreibung |
|---|---|
| D3D10_SHADER_AVOID_FLOW_CONTROL | Den Compiler anweisen, die Ablaufsteuerung (sofern möglich) nicht zuzulassen. |
| D3D10_SHADER_DEBUG | Fügen Sie Debugdatei/Zeile/Typ/Symbolinformationen ein. |
| D3D10_SHADER_ENABLE_STRICTNESS | Standardmäßig deaktiviert der HLSL-Compiler die Strenge bei veralteter Syntax. Wenn Sie dieses Kennzeichen angeben, wird die Strenge aktiviert, die möglicherweise keine Legacysyntax zulassen. |
| D3D10_SHADER_ENABLE_BACKWARDS_COMPATIBILITY | Dadurch können ältere Shader zu 4_0-Zielen kompiliert werden. |
| D3D10_SHADER_FORCE_VS_SOFTWARE_NO_OPT | Kompilieren Sie einen Vertex-Shader für das nächste höchste Shaderprofil. Mit dieser Option wird das Debuggen aktiviert (und Optimierungen deaktiviert). |
| D3D10_SHADER_FORCE_PS_SOFTWARE_NO_OPT | Kompilieren sie einen Pixelshader für das nächste höchste Shaderprofil. Mit dieser Option wird das Debuggen aktiviert (und Optimierungen deaktiviert). |
| D3D10_SHADER_IEEE_STRICTNESS | Aktiviert IEEE-Strenge. |
| D3D10_SHADER_NO_PRESHADER | Deaktiviert Preshaders. Die Verwendung dieses Flags führt dazu, dass der Compiler keinen statischen Ausdruck für die Auswertung herauszieht. |
| D3D10_SHADER_OPTIMIZATION_LEVEL0 | Niedrigste Optimierungsstufe. Kann langsameren Code erzeugen, dies wird jedoch schneller erfolgen. Dies kann bei einem stark iterativen Shaderentwicklungszyklus hilfreich sein. |
| D3D10_SHADER_OPTIMIZATION_LEVEL1 | Zweitniedrigste Optimierungsstufe. |
| D3D10_SHADER_OPTIMIZATION_LEVEL2 | Zweithöchste Optimierungsstufe. |
| D3D10_SHADER_OPTIMIZATION_LEVEL3 | Höchste Optimierungsstufe. Wird bestmöglichen Code erzeugen, kann jedoch erheblich länger dauern. Dies ist nützlich für endgültige Builds einer Anwendung, bei der die Leistung der wichtigste Faktor ist. |
| D3D10_SHADER_PACK_MATRIX_ROW_MAJOR | Sofern nicht explizit angegeben, werden Matrizen in Zeilen-Hauptreihenfolgen auf Eingabe und Ausgabe des Shaders gepackt. |
| D3D10_SHADER_PACK_MATRIX_COLUMN_MAJOR | Sofern nicht explizit angegeben, werden Matrizen in Spalten-Hauptreihenfolge für Eingaben und Ausgaben des Shaders verpackt. Dies ist im Allgemeinen effizienter, da die Vektormatrix-Multiplikation mithilfe einer Reihe von Punktprodukten durchgeführt werden kann. |
| D3D10_SHADER_PARTIAL_PRECISION | Erzwingen Sie, dass alle Berechnungen mit teilweiser Genauigkeit durchgeführt werden; Dies kann bei einigen Hardwaren schneller ausgeführt werden. |
| D3D10_SHADER_PREFER_FLOW_CONTROL | Erweisen Sie den Compiler, die Flusssteuerung (sofern möglich) zu verwenden. |
| D3D10_SHADER_SKIP_OPTIMIZATION | Optimierung während der Codegenerierung überspringen; wird im Allgemeinen nur für das Debuggen empfohlen. |
| D3D10_SHADER_SKIP_VALIDATION | Überprüfen Sie den generierten Code nicht anhand bekannter Funktionen und Einschränkungen. Verwenden Sie dies nur mit Shadern, die in der Vergangenheit erfolgreich kompiliert wurden. Shader werden immer von DirectX überprüft, bevor sie auf das Gerät festgelegt werden. |
| D3D10_SHADER_WARNINGS_ARE_ERRORS | Informieren Sie den HLSL-Compiler, alle Warnungen beim Kompilieren des Shadercodes als Fehler zu behandeln. Für neuen Shadercode sollten Sie diese Option verwenden, damit Sie alle Warnungen beheben und möglichst wenige schwer zu findende Codefehler sicherstellen können. |
Diese Konstanten werden in d3d10shader.h als Makros definiert.
Verwandte Themen