エフェクト システム インターフェイス (Direct3D 11)

効果システムでは、効果の状態を管理するための複数のインターフェイスが定義されています。 インターフェイスには、効果をレンダリングするためにランタイムで使用されるインターフェイスと、効果変数を取得および設定するためのリフレクション インターフェイスの 2 種類があります。

エフェクト ランタイム インターフェイス

ランタイム インターフェイスを使用して効果をレンダリングします。

ランタイム インターフェイス 説明
ID3DX11Effect レンダリングのための 1 つ以上のグループと手法のコレクション。
ID3DX11EffectPass 状態の割り当てのコレクション。
ID3DX11EffectTechnique 1 つ以上のパスのコレクション。
ID3DX11EffectGroup 1 つ以上の手法のコレクション。

 

効果リフレクション インターフェイス

リフレクションは、効果の状態の読み取り (および書き込み) をサポートするために、効果システムに実装されます。 効果変数にアクセスするには、複数の方法があります。

効果の状態のグループの設定

これらのインターフェイスを使用して、状態のグループを取得および設定します。

リフレクション インターフェイス 説明
ID3DX11EffectBlendVariable ブレンド状態を取得して設定します。
ID3DX11EffectDepthStencilVariable 深度ステンシルの状態を取得して設定します。
ID3DX11EffectRasterizerVariable ラスタライザーの状態を取得して設定します。
ID3DX11EffectSamplerVariable サンプラーの状態を取得して設定します。

 

効果リソースの設定

これらのインターフェイスを使用して、リソースを取得および設定します。

リフレクション インターフェイス 説明
ID3DX11EffectConstantBuffer テクスチャ バッファーまたは定数バッファー内のデータにアクセスします。
ID3DX11EffectDepthStencilViewVariable 深度ステンシル リソース内のデータにアクセスします。
ID3DX11EffectRenderTargetViewVariable レンダー ターゲット内のデータにアクセスします。
ID3DX11EffectShaderResourceVariable シェーダー リソース内のデータにアクセスします。
ID3DX11EffectUnorderedAccessViewVariable 順序付けられていないアクセス ビューのデータにアクセスします。

 

その他の効果変数の設定

これらのインターフェイスを使用して、変数の型によって状態を取得および設定します。

リフレクション インターフェイス 説明
ID3DX11EffectClassInstanceVariable クラス インスタンスを取得します。
ID3DX11EffectInterfaceVariable インターフェイスを取得して設定します。
ID3DX11EffectMatrixVariable マトリックスを取得して設定します。
ID3DX11EffectScalarVariable スカラーを取得して設定します。
ID3DX11EffectShaderVariable シェーダー変数を取得します。
ID3DX11EffectStringVariable 文字列を取得して設定します。
ID3DX11EffectType 変数の型を取得します。
ID3DX11EffectVectorVariable ベクターを取得して設定します。

 

すべてのリフレクション インターフェイスは 、ID3DX11EffectVariable から派生します。

効果 (Direct3D 11)

Direct3D 11 用プログラミング ガイド