Microsoft DirectX 8.0 (Visual Basic)

エフェクトの変更

エフェクトの再生中でもエフェクトのパラメータを変更することができる場合がある。これを行うには、DirectInputEffect.SetParameters メソッドを使用する。

エフェクトの再生中でも変更できるエフェクトのパラメータを調べるには、DirectInputEnumEffects.GetDynamicParams メソッドを呼び出す。

エフェクトの再生中には変更できないエフェクトのパラメータを変更しようとして、エフェクトが実際にまだ再生しているときは、通常、Microsoft® DirectInput® はエフェクトを停止させ、パラメータを更新し、エフェクトを再スタートさせる。この DirectInput のデフォルトの働きを無効にするには、SetParameters に DIEP_NORESTART フラグを渡せばよい。

次のコードは、DirectInputEffect オブジェクトの dieff で表されるコンスタント フォースのマグニチュードを変更する例である。このオブジェクトは、グローバルな DIEFFECT 型の effectinfo を使って作成済みである。

effectinfo.constantForce.lMagnitude = 5000
Call dieff.SetParameters(effectinfo, DIEP_TYPESPECIFICPARAMS)

 :  DIEFFECTconditionconstantforceperiodicforce、および rampforce の各メンバを変更する場合は、DIEP_TYPESPECIFICPARAMS フラグを設定する必要がある。