D3DXCompileShaderFromResource 関数
シェーダー ファイルをコンパイルします。
Note
このレガシ関数を使用する代わりに、Fxc.exe コマンド ライン コンパイラを使用してオフラインでコンパイルするか 、D3DCompile API を使用することをお勧めします。
構文
HRESULT D3DXCompileShaderFromResource(
_In_ HMODULE hSrcModule,
_In_ LPCSTR pSrcResource,
_In_ const D3DXMACRO *pDefines,
_In_ LPD3DXINCLUDE pInclude,
_In_ LPCSTR pFunctionName,
_In_ LPCSTR pProfile,
_In_ DWORD Flags,
_Out_ LPD3DXBUFFER *ppShader,
_Out_ LPD3DXBUFFER *ppErrorMsgs,
_Out_ LPD3DXCONSTANTTABLE *ppConstantTable
);
パラメーター
-
hSrcModule [in]
-
種類: HMODULE
効果の説明を含むモジュールを処理します。 このパラメーターが NULL の場合は、現在のモジュールが使用されます。
-
pSrcResource [in]
-
種類: LPCSTR
リソース名を指定する文字列へのポインター。
-
pDefines [in]
-
型: const D3DXMACRO*
D3DXMACRO 構造体の NULL で終わる省略可能な配列。 この値は NULL である可能性があります。
-
pInclude [in]
-
種類: LPD3DXINCLUDE
#include ディレクティブの処理に使用するオプションのインターフェイス ポインター ID3DXInclude。 この値が NULL の場合、#includesはファイルからコンパイルするときに優先されるか、リソースまたはメモリからコンパイルされるときにエラーになります。
-
pFunctionName [in]
-
種類: LPCSTR
実行が開始されるシェーダー エントリ ポイント関数へのポインター。
-
pProfile [in]
-
種類: LPCSTR
シェーダー命令セットを決定するシェーダー プロファイルへのポインター。 使用可能なプロファイルの一覧については、「 D3DXGetVertexShaderProfile 」または「 D3DXGetPixelShaderProfile 」を参照してください。
-
Flags [in]
-
種類: DWORD
さまざまなフラグで識別されるコンパイル オプション。 Direct3D 10 HLSL コンパイラが既定になりました。 詳細については、「 D3DXSHADER フラグ 」を参照してください。
-
ppShader [out]
-
種類: LPD3DXBUFFER*
作成されたシェーダーを含むバッファーを返します。 このバッファーには、コンパイルされたシェーダー コードと、埋め込まれたデバッグとシンボル テーブルの情報が含まれます。
-
ppErrorMsgs [out]
-
種類: LPD3DXBUFFER*
コンパイル中に発生したエラーと警告の一覧を含むバッファーを返します。 これらは、デバッグ モードで実行中にデバッガーに表示されるメッセージと同じです。 この値は NULL である可能性があります。
-
ppConstantTable [out]
-
種類: LPD3DXCONSTANTTABLE*
シェーダー定数へのアクセスに使用できる ID3DXConstantTable インターフェイスを返します。 この値は NULL にすることができます。 アプリケーションを大きなアドレスに対応するようにコンパイルする場合 (つまり、/LARGEADDRESSAWARE リンカー オプションを使用して 2 GB を超えるアドレスを処理する場合)、このパラメーターを使用できず、 NULL に設定する必要があります。 代わりに、 D3DXGetShaderConstantTableEx 関数を使用して、シェーダー内に埋め込まれているシェーダー定数テーブルを取得する必要があります。 この D3DXGetShaderConstantTableEx 呼び出しでは、 D3DXCONSTTABLE_LARGEADDRESSAWARE フラグを Flags パラメーターに渡して、最大 4 GB の仮想アドレス空間にアクセスするように指定する必要があります。
戻り値
種類: HRESULT
関数が成功した場合、戻り値はD3D_OK。 関数が失敗した場合、戻り値は次のいずれかになります:D3DERR_INVALIDCALL、D3DXERR_INVALIDDATA、E_OUTOFMEMORY。
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|
関連項目