时间:2022-02-03 10:33:10 | 栏目:.NET代码 | 点击:次
下面通过代码给大家介绍Unity常用音频操作类,具体代码如下所示:
using UnityEngine; using System.Collections; public class AudioPlay : MonoBehaviour { public static AudioPlay Instance; public AudioClip[] FuChuAudio; public AudioSource FCAudio; // public AudioSource BabyAudio; // Use this for initialization void Awake() { Instance = this; } void Start () { } // Update is called once per frame void Update () { } /// <summary> /// 播放某个音频 /// </summary> /// <param name="i"></param> public void playAudio(int i) { FCAudio.clip = FuChuAudio[i]; FCAudio.Play(); } /// <summary> /// 停止播放所有的音频 /// </summary> public void StopplayAll() { for (int i= 0; i< FuChuAudio.Length; i++) { FCAudio.clip = FuChuAudio[i]; FCAudio.Stop(); } } /// <summary> /// 停止播放某个音频 /// </summary> /// <param name="i"></param> public void StopplayOne(int i) { FCAudio.clip = FuChuAudio[i]; FCAudio.Stop(); } /// <summary> /// 循环播放某个音频 /// </summary> /// <param name="i"></param> public void playLoop(int i) { FCAudio.clip = FuChuAudio[i]; FCAudio.loop = true;//设置声音为循环播放 ; FCAudio.Play(); } }
/***将这个脚本挂载到一个空物体上,并且给它添加 AudioSource 组件*/using System.Collections; using System.Collections.Generic; using UnityEngine; /// <summary> /// 控制所有音乐的管理类 /// </summary> public class AudioManager : MonoBehaviour { //将要轮流播放的音乐组 public AudioClip[] audioGroup; //当前播放的是谁 private int playingIndex; //是否允许播放音乐 private bool canPlayAudio; //AudioSource组件 private AudioSource audioSource; //----------------------------------------------------- void Start() { audioSource = this.GetComponent<AudioSource>(); canPlayAudio = true; playingIndex = 0; } //----------------------------------------------------- void Update() { if (canPlayAudio) { PlayAudio(); canPlayAudio = false; } if (!audioSource.isPlaying) { playingIndex++; if (playingIndex >= audioGroup.Length) { playingIndex = 0; } canPlayAudio = true; } } //----------------------------------------------------- private void PlayAudio() { audioSource.clip = audioGroup[playingIndex]; audioSource.Play(); } //----------------------------------------------------- }