我有一个基于统一的游戏,可以播放超过3-5分钟。所以,我想要一组可以一个接一个播放的歌曲(至少2个)。
我知道如何将一个特定的音频源设置为场景的主摄像头并将其设置为循环;但这会是单调的,所以我想知道如何将一组歌曲添加到特定场景并以顺序方式播放它们?
任何帮助将不胜感激。感谢。
答案 0 :(得分:3)
如何将一组歌曲添加到特定场景并在一个场景中播放 顺序时尚
这很容易。仅使用一个AudioSource
。使用AudioClip保持要播放的音频。如果可能,请使用AudioClip
数组。
1 。使用for
循环遍历AudioClip
数组。
2 。在每个循环中,将循环中的当前AudioClip
指定给AudioSource.clip
变量。
3 。之后调用AudioSource.Play();
播放音频。
4 。使用while循环等待当前AudioClip
完成while (AudioSource.isPlaying){ yield return null;}
的播放
5 。返回#2 。
public AudioSource adSource;
public AudioClip[] adClips;
IEnumerator playAudioSequentially()
{
yield return null;
//1.Loop through each AudioClip
for (int i = 0; i < adClips.Length; i++)
{
//2.Assign current AudioClip to audiosource
adSource.clip = adClips[i];
//3.Play Audio
adSource.Play();
//4.Wait for it to finish playing
while (adSource.isPlaying)
{
yield return null;
}
//5. Go back to #2 and play the next audio in the adClips array
}
}
要启动它,只需拨打StartCoroutine(playAudioSequentially());
。