unity3d 怎么在一个unity中的audiosourcee上加多个音效

3185人阅读
Unity3D(53)
原创文章如需转载请注明:转载自&&QQ群:【Unity3D(AR/VR) 】【Unity3D(游戏)
】&本文链接地址:&
AudioListener组件默认绑定在主摄像机上,这个组件的功能相当于耳朵,用来听声音的。
1.背景音乐
选中音乐文件,建议不勾选3D Sound选项。
在Main Camera下创建一个空物体,添加AudioSound组件,AudioClip选择要播放的音乐。
Loop必须勾选,循环播放。
勾选PlayOnAwake,场景一进来就开始播放,如果不勾选找个合适时机Play()。
2.NGUI的UIPlaySound
在摄像机直接添加个AudioSource组件,这个组件不挂任何AudioClip。(UIPlaySound将在这个组件上播放音效,在这里调整Volume能控制所有UIPlaySound的音量大小。UIPlaySound的Volume属性只控制自己的音量,最后的音量是这两个音量值相乘。)
3.碰撞触发的音效
4.Animation动作回调的音效
版权声明:本文为博主原创文章,未经博主允许不得转载。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
(4)(2)(1)(2)(3)(2)(2)(1)(2)(11)(29)(35)(10)(10)(1)(4)(3)
(window.slotbydup = window.slotbydup || []).push({
id: '4740887',
container: s,
size: '250,250',
display: 'inlay-fix'如果给一个GameObject赋予两个audio source,要怎么分别播放?【unity3d吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:76,715贴子:
如果给一个GameObject赋予两个audio source,要怎么分别播放?收藏
RT,我只知道用audio.Play();播放一个,如果真有两个怎么区分?
零基础学Unity 北风Unity专业团队,9年教学经验,数10万就业学员,独创6+1教学.北风网Unity课程免费试学,企业项目实战教学,个性化提升方案,学完轻松高薪就业.
AudioSource.Play()
我觉得你放个数组里面比较好。。
audioSources[0].clip = clips[0];audioSources[1].clip = clips[1];double startTime = AudioSettings.dspTime + 2.0;audioSource[0].PlayScheduled( startTime );audioSource[1].PlayScheduled( startTime + clips[0].length );这是目前保证无缝播放的方法之一。
登录百度帐号推荐应用添加音效组件并添加音乐资源
其中Pitch用来提高和降低音调的,比如可以和赛车游戏的轮胎绑定,当轮胎越快,则音调越高
2D/3D音效:2D音效和摄影家的距离无关,可以看做是一个背景音乐;而3D音效则是上下左右的立体声
创建Camera的时候,会自动添加Audio Listener组件,每个Scene都只能存在一个Audio Listener组件
多普勒音效设置:设置为0就可以避免声音根据位置忽大忽小了
AudioSource的Play和PlayOneShot区别:如果音效较长,则下次播放的时候会导致上一次的音效终止;而使用PlayOneShot则不会终止之前没有播放完成的音效。不过PlayOneShot要使用带有AudioClip参数的方法,适用于高频繁的子弹音效。背景音乐还是通过Play进行播放
阅读(...) 评论()扫一扫,访问微社区
后使用快捷导航没有帐号?
签到成功!您今天第{todayrank}个签到,签到排名竞争激烈,记得每天都来签到哦!已连续签到:{constant}天,累计签到:{days}天
用AudioSource.PlayClipAtPoint播放音效
阅读&7270 |
游戏中的声音通常可以分为音乐和音效,音乐通常时间较长,且需要循环播放,音效则时间较短,不需要循环播放。播放声音的方式常见有两种:1.建立一个空物体,为每一个音乐或音效添加AudioSource,给每个AudioSource添加相应的声音剪辑,播放时,获取各个AudioSource组件来播放声音。2.建立一个空物体,添加一个AudioSource用来播放背景音乐;再添加一个Audiosource,用来播放音效,该组件的Audio Clip属性,在运行时根据需要播放的声音,赋予不同的声音剪辑,以此实现一个AudioSource,播放多个音效。这种方法的是,当有多个音效需要同时播放时,后播放的音效会终止先播放的音效。解决办法:给所有音效分组,不可能同时播放的音效为一组,再为每一组音效添加一个AudioSource。
还有一种方法:static void PlayClipAtPoint(clip,position, float volume = 1.0F);使用AudioSource.PlayClipAtPoint播放声音,会自动生成一个名为"One
audio"的物体,并自动添加了AudioSource和相应的audioclip,同时播放多个声音时会生成多个同名的物体,各声音的播放互不影响,但缺点是只能设置音量,位置,不能设置loop(当然也不是不能实现的,只是比较麻烦),还有一些特殊的声音效果也不易实现,只能播放一次,播放完成后,One shot audio自动销毁。[code]csharpcode: int index=0;
public AudioClip[]
void Start()
InvokeRepeating("PlaySound",2.0f,0.5f);
void PlaySound()
if(index&clips.Length)
AudioSource.PlayClipAtPoint(clips[index],Vector3.zero,1.0f);
所以可以看出,在只需要播放简单的音效时,可以使用PlayClipAtPoint来播放,不需要添加AudioSource,不需要获取各个AudioSource的引用,就可以直接播放声音。
作者的其他最新博客
评论 ( 个评论)

我要回帖

更多关于 unity3d this.audio 的文章

 

随机推荐