Unity SoundManager
来源:互联网 发布:网络辟谣平台 编辑:程序博客网 时间:2024/06/04 23:30
using UnityEngine;using System.Collections;using System.Collections.Generic;public enum E_PlayMusic{ None, 普通按钮点击, 开始场景, //TODO 》》》》》》》 //TODO 》》》》》》》 //TODO 》》》》》》》}public class SoundManager:MonoBehavior{ private AudioSource audioSource; private Dictionary<string,AudioClip> audioClipDict = new Dictionary<string, AudioClip>(); /// <summary> /// 播放音乐(音效) /// </summary> /// <param name="ac">要播放的音乐</param> private void PlaySound(AudioClip ac) { AudioSource.PlayClipAtPoint(ac,Camera.main.transform.position); } /// <summary> /// 通过路径播放音乐(音效) /// </summary> /// <param name="soundPath">Resource中的路径</param> private void PlaySoundByPath(string soundPath) { AudioClip ac = audioClipDict.TryGetValueExtension(soundPath); if (ac == null) { ac = Resources.Load<AudioClip>(soundPath); audioClipDict.Add(soundPath, ac); } PlaySound(ac); } /// <summary> /// 通过路径播放背景音乐 /// </summary> /// <param name="bgmPath"></param> /// <param name="volume"></param> private void PlaybgmByPath(string bgmPath,float volume = 0.5f) { AudioClip ac = audioClipDict.TryGetValueExtension(bgmPath); if (ac == null) { ac = Resources.Load<AudioClip>(bgmPath); audioClipDict.Add(bgmPath,ac); } Playbgm(ac,volume); } /// <summary> /// 播放背景音乐 /// </summary> /// <param name="ac"></param> /// <param name="volume"></param> private void Playbgm(AudioClip ac,float volume) { if (audioSource == null) { GameObject go = new GameObject(GameDefine.audioSourceTag); go.tag = GameDefine.audioSourceTag; audioSource = go.GetOrAddComponent<AudioSource>(); DontDestroyOnLoad(go); } if (audioSource.isPlaying) { audioSource.Stop(); } audioSource.clip = ac; audioSource.volume = volume; audioSource.loop = true; audioSource.Play(); } /// <summary> /// 加载场景的时候关闭 /// </summary> public void StopBgmOnLoad() { audioSource.Stop(); }//例子 /// <summary> /// 播放音乐/音效 /// </summary> /// <param name="e_PlayMusic"></param> public void PlaySound(E_PlayMusic e_PlayMusic) { switch (e_PlayMusic) { case E_PlayMusic.普通按钮点击: PlaySoundByPath("Sound/UI/普通按钮点击"); break; case E_PlayMusic.开始场景: PlaybgmByPath("Sound/Bg/大闹天宫"); break; } }}
0 0
- Unity SoundManager
- UNITY之SoundManager
- SoundManager
- OpenAl SoundManager, dll version
- 一个音效播放类SoundManager
- Loader 管理gameMansager 和soundmanager
- fmod:1.通过SoundManager在OGRE中使用fmod
- 音乐播放器——SoundManager API介绍
- fmod:2.SoundManager的解析和在OGRE中使用fmod
- unity
- Unity
- unity
- Unity
- Unity
- Unity
- Unity-----
- unity
- Unity
- 黑白棋人机对战完整代码
- HDU 4786 Fibonacci Tree (最小生成树变形)
- 2017年网络安全五大趋势
- UE4学习7 如何创建显示一个UMG按钮
- 漫画算法:辗转相除法是什么鬼?
- Unity SoundManager
- java代码验证密码为8-16位,必须包含英文大小写,数字,下划线
- 建造模式(对象创建)
- angular.extend方法
- C#语法小问题之不用new方法对象初始化
- iOS 浏览器safari中使用JQuery click事件无效解决方法
- 08.Mybatis初级使用-resultMap(二)
- [Unity踩坑系列] Quality Settings为何影响不了Texture Size
- 03-树2 List Leaves (25分)