C# 按顺序播放多个音频剪辑

C# 按顺序播放多个音频剪辑,c#,unity3d,C#,Unity3d,我有一个基于团结的游戏,可以玩3-5分钟以上。所以,我想要一组可以一首接一首播放的歌曲(至少2首) 我知道如何将一个特定的音频源设置为场景的主摄像机,并将其设置为循环;但那会很单调,所以我想知道如何在特定场景中添加一组歌曲,并按顺序播放它们 任何帮助都将不胜感激。谢谢 如何将一组歌曲添加到特定场景中并在 顺序方式 这真的很容易。仅使用一个音频源。使用AudioClip固定要播放的音频。如果可能,请使用AudioCliparray 1。使用for循环,在音频剪辑阵列中循环 2。在每个循环中,将循环

我有一个基于团结的游戏,可以玩3-5分钟以上。所以,我想要一组可以一首接一首播放的歌曲(至少2首)

我知道如何将一个特定的音频源设置为场景的主摄像机,并将其设置为循环;但那会很单调,所以我想知道如何在特定场景中添加一组歌曲,并按顺序播放它们

任何帮助都将不胜感激。谢谢

如何将一组歌曲添加到特定场景中并在 顺序方式

这真的很容易。仅使用一个
音频源。使用AudioClip固定要播放的音频。如果可能,请使用
AudioClip
array

1。使用
for
循环,在
音频剪辑
阵列中循环

2。在每个循环中,将循环中的当前
AudioClip
分配给
AudioSource.clip
变量

3。调用
AudioSource.Play()之后播放音频

4。使用while循环等待当前
音频剪辑
完成播放
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
    }
}
公共音频源adSource;
公共音频剪辑[]广告剪辑;
IEnumerator播放程序()
{
收益返回空;
//1.循环播放每个音频剪辑
对于(int i=0;i
要启动它,只需调用
start例程(PlayAudioSequential())

如何将一组歌曲添加到特定场景中并在 顺序方式

这真的很容易。仅使用一个
音频源。使用AudioClip固定要播放的音频。如果可能,请使用
AudioClip
array

1。使用
for
循环,在
音频剪辑
阵列中循环

2。在每个循环中,将循环中的当前
AudioClip
分配给
AudioSource.clip
变量

3。调用
AudioSource.Play()之后播放音频

4。使用while循环等待当前
音频剪辑
完成播放
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
    }
}
公共音频源adSource;
公共音频剪辑[]广告剪辑;
IEnumerator播放程序()
{
收益返回空;
//1.循环播放每个音频剪辑
对于(int i=0;i

要启动它,只需调用
start例程(PlayAudioSequential())

如何在一个音频源中向音频剪辑添加多首歌曲?我只能选择一首歌。对于循环中的一首歌,不需要代码。只需将音频拖到音频源的AudioClip插槽,然后启用循环并在唤醒时播放。就是这样,但你正在做一些不同的事情。你需要一个代码来做这件事。使用我上面提供的解决方案,从编辑器中向adClips插槽加载任意数量的音频。如何仅播放一次列表,然后停止并不循环列表?如何在一个音频源中向音频剪辑添加多首歌曲?我只能选择一首歌。对于循环中的一首歌,不需要代码。只需将音频拖到音频源的AudioClip插槽,然后启用循环并在唤醒时播放。就是这样,但你正在做一些不同的事情。你需要一个代码来做这件事。使用我上面提供的解决方案,从编辑器中向adClips插槽加载任意数量的音频。如何只播放一次列表,然后停止播放,不循环列表?