admin 管理员组

文章数量: 1184232

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Audio;
/// <summary>
/// 音频管理器
/// </summary>
public class AudioManager : MonoBehaviour
{
    public static AudioManager instance;
    [SerializeField] private AudioSource[] sfx;   //所有音效文件
    [SerializeField] private AudioSource[] bgm;  //所有背景音乐文件
    [SerializeField] private AudioMixer audioMixer;  //音频混合器(用于控制音效和背景音乐的音量)
    public bool isPlayBGM;  //是否播放背景音乐
    private int bgmIndex;   //背景音乐索引
    private float volume=1;   //默认初始音量为1
    private void Awake()
    {
        if (instance != null)
            Destroy(instance.gameObject);
        else
            instance = this;
    }
    private void Update()
    {
        if (!isPlayBGM)
            StopBGM();
        else
        {
            if (!bgm[bgmIndex].isPlaying)
                PlayBGM(bgmIndex);
        }
    }
    /// <summary>
    /// 播放音效
    /// </summary>
    /// <param name="_sfxIndex">音效文件对应索引</param>
    public void PlaySFX(int _sfxIndex)
    {
        if (sfx[_sfxIndex].isPlaying)   //如果音效正在播放,那就不重复播放了
            return;
    }
    /// <summary>
    /// 停止播放音效
    /// </summary>
    /// <param name="_sfxIndex"></param>
    public void StopSFX(int _sfxIndex)
    {
        sfx[_sfxIndex].Stop();
    }
    /

本文标签: 背景音乐 助力打造 声音掌控