2016-11-12 75 views
0

从Resources文件夹添加audioClip如何在Unity的代码中通过名称添加和播放短音频剪辑? 我测试了很多来自互联网的样本,但任何人都无法使用。通过代码

AudioSource audio = gameObject.AddComponent<AudioSource>(); 
    audio.Play((AudioClip)Resources.Load("clip1"));​ 

下联:

资产/资源/ ClickAction.cs(14,55):错误CS1525:意外的符号`”

enter image description here

+0

所以,这应该吗?是资源文件夹中的音频文件。音频文件位于何处? – Programmer

+0

是的,它在Resources中。但我真的不知道如何修改 – Quicki

+0

你想上传一个文件夹结构的图片和音频文件的名称?这将帮助我弄清楚什么是错的。 – Programmer

回答

1

AudioSource.Play()不采取AudioClip作为参数。

AudioSource.PlayOneShot()确实。 Pawel也谈到这个,除了他的答案中没有提供代码示例。

这是剧中的原型是什么样子:

public void Play(); 
public void Play(ulong delay); 

他们没有采取AudioClip作为参数。

所以它应该是:

AudioSource audio = gameObject.AddComponent<AudioSource>(); 
audio.PlayOneShot((AudioClip)Resources.Load("clip1")); 

你仍然可以使用从你的问题中的Play()功能,但必须先调用Play()函数之前分配AudioSource.clip(AudioClip)Resources.Load("clip1");。你为什么要使用`Resources.Load`

AudioSource audio = gameObject.AddComponent<AudioSource>(); 
audio.clip = (AudioClip)Resources.Load("clip1"); 
audio.Play(); 
+1

这很完美!非常感谢您的帮助和解释:) – Quicki

+0

欢迎您! – Programmer