Unity在一个场景中用滚动条调节音量大小,同时作用于多个场景

1、滚动条音量大小调节
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.Audio;

public class Music_Height : MonoBehaviour
{
    public AudioSource audiosource;
    public Scrollbar scrollbar;
    public static bool musiccomplete = false;//保存操作数据,当musiccomplete的值为true时,操作完成
    public static float musicheight;//保存当前滚动条的值

    private void Start()
    {
        scrollbar.value = audiosource.volume;//滚动条的初始值为音频的音量大小
    }

    void Update()
    {
        music_height();
    }

    public void music_height()
    {
        audiosource.volume = scrollbar.value;
        musiccomplete = true;
        musicheight = scrollbar.value;
    }
}

在第一个场景创建一个滚动条,挂载脚本,然后在脚本上添加音频控制器和滚动条。

2、音频控制
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.Audio;

public class Music_Controller : MonoBehaviour
{
    private AudioSource audiosource;

    private void Start()
    {
        audiosource = this.GetComponent<AudioSource>();
        if (Music_Height.musiccomplete)//判断音量大小操作是否完成
        {
            audiosource.volume = Music_Height.musicheight;
        }
    }
}

在第二个场景创建一个空物体,为空物体添加音频播放器(Audio Source)和音频控制脚本。回到第一个场景也添加一个音频控制脚本。

猜你喜欢

转载自blog.csdn.net/clown_sam/article/details/132742019