次の方法で共有


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 宣言

関連項目

汎用関数