Microsoft DirectX 8.0 (Visual Basic) |
バッファのサウンド エフェクトを設定する。バッファの再生中であってはならない。
object.SetFX( _ EffectsCount As Long, _ Buffers() As DSEFFECTDESC, _ lResultIDs() As Long)
失敗した場合はエラーが発生し、Err.Number に次のいずれかのエラー値が設定される。
DSERR_CONTROLUNAVAIL |
DSERR_GENERIC |
DSERR_INVALIDPARAM |
DSERR_INVALIDCALL |
DSERR_NOINTERFACE |
DSERR_PRIOLEVELNEEDED |
メソッドを成功させるには、バッファが DSBCAPS_CTRLFX フラグで作成され、バッファの再生中であってはならない。
このメソッドが失敗すると、lEffectsResults で、各エフェクトに対して DSFXF_PRESENT または DSFXR_UNKNOWN が返される。これらの値を調べることによって、失敗の原因となったエフェクトを特定できる。
メソッドから DSERR_NOINTERFACE またはその他の COM エラーが返された場合は、結果コード配列内の DSFXR_PRESENT または DSFXR_UNKNOWN を探し、エラーの原因となったエフェクトを確認する。メソッドから DSERR_INVALIDPARAM が返された場合は、DSFXR_FAILED という結果コードを探し、リソースを取得できなかったエフェクトを確認する。
バッファがオーディオパスの一部である場合、オーディオパスは非アクティブでなければならない。「DirectMusicAudioPath8.Activate」を参照すること。
エフェクト オブジェクトを取得する前に、バッファにエフェクトを設定しなければならない。エフェクト オブジェクトを取得するには、DirectSoundSecondaryBuffer8.GetObjectInPath を使う。