D3DX10CompileFromFile 関数

Note

このレガシ関数を使用する代わりに、Fxc.exe コマンド ライン コンパイラを使用してオフラインでコンパイルするか 、D3DCompile API を 使用することをお勧めします。

 

ファイルからシェーダーまたはエフェクトをコンパイルします。

構文

HRESULT D3DX10CompileFromFile(
  _In_        LPCTSTR            pSrcFile,
  _In_  const D3D_SHADER_MACRO *pDefines,
  _In_        LPD3D10INCLUDE     pInclude,
  _In_        LPCSTR             pFunctionName,
  _In_        LPCSTR             pProfile,
  _In_        UINT               Flags1,
  _In_        UINT               Flags2,
  _In_        ID3DX10ThreadPump  *pPump,
  _Out_       ID3D10Blob         **ppShader,
  _Out_       ID3D10Blob         **ppErrorMsgs,
  _Out_       HRESULT            *pHResult
);

パラメーター

pSrcFile [in]

型: LPCTSTR

シェーダー コードを含むファイルの名前。 コンパイラ設定で Unicode が必要な場合、データ型 LPCTSTR は LPCWSTR に解決されます。 それ以外の場合、データ型は LPCSTR に解決されます。

pDefines [in]

型: const D3D_SHADER_MACRO*

省略可能。 マクロ定義の配列へのポインター ( D3D_SHADER_MACRO参照)。 配列内の最後の構造体はターミネータとして機能し、すべてのメンバーを 0 に設定する必要があります。 使用しない場合は、 pDefinesNULL に設定します。

pInclude [in]

型: LPD3D10INCLUDE

省略可能。 インクルード ファイルを処理するための ID3D10Include インターフェイス へのポインター。 これを NULL に設定すると、シェーダーに#includeが含まれている場合、コンパイル エラーが発生します。

pFunctionName [in]

型: LPCSTR

シェーダーの実行が開始されるシェーダー エントリ ポイント関数の名前。 効果をコンパイルすると、D3DX10CompileFromFilepFunctionName を無視します。呼び出された関数で使用されない場合は、ポインター パラメーターを NULL に設定することをお勧めします。pFunctionNameNULL に設定することをお勧めします。

pProfile [in]

型: LPCSTR

シェーダー モデルを指定する文字列。には、シェーダー モデル 2、シェーダー モデル 3、またはシェーダー モデル 4 の任意のプロファイルを指定できます。

Flags1 [in]

型: UINT

シェーダー コンパイル フラグ

Flags2 [in]

型: UINT

効果コンパイル フラグ。 効果ファイルではなくシェーダーをコンパイルすると、 D3DX10CompileFromFileFlags2 を無視します。 フラグ 2 を 0 に設定することをお勧めします。呼び出された関数で使用されない場合は、非ポイント パラメーターを 0 に設定することをお勧めします。

pPump [in]

型: ID3DX10ThreadPump*

スレッド ポンプ インターフェイスへのポインター ( ID3DX10ThreadPump インターフェイスを参照)。 この関数が完了するまで戻らないよう指定するには 、NULL を 使用します。

ppShader [out]

型: ID3D10Blob**

コンパイル済みシェーダーを含む ID3D10Blob インターフェイス へのポインター、および埋め込みデバッグとシンボル テーブルの情報。

ppErrorMsgs [out]

型: ID3D10Blob**

コンパイル中に発生したエラーと警告の一覧を含む ID3D10Blob インターフェイス へのポインター。 これらのエラーと警告は、デバッガーからのデバッグ出力と同じです。

pHResult [out]

型: HRESULT*

戻り値へのポインター。 NULL を指定できます。 pPumpNULL でない場合、pHResult は、非同期実行が完了するまで有効なメモリの場所である必要があります。

戻り値

型: HRESULT

戻り値は、 Direct3D 10 リターン コードに記載されている値のいずれかです。

解説

必要条件

要件
ヘッダー
D3DX10Async.h

こちらもご覧ください

General Purpose関数