D3DX10CreateEffectPoolFromFile
エフェクト ファイルからエフェクト プールを作成します。
HRESULT
D3DX10CreateEffectPoolFromFile(
LPCTSTR pFileName,
CONST D3D10_SHADER_MACRO *pDefines,
ID3D10Include *pInclude,
LPCSTR pProfile,
UINT HLSLFlags,
UINT FXFlags,
ID3D10Device *pDevice,
ID3DX10ThreadPump *pPump,
ID3D10EffectPool **ppEffectPool,
ID3D10Blob **ppErrors,
HRESULT *pHResult
);
パラメータ
- pFileName
エフェクト ファイル名です。コンパイラーの設定で Unicode が必要な場合、データ型 LPCTSTR は LPCWSTR に解決されます。それ以外の場合、データ型は LPCSTR に解決されます。 - pDefines
シェーダー マクロの NULL 終端配列です (「D3D10_SHADER_MACRO」を参照してください)。マクロを指定しない場合は、これを NULL にします。 - pInclude
include インターフェイスへのポインターです (「ID3D10Include インターフェイス」を参照してください)。このパラメーターは NULL でもかまいません。 - pProfile
シェーダー プロファイルまたはシェーダー モデルを指定する文字列です。 - HLSLFlags
HLSL コンパイル オプションです (「D3D10_SHADER 定数」を参照してください)。 - FXFlags
エフェクト コンパイル オプションです (「コンパイル フラグおよびエフェクト フラグ」を参照してください)。 - pDevice
リソースを使用するデバイスへのポインターです (「ID3D10Device インターフェイス」を参照してください)。 - pPump
スレッド ポンプ インターフェイスへのポインターです (「ID3DX10ThreadPump インターフェイス」を参照してください)。この関数を、処理が完了するまで戻らないようにするには、NULL を指定します。 - ppEffectPool
エフェクト プールへのポインターのアドレスです (「ID3D10EffectPool インターフェイス」を参照してください)。 - ppErrors
エフェクトのコンパイル エラーが発生した場合に、そのエラーが格納されるメモリーへのポインターのアドレスです (「ID3D10Blob インターフェイス」を参照してください)。 - pHResult
戻り値へのポインターです。NULL でもかまいません。pPump が NULL でない場合は、非同期的な実行が完了するまで、pHResult は有効なメモリー位置でなければなりません。
戻り値
戻り値は、「Direct3D 10 のリターン コード」に示すいずれかの値です。
解説
この例では、BasicHLSL10 サンプルで使用されているエフェクトからエフェクト プールを作成します。
// Create an effect pool from an effect in memory ID3D10EffectPool * l_pEffectPool = NULL; ID3D10Blob* l_pBlob_Errors = NULL; WCHAR str[MAX_PATH]; hr = DXUTFindDXSDKMediaFileCch( str, MAX_PATH, L"BasicHLSL10.fx" ); hr = D3DX10CreateEffectPoolFromFile( str, NULL, NULL, D3D10_SHADER_ENABLE_STRICTNESS, 0, pd3dDevice, NULL, &l_pEffectPool, &l_pBlob_Errors );
要件
ヘッダー: D3DX10Async.h 宣言