使用 SoundEffectInstance 控制播放

SoundEffect.Play()即發即忘的方式播放音效。聲音播放一次,其生命週期由框架管理。你無法在播放期間更改聲音的屬性(音量,聲相,音高),迴圈播放,將其置於 3D 或暫停。

你可以通過建立 SoundEffectInstance 來保持對播放聲音的引用 。與其說 SoundEffect.Play() 的,叫 CreateInstance()SoundEffect 然後 Play()的新例項:

SoundEffectInstance instance = mySound.CreateInstance();

// Set some properties
instance.Pitch = 1.0f;
instance.IsLooped = true;

// Play the sound effect
instance.Play();

可以有相同 SoundEffect 的多個例項,每個例項都有自己的屬性。播放停止後,可以通過呼叫 Play() 重播例項。