エフェクト システム インターフェイス (Direct3D 10)
効果システムでは、効果の状態を管理するための複数のインターフェイスが定義されています。 インターフェイスには、効果をレンダリングするためにランタイムで使用されるインターフェイスと、効果変数を取得および設定するためのリフレクション インターフェイスの 2 種類があります。
効果ランタイム インターフェイス
ランタイム インターフェイスを使用して効果をレンダリングします。
ランタイム インターフェイス | 説明 |
---|---|
ID3D10Effect インターフェイス | レンダリングのための 1 つ以上の手法のコレクション。 |
ID3D10Include インターフェイス | インクルード ファイルを読み取るときにカスタム動作を追加するためのインターフェイス。 |
ID3D10EffectPass インターフェイス | 状態の割り当てのコレクション。 |
ID3D10EffectPool インターフェイス | 効果間で変数を共有するためのメモリの場所を作成します。 |
ID3D10EffectTechnique インターフェイス | 1 つ以上のパスのコレクション。 |
効果リフレクション インターフェイス
リフレクションは、効果の状態の読み取り (および書き込み) をサポートするために効果システムで実装されます。 効果変数にアクセスするには、複数の方法があります。
効果の状態のグループの設定
これらのインターフェイスを使用して、状態のグループを取得および設定します。
リフレクション インターフェイス | 説明 |
---|---|
ID3D10EffectBlendVariable インターフェイス | ブレンド状態を取得して設定します。 |
ID3D10EffectDepthStencilVariable インターフェイス | 深度ステンシルの状態を取得および設定します。 |
ID3D10EffectRasterizerVariable インターフェイス | ラスタライザーの状態を取得して設定します。 |
ID3D10EffectSamplerVariable インターフェイス | サンプラーの状態を取得して設定します。 |
効果リソースの設定
これらのインターフェイスを使用して、リソースを取得および設定します。
リフレクション インターフェイス | 説明 |
---|---|
ID3D10EffectConstantBuffer インターフェイス | テクスチャ バッファーまたは定数バッファー内のデータにアクセスします。 |
ID3D10EffectDepthStencilViewVariable インターフェイス | 深度ステンシル リソース内のデータにアクセスします。 |
ID3D10EffectRenderTargetViewVariable インターフェイス | レンダー ターゲット内のデータにアクセスします。 |
ID3D10EffectShaderResourceVariable インターフェイス | シェーダー リソース内のデータにアクセスします。 |
その他の効果変数の設定
これらのインターフェイスを使用して、変数の型によって状態を取得および設定します。
リフレクション インターフェイス | 説明 |
---|---|
ID3D10EffectMatrixVariable インターフェイス | マトリックスを取得して設定します。 |
ID3D10EffectScalarVariable インターフェイス | スカラーを取得して設定します。 |
ID3D10EffectShaderVariable インターフェイス | シェーダー変数を取得して設定します。 |
ID3D10EffectStringVariable インターフェイス | 文字列を取得して設定します。 |
ID3D10EffectType インターフェイス | 変数型を取得します。 |
ID3D10EffectVectorVariable インターフェイス | ベクターを取得して設定します。 |
すべてのリフレクション インターフェイスは 、ID3D10EffectVariable インターフェイスから派生します。
関連トピック