zoukankan      html  css  js  c++  java
  • Unity3D播放背景音乐

    Unity3D播放音乐主要使用到三个类:AudioListenerAudioSourceAudioClip

    每一个场景仅能有一个AudioListener,当数量多于1是就会提示错误。如果说我们需要多个场景共享同一个背景音乐,我们可以使用单例来管理音乐。

    using UnityEngine;
    using System.Collections;
    
    public class AudioManager : MonoBehaviour {
        
        private static AudioManager instance = null;
        
        public AudioSource audioMgr;
            
        private AudioClip ac;
        private string curMusicName = "";
        
        public static AudioManager Instance
        {
            get
            { 
                return instance;
            }
        }
        
        void Awake()
        {
            if (instance != null && instance != this)
            {
                Destroy(this.gameObject);
            }
            else
            {
                instance = this;
            }
            
            DontDestroyOnLoad(this.gameObject);
        }
        
        public void  Play(string fileName)
        {
            if (!fileName.Equals(curMusicName))
            {
                ac = Resources.Load("Audio/"+fileName) as AudioClip;
                audioMgr.clip = ac;
                audioMgr.Play();
                curMusicName = fileName;
            }
        }
        
        public void Stop()
        {
            audioMgr.Stop();
            curMusicName = "";
            Debug.Log("Stop background music");
        }
    }

     当然,我们也可以使用Unity Music Manager 音乐管理插件这个插件。

  • 相关阅读:
    Java杂项
    JFrog Artifactory
    TestNG+Selenium
    Linux杂项
    Java
    Spring Boot
    学习ThinkPHP第一天
    linux下文件解压
    php中require_once与include_once的区别
    ubuntu下的wps office for linux
  • 原文地址:https://www.cnblogs.com/UnrealEra/p/6529974.html
Copyright © 2011-2022 走看看