C# 如何在unity中循环音频?
我当时正在写一个关于Unity的游戏项目,但由于无法在主菜单中无限播放音频而跌跌撞撞 问题是,当我需要重复播放曲目直到播放器离开菜单时,曲目只播放一次(保留在菜单中) 下面是我启用音乐的代码部分。我使用音频剪辑和音频源C# 如何在unity中循环音频?,c#,loops,unity3d,audio,audio-source,C#,Loops,Unity3d,Audio,Audio Source,我当时正在写一个关于Unity的游戏项目,但由于无法在主菜单中无限播放音频而跌跌撞撞 问题是,当我需要重复播放曲目直到播放器离开菜单时,曲目只播放一次(保留在菜单中) 下面是我启用音乐的代码部分。我使用音频剪辑和音频源 public AudioClip menu; private AudioSource audio; void Start() { ... audio = GetComponent<AudioSource>(); aud
public AudioClip menu;
private AudioSource audio;
void Start() {
...
audio = GetComponent<AudioSource>();
audio.loop = true;
audio.PlayOneShot(menu);
...
}
公共音频剪辑菜单;
私人音频源音频;
void Start(){
...
audio=GetComponent();
audio.loop=true;
音频.播放快照(菜单);
...
}
公共音频剪辑菜单;
私人音频源音频;
void Start()
{
Audio=GetComponent();
Audio.clip=菜单;
Audio.loop=true;
音频播放();
}
如果在编辑器中选中AudioSource组件中的Loop选项,它应该可以工作。如果没有,你就把事情搞砸了。还有一种方法,你可以这样循环
private AudioSource audio;
void Start()
{
StartCoroutine(LoopAudio());
}
IEnumerator LoopAudio()
{
audio = GetComponent<AudioSource>();
float length = audio.clip.length;
while(true)
{
audio.Play();
yield return new WaitForSeconds(length);
}
}
私有音频源音频;
void Start()
{
Start例程(LoopAudio());
}
IEnumerator LoopAudio()
{
audio=GetComponent();
浮动长度=audio.clip.length;
while(true)
{
音频播放();
收益率新的WaitForSeconds(长度);
}
}
private AudioSource audio;
void Start()
{
StartCoroutine(LoopAudio());
}
IEnumerator LoopAudio()
{
audio = GetComponent<AudioSource>();
float length = audio.clip.length;
while(true)
{
audio.Play();
yield return new WaitForSeconds(length);
}
}