D3DXPreprocessShader 関数
コンパイルを実行せずにシェーダーを前処理します。 これにより、すべての#definesと#includesが解決され、後続のコンパイル用に自己完結型シェーダーが提供されます。
Note
このレガシ関数を使用する代わりに、 D3DPreprocess API を使用することをお勧めします。
構文
HRESULT D3DXPreprocessShader(
_In_ LPCSTR pSrcData,
_In_ UINT SrcDataSize,
_In_ const D3DXMACRO *pDefines,
_In_ LPD3DXINCLUDE pInclude,
_Out_ LPD3DXBUFFER *ppShaderText,
_Out_ LPD3DXBUFFER *ppErrorMsgs
);
パラメーター
-
pSrcData [in]
-
種類: LPCSTR
シェーダーを含む文字列へのポインター。
-
SrcDataSize [in]
-
型: UINT
データの長さ (バイト単位)。
-
pDefines [in]
-
型: const D3DXMACRO*
D3DXMACRO 構造体の NULL で終わる省略可能な配列。 この値は NULL である可能性があります。
-
pInclude [in]
-
種類: LPD3DXINCLUDE
#include ディレクティブの処理に使用するオプションのインターフェイス ポインター ID3DXInclude。 この値が NULL の場合、#includesはファイルからコンパイルするときに優先されるか、リソースまたはメモリからコンパイルされるときにエラーが発生します。
-
ppShaderText [out]
-
種類: LPD3DXBUFFER*
結果の書式設定されたトークン ストリームを表す 1 つの大きな文字列を含むバッファーを返します。
-
ppErrorMsgs [out]
-
種類: LPD3DXBUFFER*
コンパイル中に発生したエラーと警告の一覧を含むバッファーを返します。 これらは、デバッグ モードで実行中にデバッガーに表示されるメッセージと同じです。 この値は NULL である可能性があります。
戻り値
種類: HRESULT
関数が成功した場合、戻り値はD3D_OK。 関数が失敗した場合、戻り値は次のいずれかになります:D3DERR_INVALIDCALL、D3DXERR_INVALIDDATA、E_OUTOFMEMORY。
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|
関連項目