次の方法で共有


D3DXCreateEffectFromFile

エフェクトの ASCII 記述またはバイナリ記述からエフェクトを作成します。

HRESULT 
D3DXCreateEffectFromFile(
  LPDIRECT3DDEVICE9 pDevice,
  LPCTSTR pSrcFile,
  CONST D3DXMACRO * pDefines,
  LPD3DXINCLUDE pInclude,
  DWORD Flags,
  LPD3DXEFFECTPOOL pPool,
  LPD3DXEFFECT * ppEffect,
  LPD3DXBUFFER * ppCompilationErrors
);

パラメータ

  • pDevice
    エフェクトを作成するデバイスへのポインターです。「IDirect3DDevice9」を参照してください。
  • pSrcFile
    ファイル名へのポインターです。このパラメーターは、Unicode 文字列と ANSI 文字列の両方をサポートします。「解説」を参照してください。
  • pDefines
    プリプロセッサ マクロ定義のオプションの NULL 終端配列です。「D3DXMACRO」を参照してください。
  • pInclude
    #include ディレクティブを処理するために使用される、オプションのインターフェイス ポインター ID3DXInclude です。この値に NULL を指定すると、#include はファイルからコンパイルする場合は有効ですが、リソースやメモリーからコンパイルする場合はエラーとなります。
  • Flags
    pSrcFile にテキスト エフェクトが格納される場合、D3DXSHADER フラグD3DXFX フラグの組み合わせを指定します。それ以外の場合は、pSrcFile にバイナリ エフェクトが格納され、D3DXFX フラグのみが受理されます。Direct3D 10 HLSL コンパイラが現在の既定のコンパイラです。詳細については、「エフェクト コンパイラ ツール」を参照してください。
  • pPool
    共有引数で使う ID3DXEffectPool オブジェクトへのポインターです。この値に NULL を指定すると、引数は共有されません。
  • ppEffect
    コンパイルされたエフェクトが格納されたバッファーへのポインターを返します。「ID3DXEffect」を参照してください。
  • ppCompilationErrors
    コンパイル エラーの一覧が格納されたバッファーへのポインターを返します。「ID3DXBuffer」を参照してください。

戻り値

成功すると、D3D_OK を返します。失敗した場合は、次の戻り値のいずれかを返します。D3DERR_INVALIDCALL と D3DXERR_INVALIDDATA のいずれかです。

E_OUTOFMEMORY

解説 

コンパイラーの設定で Unicode が必要な場合、データ型 LPCTSTR は LPCWSTR に解決されます。それ以外の場合、LPCTSTR データ型は LPCSTR に解決されます。

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

要件

ヘッダー: D3DX9Effect.h 宣言

ライブラリ: D3dx9.lib 内容

関連項目

D3DXCompileShader, D3DXCompileShaderFromResource