D3DXAssembleShaderFromFile 関数

シェーダーをアセンブルします。

構文

HRESULT D3DXAssembleShaderFromFile(
  _In_        LPCTSTR       pSrcFile,
  _In_  const D3DXMACRO     *pDefines,
  _In_        LPD3DXINCLUDE pInclude,
  _In_        DWORD         Flags,
  _Out_       LPD3DXBUFFER  *ppShader,
  _Out_       LPD3DXBUFFER  *ppErrorMsgs
);

パラメーター

pSrcFile [in]

型: LPCTSTR

ファイル名を指定する文字列へのポインター。 コンパイラ設定で Unicode が必要な場合、データ型 LPCTSTR は LPCWSTR に解決されます。 それ以外の場合、文字列データ型は LPCSTR に解決されます。 「解説」を参照してください。

pDefines [in]

型: const D3DXMACRO*

D3DXMACRO 構造体の NULL で終わる省略可能な配列。 この値は NULL である可能性があります。

pInclude [in]

種類: LPD3DXINCLUDE

#include ディレクティブの処理に使用するオプションのインターフェイス ポインター ID3DXInclude。 この値が NULL の場合、#includesはファイルからコンパイルするときに優先されるか、リソースまたはメモリからコンパイルされるときにエラーが発生します。

Flags [in]

種類: DWORD

さまざまなフラグで識別されるコンパイル オプション。 Direct3D 10 HLSL コンパイラが既定になりました。 詳細については、「 D3DXSHADER フラグ 」を参照してください。

ppShader [out]

種類: LPD3DXBUFFER*

作成されたシェーダーを含むバッファーを返します。 このバッファーには、コンパイルされたシェーダー コードと、埋め込まれたデバッグとシンボル テーブルの情報が含まれます。

ppErrorMsgs [out]

種類: LPD3DXBUFFER*

コンパイル中に発生したエラーと警告の一覧を含むバッファーを返します。 これらは、デバッグ モードで実行中にデバッガーに表示されるメッセージと同じです。 この値は NULL である可能性があります。

戻り値

種類: HRESULT

関数が成功した場合、戻り値はD3D_OK。 関数が失敗した場合、戻り値は次のいずれかになります:D3DERR_INVALIDCALL、D3DXERR_INVALIDDATA、E_OUTOFMEMORY。

解説

コンパイラ設定によって、関数のバージョンも決定されます。 Unicode が定義されている場合、関数呼び出しは D3DXAssembleShaderFromFileW に解決されます。 それ以外の場合、ANSI 文字列が使用されているため、関数呼び出しは D3DXAssembleShaderFromFileA に解決されます。

要件

要件
ヘッダー
D3DX9Shader.h
ライブラリ
D3dx9.lib

こちらもご覧ください

シェーダー関数

D3DXCompileShader

D3DXCompileShaderFromResource