Unity中的Audio组件

unity音乐播放

首先需要添加Audio Source组件。
使用内部API实现音乐的播放与控制
Clip:声音片段
Pause:暂停
Stop:停止
Play:播放
Loop:循环播放
Volume:音量大小
Time:播放时长

PlayOnAwake();是否一开始播放


3C0E87J7X0O4JQ4RFS69E91.png
    //音乐文件
    public AudioSource music;
    //音量
    public float musicVolume;
    void Start()
    {
       //设置默认音量
        musicVolume = 0.5F;
    }
    void OnGUI()
    {
        //播放音乐按钮
        if (GUI.Button(new Rect(10, 10, 100, 50), "Play music"))
        {
            //没有播放中
            if (!music.isPlaying)
            {
                //播放音乐
                music.Play();
            }
        }
        //关闭音乐按钮
        if (GUI.Button(new Rect(10, 60, 100, 50), "Stop music"))
        {
            if (music.isPlaying)
            {
                //关闭音乐(重头开始)
                music.Stop();
            }
        }
        //暂停音乐
        if (GUI.Button(new Rect(10, 110, 100, 50), "Pause music"))
        {
            if (music.isPlaying)
            {
                //暂停音乐 ,这里说一下音乐暂停以后点击播放音乐为继续播放
                //而停止以后在点击播放音乐则为从新播放
                //这就是暂停与停止的区别
                music.Pause();//继续开始
            }
        }
        //创建一个横向滑动条用于动态修改音乐音量
        //第一个参数 滑动条范围
        //第二个参数 初始滑块位置
        //第三个参数 起点
        //第四个参数 终点
        musicVolume = GUI.HorizontalSlider(new Rect(160, 10, 100, 50), musicVolume, 0.0F, 1.0F);

        //将音量的百分比打印出来
        GUI.Label(new Rect(160, 50, 300, 20), "Music Volueme is " + (int)(musicVolume * 100) + "%");

        if (music.isPlaying)
        {
            //音乐播放中设置音乐音量 取值范围 0.0F到 1.0
            music.volume = musicVolume;
        }
    }

    public  AudioSource or;
    public AudioClip audio1, audio2;
    void Start () {
        or = transform.GetComponent();
    }
    void Update () {
        if (Input.GetKeyDown(KeyCode.Q))
        {
            Audio11();
        }
        if (Input .GetKeyDown(KeyCode.W))
        {
            Audio22();
        }
    }
    void Audio11()
    {
        or.clip = audio1;
        or.Play();
    }
    void Audio22()
    {
        or.clip = audio2;
        or.Play();
    }

你可能感兴趣的:(Unity中的Audio组件)