此外,播放一次声音可以使用一个判定。
就是在播放声音之前检测这个声源是不是正在播放,对与这个是有相应的函数的,可以试试看。
大致的型是
if(!XXXXGetComponent AudioSource ;()isPlaying )
{
XXXXGetComponent AudioSource ;()Play ();
}
这样就好了。
打开unity3d软件。这里我就随便打开一个之前的项目了,不会影响添加音效的步骤的。
unity3d中如何添加音效
unity3d中如何添加音效
这里先说明一下,游戏中的任何对象均可以变成声音源,只要为其添加一个Audiosource组件就行了。而要在游戏中听到声音就需要有一个游戏对象添加一个Audiolistener组件,一般来说这个组件是添加到主摄像机上的。unity3d中的限制,只能有一个游戏对象有audiolistener组件,也就是说一个场景中audiolistener组件只能出现一次;而audiosource可以出现许多次。更通俗一些,就是游戏世界中只能有一个人有耳朵,但是其他对象都可以有嘴巴。
unity3d中如何添加音效
现在为主摄像机添加了一个audiolistener组件与audiosource组件。
unity3d中如何添加音效
要听到什么样的音效,只需要展开audiosource组件,在audioclip(音频剪辑)中加入你喜欢的音效就行了。
unity3d中如何添加音效
然后点击audioclip右边的小圆圈。
unity3d中如何添加音效
d出选择音频对话框,如果你项目窗口有音效,就可以在里面对话框里面看到,让后点击一下就行了。
unity3d中如何添加音效
运行游戏,你就能听到你的音效了。
1把声音文件放进工程目录
2一般在主相机下就带有Audio Source,将Audio Clip选为你导入的文件
其它配置如下图:
以上是最简单的方法,不许编程,如果想深入控制播放声音,就得编写脚本了。
audioPlay()播放默认声音,audioPlayOneShot(xxx) 播放指定声音(xxx代表你指定的audioClip)
void Update(){
if (InputGetKeyDown(KeyCodeK))
{
AudioClip audioclip = ResourcesLoad("Audios/sunny-road-trip_loop10") as AudioClip;
AudioSource audioSource = gameObjectGetComponent<AudioSource>();
if (audioSource == null) {
audioSource = gameObjectAddComponent<AudioSource>();
}
audioSourceclip = audioclip;
audioSourceloop = true; //是否循环播放
audioSourcePlay();
}
}
把你的滴滴音效文件放入到Assets/Resources/Audios目录下。把脚本中sunny-road-trip_loop10修改为你的滴滴音效名。
在游戏结束时调用Destroy
外部可以修改音乐和音效的音量。
可传入声音资源(AudioClip)播放,也可传入资源路径(需在Resources目录下)。
如
播放音乐时,会有淡入淡出效果。声音播放出来的有原因可能有
1 声音文件本身不对,建议试试看这个声音在Unity频谱那个地方是否可以播放
2 声音的强度太小了,这个修改volume应该就可以
3 声源和listener距离太远导致,可以考虑修改距离或者把声音改成2D模式
个人见解,如果出错,请见谅吧。
另外信息还是有些不足,如果能详细描述一下错误,或许会有更好的解答。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)