Share via


ID3DXInclude

ID3DXInclude は、ユーザーによって実装されるインターフェイスで、シェーダーのコンパイル時に #include ディレクティブに対してコールバックを提供します。このインターフェイスの各メソッドは、ユーザーによって実装され、次のいずれかの場合に、アプリケーションに対するコールバックとして使用されます。

  • #include を含む HLSL シェーダーは、D3DXCompileShader*** のいずれかの関数を呼び出すことによってコンパイルされます。
  • アセンブリ シェーダーの #include は D3DXAssembleShader*** のいずれかの関数を呼び出すことによってアセンブルされます。
  • #include を含むエフェクトは、D3DXCreateEffect*** 関数または D3DXCreateEffectCompiler*** 関数を呼び出すことによってコンパイルされます。

ID3DXInclude のメンバー

メソッド 説明
ID3DXInclude::Close シェーダーの #include ファイルを閉じるためのメソッドで、ユーザーが実装します。
ID3DXInclude::Open シェーダーの #include ファイルを開いて内容を読み込むときに使用されます。ユーザーによって実装されるメソッドです。

解説 

ユーザーは、ID3DXInclude インターフェイスを作成する場合、このインターフェイスから派生するクラスを実装したうえで、すべてのインターフェイス メソッドを実装します。

LPD3DXINCLUDE 型は、このインターフェイスへのポインターとして定義されています。

typedef interface ID3DXInclude ID3DXInclude;
typedef interface ID3DXInclude *LPD3DXINCLUDE;