ID3DXEffectStateManager インターフェイス
これは、ユーザーがエフェクトからデバイスの状態を設定できるようにするユーザー実装インターフェイスです。 このインターフェイスの各メソッドは、ユーザーが実装する必要があり、次のいずれかが発生したときにアプリケーションへのコールバックとして使用されます。
- 効果は ID3DXEffect::BeginPass を呼び出します。
- 効果の状態は、適切な状態変更 API を呼び出すことによって動的に更新されます。 詳細については、個々のメソッド ページを参照してください。
アプリケーションで状態マネージャーを使用してカスタム コールバックを実装すると、 ID3DXEffect::BeginPass と ID3DXEffect::EndPass を呼び出すとき に、効果によって状態が自動的に保存および復元されなくなります。 アプリケーションはコールバックでカスタムの保存と復元の動作を実装しているため、この自動動作はバイパスされます。
メンバー
ID3DXEffectStateManager インターフェイスは、IUnknown インターフェイスから継承します。 ID3DXEffectStateManager には、次の種類のメンバーもあります。
メソッド
ID3DXEffectStateManager インターフェイスには、これらのメソッドがあります。
メソッド | 説明 |
---|---|
LightEnable | ライトを有効または無効にするためにユーザーが実装する必要があるコールバック関数。 |
SetFVF | FVF コードを設定するためにユーザーが実装する必要があるコールバック関数。 |
SetLight | ライトを設定するためにユーザーが実装する必要があるコールバック関数。 |
SetMaterial | マテリアルの状態を設定するためにユーザーが実装する必要があるコールバック関数。 |
SetNPatchMode | N パッチのサブ区分セグメントの数を設定するために、ユーザーが実装する必要があるコールバック関数。 |
SetPixelShader | ピクセル シェーダーを設定するためにユーザーが実装する必要があるコールバック関数。 |
SetPixelShaderConstantB | 頂点シェーダーのブール定数の配列を設定するためにユーザーが実装する必要があるコールバック関数。 |
SetPixelShaderConstantF | 頂点シェーダーの浮動小数点定数の配列を設定するためにユーザーが実装する必要があるコールバック関数。 |
SetPixelShaderConstantI | 頂点シェーダー整数定数の配列を設定するためにユーザーが実装する必要があるコールバック関数。 |
SetRenderState | レンダリング状態を設定するためにユーザーが実装する必要があるコールバック関数。 |
SetSamplerState | サンプラーを設定するためにユーザーが実装する必要があるコールバック関数。 |
SetTexture | テクスチャを設定するためにユーザーが実装する必要があるコールバック関数。 |
SetTextureStageState | テクスチャ ステージの状態を設定するためにユーザーが実装する必要があるコールバック関数。 |
SetTransform | 変換を設定するためにユーザーが実装する必要があるコールバック関数。 |
SetVertexShader | 頂点シェーダーを設定するためにユーザーが実装する必要があるコールバック関数。 |
SetVertexShaderConstantB | 頂点シェーダーのブール定数の配列を設定するためにユーザーが実装する必要があるコールバック関数。 |
SetVertexShaderConstantF | 頂点シェーダーの浮動小数点定数の配列を設定するためにユーザーが実装する必要があるコールバック関数。 |
SetVertexShaderConstantI | 頂点シェーダー整数定数の配列を設定するためにユーザーが実装する必要があるコールバック関数。 |
解説
ユーザーは、このインターフェイスから派生したクラスを実装し、すべてのインターフェイス メソッドを実装することで、ID3DXEffectStateManager インターフェイスを作成します。 インターフェイスが作成されたら、 ID3DXEffect::GetStateManager と ID3DXEffect::SetStateManager を使用して、効果内で状態マネージャーを取得または 設定できます。
LPD3DXEFFECTSTATEMANAGER 型は、このインターフェイスへのポインターとして定義されます。
typedef interface ID3DXEffectStateManager ID3DXEffectStateManager;
typedef interface ID3DXEffectStateManager *LPD3DXEFFECTSTATEMANAGER;
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|
関連項目