日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[Unity 3D] 使用Audio Mixer分别控制主音量、背景音乐和其他音效

發(fā)布時間:2023/12/29 编程问答 72 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [Unity 3D] 使用Audio Mixer分别控制主音量、背景音乐和其他音效 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前言

在游戲中,通常我們需要控制整個游戲的主音量(全局音量),并且單獨控制背景音樂和其他音效(攻擊、爆炸之類)的音量,這時我們可以用Audio Mixer來解決。

如果文章中有哪些地方寫的不對, 歡迎指出。

?

提醒

在這篇教程中我將重新創(chuàng)建一個簡單的工程來給大家演示,并且我當前使用的Unity版本為2018.1.1f1。

本文并非零基礎(chǔ)教程,但是寫了有點太詳細,且有大約30張圖,所以又臭又長...

工程中用到3個音頻文件作為測試,分別為背景音樂、玩家攻擊和敵人爆炸。

?

正文

1、新建工程導(dǎo)入資源

將3個音頻文件放在Audio目錄下:

?

2、創(chuàng)建音量調(diào)節(jié)面板UI

?創(chuàng)建了3個滑動條分別控制主音量、音樂和音效,并且將滑動條的默認值設(shè)為1:

?

3、創(chuàng)建聲音播放源

(1)背景音樂

創(chuàng)建一個空物體(GameObject)來作為背景音樂的載體,改名為Background Music,添加一個Audio Source組件(要使用Audio Mixer控制音量必須要用Audio Source來播放音頻),將背景音樂音頻文件拖到AudioClip中,勾選Loop讓背景音樂循環(huán)播放:

(2)玩家攻擊音效

創(chuàng)建一個空物體改名為Player,添加Audio Source組件,將玩家攻擊音效拖入AudioClip,取消勾選Play On Awake:

?并且添加了一個名為Player的腳本(腳本放在Scripts文件夾下)來模擬玩家攻擊播放攻擊音效,代碼如下:

