D3DXCreateEffectFromResourceEx 関数
ASCII またはバイナリ効果の説明から効果を作成します。 これは D3DXCreateEffectFromResource の拡張バージョンであり、アプリケーションで効果システムによって無視されるパラメーターを制御できます。
構文
HRESULT D3DXCreateEffectFromResourceEx(
_In_ LPDIRECT3DDEVICE9 pDevice,
_In_ HMODULE hSrcModule,
_In_ LPCTSTR pSrcResource,
_In_ const D3DXMACRO *pDefines,
_In_ LPD3DXINCLUDE pInclude,
_In_ LPCSTR pSkipConstants,
_In_ DWORD Flags,
_In_ LPD3DXEFFECTPOOL pPool,
_Out_ LPD3DXEFFECT *ppEffect,
_Out_ LPD3DXBUFFER *ppCompilationErrors
);
パラメーター
-
pDevice [in]
-
デバイスへのポインター。
-
hSrcModule [in]
-
種類: HMODULE
効果の説明を含むモジュールを処理します。 このパラメーターが NULL の場合は、現在のモジュールが使用されます。
-
pSrcResource [in]
-
型: LPCTSTR
リソースへのポインター。 このパラメーターは、Unicode 文字列と ANSI 文字列の両方をサポートします。 「解説」を参照してください。
-
pDefines [in]
-
型: const D3DXMACRO*
プリプロセッサ定義を記述する D3DXMACRO 構造体の NULL で終わる省略可能な配列。 この値は NULL にすることができます。
-
pInclude [in]
-
種類: LPD3DXINCLUDE
#include ディレクティブの処理に使用するオプションのインターフェイス ポインター ID3DXInclude。 この値が NULL の場合、#includesはファイルからコンパイルするときに優先されるか、リソースまたはメモリからコンパイルされるときにエラーが発生します。
-
pSkipConstants [in]
-
種類: LPCSTR
効果システムによって無視される効果パラメーターの文字列。 文字列は NULL で終わる必要があり、各アプリケーション管理定数の名前をセミコロンで区切って含める必要があります。
-
Flags [in]
-
種類: DWORD
pSrcResource にテキスト効果が含まれている場合、フラグは D3DXSHADER フラグと D3DXFX フラグの組み合わせになります。それ以外の場合、pSrcResource にはバイナリ効果が含まれており、使用されるフラグは D3DXFX フラグのみです。 Direct3D 10 HLSL コンパイラが既定になりました。 詳細については、「 エフェクト コンパイラ ツール 」を参照してください。
-
pPool [in]
-
種類: LPD3DXEFFECTPOOL
共有パラメーターに使用する ID3DXEffectPool オブジェクトへのポインター。 この値が NULL の場合、パラメーターは共有されません。
-
ppEffect [out]
-
種類: LPD3DXEFFECT*
コンパイルされた効果を含むバッファーを返します。
-
ppCompilationErrors [out]
-
種類: LPD3DXBUFFER*
コンパイル エラーの一覧を含むバッファーを返します。
戻り値
種類: HRESULT
関数が成功した場合、戻り値はD3D_OK。 関数が失敗した場合、戻り値は次のいずれかになります:D3DERR_INVALIDCALL、D3DXERR_INVALIDDATA、E_OUTOFMEMORY。
解説
この関数は D3DXCreateEffectFromResource の拡張バージョンであり、アプリケーションでアプリケーションによって管理される効果定数を指定できます。 アプリケーションによって管理される定数は、効果システムによって無視されます。 つまり、アプリケーションは定数を初期化し、必要に応じてその状態を保存および復元する必要があります。
この関数は、pSkipConstants の各定数をチェックして、次の点を確認します。
- 定数レジスタにバインドされます。
- HLSL シェーダー コードでのみ使用されます。
効果に存在しない文字列に定数の名前が付けられている場合、その定数は無視されます。
コンパイラ設定で Unicode が必要な場合、データ型 LPCTSTR は LPCWSTR に解決されます。 それ以外の場合、LPCTSTR データ型は LPCSTR に解決されます。
コンパイラ設定によって、関数のバージョンも決定されます。 Unicode が定義されている場合、関数呼び出しは D3DXCreateEffectFromResourceW に解決されます。 それ以外の場合、ANSI 文字列が使用されているため、関数呼び出しは D3DXCreateEffectFromResourceA に解決されます。
D3DXCreateEffectFromResource は、RT_RCDATA型のリソースからデータを読み込みます。 Windows リソースの詳細については、MSDN を参照してください。
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|
関連項目