Unity 实用教程 之 背景音乐和音效的管理模板

 时间:2024-10-11 19:59:29

1、打开Unity,新建一个空工程,具体如下图

Unity 实用教程 之 背景音乐和音效的管理模板

2、在工程中,新建一个脚本“AudioManager”,用来统一管理音频文件,具体如下图

Unity 实用教程 之 背景音乐和音效的管理模板

3、打开脚本进行编辑,首先设置脚本单例化,获金泫险缋取音频源,设置音频源属性,然后资源加载所有音频,接着用字典统一管理音频文件,实现播放背景音乐和播放音效的接口,具体的代码和代码说明如下图

Unity 实用教程 之 背景音乐和音效的管理模板
Unity 实用教程 之 背景音乐和音效的管理模板
Unity 实用教程 之 背景音乐和音效的管理模板

4、“AudioManager”代码如下:usingSystem.Collections;usingSystem.Collect足毂忍珩ions.Generic;usingUnityEngine;///<summary>///Audiomanager.音乐音效的简单管理器///</summary>[RequireComponent(typeof(AudioSource))]publicclassAudioManager:MonoBehaviour{//设置单例变量 privatestaticAudioManagerinstance;//设置单例属性 publicstaticAudioManagerInstance{ get{ returninstance; } } ///<summary> ///将声音放入字典中,方便管理 ///</summary> privateDictionary<string,AudioClip>_soundDictionary;//背景音乐和音效的音频源 privateAudioSource[]audioSources; privateAudioSourcebgAudioSource; privateAudioSourceaudioSourceEffect; ///<summary> ///Awakethisinstance. ///</summary> voidAwake(){ //单例初始化 instance=this; }///<summary> ///Startthisinstance. ///</summary> voidStart() { //加载资源存的所有音频资源 LoadAudio();//获取音频源 audioSources=this.GetComponents<AudioSource>(); bgAudioSource=audioSources[0]; bgAudioSource.playOnAwake=true; bgAudioSource.loop=true; audioSourceEffect=audioSources[1]; audioSourceEffect.playOnAwake=false; audioSourceEffect.loop=false; } ///<summary> ///Loadstheaudio. ///</summary> privatevoidLoadAudio(){//初始化字典 _soundDictionary=newDictionary<string,AudioClip>();//本地加载 AudioClip[]audioArray=Resources.LoadAll<AudioClip>("Audio");//存放到字典 foreach(AudioClipiteminaudioArray) { _soundDictionary.Add(item.name,item); } }///<summary> ///Plaiesthebackgroundaudio.播放背景音乐 ///</summary> ///<paramname="audioName">Audioname.</param> publicvoidPlayBGAudio(stringaudioName) { if(_soundDictionary.ContainsKey(audioName)) { bgAudioSource.clip=_soundDictionary[audioName]; bgAudioSource.Play(); } }///<summary> ///Plaiestheaudioeffect.播放音效 ///</summary> ///<paramname="audioEffectName">Audioeffectname.</param> publicvoidPlayAudioEffect(stringaudioEffectName) { if(_soundDictionary.ContainsKey(audioEffectName)) { audioSourceEffect.clip=_soundDictionary[audioEffectName]; audioSourceEffect.Play(); } }}

5、脚本编译正确,回到Unity界面,根据代码加载路径,新建文件夹路径,导入音频文件,然后,再新建一个脚本,测试“AudioManager”,具体如下图

Unity 实用教程 之 背景音乐和音效的管理模板

6、打开“Test”文件,根据音频文件名称,在Update函数中,使用“A”和“S”触发调用“AudioManager”的背景音乐和音效播放接口,具体代码和代码说明如下图

Unity 实用教程 之 背景音乐和音效的管理模板

7、脚本编译正确,回到Unity界面,在场景中新建一个空物体“GameObject”,挂在上俩脚本,然后在添加两个音频源,具体如下图

Unity 实用教程 之 背景音乐和音效的管理模板

8、运行场景,分别按下“A”和“S”键正常触发音乐音频播放,具体如下图

Unity 实用教程 之 背景音乐和音效的管理模板

9、到此,《Unity 实用教程 之 背景音乐和音效的管理模板》讲解结束,谢谢

  • Axure制作:验证强密码
  • 用3D怎样快速制作大片鹅卵石?
  • Axure制作圆形进度条
  • vegas如何抠视频和抠图?
  • vsco怎么取消自动续费
  • 热门搜索
    61儿童节手抄报 文明出行手抄报内容 关于手抄报的花边 四年级上册数学手抄报 关于艺术的手抄报 科技手抄报版面设计图 法制与安全的手抄报 防灾减灾一等奖手抄报 读书活动手抄报 手抄报的装饰花边