using System.Collections; using System.Collections.Generic; using UnityEngine;public class Player : MonoBehaviour {private AudioSource audioSource;void Start (){audioSource = GetComponent<AudioSource>();}void Update () {if (Input.GetKeyDown(KeyCode.Q)){audioSource.Play(); // 按下Q鍵播放玩家攻擊音效}} }

(3)敵人爆炸音效

和設(shè)置Player步驟相同,只不過物體和腳本名變成了Enemy,播放按鍵設(shè)為E,拖入敵人爆炸音效,取消勾選Play On Awake:

?

3、創(chuàng)建Audio Mixer

1. 在Audio文件夾下創(chuàng)建Mixers文件夾,右鍵點擊Mixers文件夾 --> Creat --> Audio Mixer:

2. 創(chuàng)建后改名為MasterMixer,我們用這個Audio Mixer來控制全局音量;雙擊打開我們創(chuàng)建的MasterMixer,將打開的窗口拉出來方便我們查看:

3. 接下來我們單擊選擇Groups下的Master,再點擊Groups右邊的 + 添加成員;我們需要創(chuàng)建兩個成員,分別命名為Music和SoundEffect:

4. 我們會發(fā)現(xiàn)MasterMixer下多出了幾個東西

5. 我們要用Music成員來控制背景音樂,所以我們把Music成員拖到Background Music物體的Audio Source組件下的Output中:

6. 然后我們點擊Mixers右邊的 + ,再創(chuàng)建一個名為SoundEffectMixer的Audio Mixer,我們用這個Mixer而來管理玩家攻擊和敵人爆炸音效,并且將這個Mixer也放到Mixers文件夾下,方便管理:

7. 然后我們選擇剛創(chuàng)建的SoundEffectMixer,單擊選擇Master,點擊Groups右邊的 + ,創(chuàng)建兩個成員,分別為PlayerAttack和EnemyExplosion,分別代表玩家攻擊和敵人爆炸音效:

8. 我們再次單擊左鍵選擇SoundEffectMixer,拖到上面的MasterMixer,然后會彈出一個窗口,選擇SoundEffect:

9. 將PlayerAttack成員拖到Player物體的Audio Source組件下的Output中;

將EnemyExplosion成員拖到Enemy物體的Audio Source組件下的Output中:

10. 我們現(xiàn)在看一下Mixer和成員間的層級關(guān)系:

現(xiàn)在我們可以通過MasterMixer下的Master來控制全局主音量,通過Music來控制背景音樂音量,通過SoundEffect來控制玩家攻擊和敵人爆炸音效。

?

4、暴露參數(shù)

我們需要先將Master、Music和SoundEffect的參數(shù)暴露(Expose)出來,這樣我們才可以通過代碼去控制音量:

1. 首先暴露出Master的參數(shù):

2. 然后點擊Exposed Parameters,選擇我們剛暴露出來的Master的參數(shù),按下F2更改名字為MasterVolume:

3. 對Music和SoundEffect進行同樣的操作(1,2步操作),然后我們就有3個暴露出來的參數(shù):

?

5、控制音量

現(xiàn)在我們有了參數(shù)就可以讓我們控制音量了,那么接下來就進行音量的控制:

1. 在Menu Canvas(也可以新建一個空物體,隨意)下新建一個腳本名為AudioManager,代碼如下:

using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Audio;public class AudioManager : MonoBehaviour {public AudioMixer audioMixer; // 進行控制的Mixer變量public void SetMasterVolume(float volume) // 控制主音量的函數(shù){audioMixer.SetFloat("MasterVolume", volume);// MasterVolume為我們暴露出來的Master的參數(shù)}public void SetMusicVolume(float volume) // 控制背景音樂音量的函數(shù){audioMixer.SetFloat("MusicVolume", volume);// MusicVolume為我們暴露出來的Music的參數(shù)}public void SetSoundEffectVolume(float volume) // 控制音效音量的函數(shù){audioMixer.SetFloat("SoundEffectVolume", volume);// SoundEffectVolume為我們暴露出來的SoundEffect的參數(shù)} }

2. 將MasterMixer拖到AudioManager腳本上:

3. 然后我們將3個滑動條分別綁定這3個函數(shù):

4. 將3個滑動條都綁定號函數(shù)后,我們就可以通過滑動條來分別控制Master、Music和SoundEffect的值了:


5.?但是現(xiàn)在滑動條只能讓參數(shù)的值在1和0間變化,聲音大小沒有變化,所以我們需要修改滑動條的最小值和最大值來解決;

我們先要測試下聲音的大小區(qū)間,點擊Edit in Play Mode,拖動滑動塊,找出聲音最小和最大的值:

6. 然后我們修改滑動條的最小值和最大值:

7. 全部滑動條都調(diào)整好了之后我們就可以正常調(diào)節(jié)音量的大小了;

(1)主音量控制全局音量(包括了背景音樂和音效)

(2)音樂控制背景音樂

(3)音效控制玩家攻擊和敵人爆炸音效

?

4、結(jié)束語

完結(jié)撒花,累死我了...

總結(jié)

以上是生活随笔為你收集整理的[Unity 3D] 使用Audio Mixer分别控制主音量、背景音乐和其他音效的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 少妇视频在线观看 | 国产美女免费无遮挡 | 粉色视频免费观看 | 欧美一级色图 | 少妇呻吟视频 | 五月天综合在线 | 一区二区三区国产av | 久久三级 | xx在线视频| 国产欧美一区二区三区四区 | 日韩欧美一区二区三区在线 | 国产精品一二区 | 免费av入口 | 91久久精品国产 | 精品在线观看一区 | 欧美三级免费看 | 国产成人黄色 | 波多野结衣成人在线 | 姐姐的秘密韩剧免费观看全集中文 | 亚洲AV无码成人精品区先锋 | 手机看片福利永久 | 免费在线看a | 午夜剧场福利 | 国产精品一区二区免费看 | 亚洲大尺度在线 | 在线免费观看视频黄 | 色欲无码人妻久久精品 | 99热热热| 婷婷av在线| 久久久久久久久久久久久久国产 | 高潮毛片 | 好看的中文字幕 | 日本不卡一区二区三区 | 人妻一区二区三区视频 | 国产一区二区三区视频网站 | 男生c女生 | 97视频一区二区 | 激情综合视频 | 中文字幕日产av | 亚洲福利电影 | 樱花影院电视剧免费 | 91视频国产免费 | 欧美日韩一区二区三区在线观看 | 成人网页在线观看 | 97精品人妻一区二区三区在线 | 丰满大乳国产精品 | 日韩久久久久久久久久久 | 亚洲1区 | 亚洲精品久久久久久久久久久久久 | 午夜久久剧场 | 男生女生插插插 | 欧美综合色 | 综合色爱| 台湾佬美性中文娱乐网 | 久久精品精品 | 国产白浆在线观看 | 亚洲精品国产精品乱码不99热 | 91亚洲影院 | 黄视频国产| 亚洲在线色| 国产福利不卡视频 | 亚洲欧美国产精品久久久久久久 | 日韩av网站在线观看 | 成人黄网免费观看视频 | 香蕉视频在线免费播放 | 欧美在线v| 91超碰在线免费观看 | 中国黄色网址 | 久久黄色 | 一卡二卡精品 | 欧美第一页浮力影院 | 国产黄色视 | 久操色 | 丝袜诱惑一区 | 国产91综合一区在线观看 | 成人激情片 | 99re这里 | 日韩中文字幕亚洲精品欧美 | 日韩精品一区不卡 | 欧美精品在线看 | 国产美女91呻吟求 | 成人毛片18女人毛片免费 | 亚洲国产福利 | 亚洲精品h | 黑人vs亚洲人在线播放 | 日日撸夜夜撸 | 苍井空张开腿实干12次 | 99热只有| 成人一二三四区 | 久久激情小说 | 韩国女同性做爰三级 | 日韩视频在线观看免费视频 | 视频国产精品 | 成年人网站免费看 | 男女激情免费网站 | 天天干天天操天天摸 | 伊人黄| 久久伊人免费 | 国产精品免费一区二区三区在线观看 |