EffectsInteractive3DLevel2Reverb.ReflectionsDelay Property (Microsoft.DirectX.DirectSound)

How Do I...?

  • Use Effect Parameters

Retrieves and sets the delay time of the first reflection relative to the direct path, in seconds, of the EffectsInteractive3DLevel2Reverb structure.

Definition

Visual Basic Public Property ReflectionsDelay As Single
C# public float ReflectionsDelay { get; set; }
C++ public:
property float ReflectionsDelay {
        float get();
        void set(float value);
}
JScript public function get ReflectionsDelay() : float
public function set ReflectionsDelay(float);

Property Value

System.Single
Delay time of the first reflection relative to the direct path, in seconds.

This property is read/write. 

Remarks

Can range from Interactive3DLevel2ReverbEffect.ReflectionsDelayMin to Interactive3DLevel2ReverbEffect.ReflectionsDelayMax.

The default value is Interactive3DLevel2ReverbEffect.ReflectionsDelayDefault or 0.007 seconds.

How Do I...?

Use Effect Parameters

This C# example demonstrates how to use the parameters of an effect object from a SecondaryBuffer object.

The buffer object in this code snippet is assumed to be the SecondaryBuffer from the code in Add Effects to a SecondaryBuffer Object.

              [C#]
              


//Retrieve the effects object and
//the effect param sturctures and edit parameters.
EchoEffect echo = (EchoEffect)buffer.GetEffects(0);
EffectsEcho echo_params = echo.AllParameters;

echo_params.LeftDelay = 250.0f;
echo_params.RightDelay = 100.0f;
echo_params.Feedback = 85.0f;
echo_params.PanDelay = 1;
echo_params.WetDryMix = 50.0f;

ChorusEffect chorus = (ChorusEffect)buffer.GetEffects(1);
EffectsChorus chorus_params = chorus.AllParameters;

chorus_params.Delay = 15.0f;
chorus_params.Depth = ChorusEffect.DepthMax;
chorus_params.Phase = ChorusEffect.PhaseNegative90;
chorus_params.Waveform = ChorusEffect.WaveSin;
chorus_params.WetDryMix = 50.0f;

//Set the new parameters and play the buffer.
echo.AllParameters = echo_params;
chorus.AllParameters = chorus_params;
buffer.Play(0,BufferPlayFlags.Default);