我已经初始化了一个SoundEffect属性:
private SoundEffect sound;
它已加载到Load()
函数中,如下所示:
sound = Content.Load<SoundEffect>("Jump15");
声音播放正常,但声音太大了,我尝试在SoundEffect.MasterVolume
函数中使用不同值的Load()
,但它似乎没有改变音量。
请帮忙!
答案 0 :(得分:2)
有一个SoundEffect.Play()
方法的版本,它将volume作为参数。您可以将第二个和第三个参数设置为零。
sound = Content.Load<SoundEffect>("Jump15");
sound.Play(volume: 0.5f, pitch: 0.0f, pan: 0.0f);
或者,您可以创建声音效果实例并在声音开始播放后设置音量。当您想要应用效果时,这可能很有用,例如将声音淡入或淡出。
var instance = sound.CreateInstance();
instance.Volume = 0.5f;
instance.Play();
有关详情,here's a nice tutorial在XNA / MonoGame中播放SoundEffect
。