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.
Verarbeitet nicht kompilierten HLSL-Code.
Syntax
HRESULT D3DPreprocess(
[in] LPCVOID pSrcData,
[in] SIZE_T SrcDataSize,
[in, optional] LPCSTR pSourceName,
[in, optional] const D3D_SHADER_MACRO *pDefines,
[in, optional] ID3DInclude *pInclude,
[out] ID3DBlob **ppCodeText,
[out, optional] ID3DBlob **ppErrorMsgs
);
Parameter
[in] pSrcData
Typ: LPCVOID-
Ein Zeiger auf nicht kompilierte Shaderdaten; ENTWEDER ASCII-HLSL-Code oder kompilierter Effekt.
[in] SrcDataSize
Typ: SIZE_T
Länge der pSrcData.
[in, optional] pSourceName
Typ: LPCSTR-
Der Name der Datei, die den nicht kompilierten HLSL-Code enthält.
[in, optional] pDefines
Typ: const D3D_SHADER_MACRO*
Ein Array von NULL-beendeten Makrodefinitionen (siehe D3D_SHADER_MACRO).
[in, optional] pInclude
Typ: ID3DInclude*
Ein Zeiger auf eine ID3DInclude- zum Behandeln von Dateien. Wenn Sie diesen Wert auf NULL- festlegen, tritt ein Kompilierungsfehler auf, wenn ein Shader eine #include enthält. Sie können das D3D_COMPILE_STANDARD_FILE_INCLUDE Makro übergeben, bei dem es sich um einen Zeiger auf einen Standardmäßigen include-Handler handelt. Dieser Standardhandler enthält Dateien, die relativ zum aktuellen Verzeichnis und dateien relativ zum Verzeichnis der ursprünglichen Quelldatei sind. Wenn Sie D3D_COMPILE_STANDARD_FILE_INCLUDEverwenden, müssen Sie den Namen der Quelldatei im pSourceName Parameter angeben; der Compiler leitet das ursprüngliche relative Verzeichnis von pSourceNameab.
#define D3D_COMPILE_STANDARD_FILE_INCLUDE ((ID3DInclude*)(UINT_PTR)1)
[out] ppCodeText
Typ: ID3DBlob**
Ein Zeiger auf eine Variable, die einen Zeiger auf die ID3DBlob Schnittstelle empfängt, die Sie für den Zugriff auf den vorverarbeiteten Code verwenden können.
[out, optional] ppErrorMsgs
Typ: ID3DBlob**
Ein Zeiger auf eine ID3DBlob-, die Compilerfehlermeldungen enthält, oder NULL-, wenn keine Fehler aufgetreten sind.
Rückgabewert
Typ: HRESULT-
Gibt einen der Direct3D 11-Rückgabecodeszurück.
Bemerkungen
D3DPreprocess#line Direktiven aus und behält die Zeilennummerierung der Quelleingabe bei, sodass die Zeilennummerierung ordnungsgemäß mit der Eingabequelle verknüpft werden kann.
Anforderungen
| Anforderung | Wert |
|---|---|
| Zielplattform- | Fenster |
| Header- | d3dcompiler.h |
| Library | D3dcompiler_47.lib |
| DLL- | D3dcompiler_47.dll |