次の方法で共有


ID3DXInclude::Open メソッド

シェーダー #include ファイルの内容を開いて読み取るためのユーザー実装メソッド。

構文

HRESULT Open(
  [in]  D3DXINCLUDE_TYPE IncludeType,
  [in]  LPCSTR           pFileName,
  [in]  LPCVOID          pParentData,
  [out] LPCVOID          *ppData,
  [out] UINT             *pBytes
);

パラメーター

IncludeType [in]

種類: D3DXINCLUDE_TYPE

#include ファイルの場所。 「D3DXINCLUDE_TYPE」を参照してください。

pFileName [in]

種類: LPCSTR

#include ファイルの名前。

pParentData [in]

種類: LPCVOID

#include ファイルを含むコンテナーへのポインター。 コンパイラは pParentData で NULL を渡す場合があります。 詳細については、「 効果のコンパイル (Direct3D 11)」の「インクルード ファイルの検索」セクションを参照してください。

ppData [out]

種類: LPCVOID*

include ディレクティブを含む返されるバッファーへのポインター。 このポインターは、 ID3DXInclude::Close が呼び出されるまで有効なままです。

pBytes [out]

型: UINT*

ppData で返されるバイト数。

戻り値

種類: HRESULT

ユーザー実装メソッドは、S_OKを返す必要があります。 #include ファイルの読み取り時にコールバックが失敗した場合、コールバックが呼び出される原因となった API は失敗します。 これは次のいずれかです。

  • HLSL シェーダーは、D3DXCompileShader*** 関数の 1 つに失敗します。
  • アセンブリ シェーダーは、D3DXAssembleShader*** 関数の 1 つに失敗します。
  • 効果は、D3DXCreateEffect*** または D3DXCreateEffectCompiler*** 関数の 1 つに失敗します。

要件

要件
ヘッダー
D3DX9Shader.h
ライブラリ
D3dx9.lib

関連項目

ID3DXInclude

ID3DXInclude::Close