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;