SoundExtensions
介绍
音频淡入淡出效果
使用场景
Unity官方API并没有提供但淡入淡出接口,但切换BGM时往往需要
工具原理
- 借助DoTween工具
- 通过调整音量的大小实现
- 淡入:0=>1
- 淡出:1=>0
代码
public static class SoundExtensions
{
public static void PlayWithFadeIn(this AudioSource source, AudioClip clip, float volume = 1, float duration = 3)
{
source.clip = clip;
source.volume = 0;
source.Play();
AudioFade(source, source.volume, volume, duration);
}
public static void StopWithFadeOut(this AudioSource source, float volume = 0, float duration = 3)
{
AudioFade(source, source.volume, volume, duration);
}
private static void AudioFade(this AudioSource source, float start, float end, float duration)
{
DOTween.To(x => { source.volume = x; }, start, end, duration).SetUpdate(true);
}
}
使用API
- 高亮显示资源并选中