Unity-音頻概述
如果游戲缺少某種音頻,無(wú)論是背景音樂還是其他音效,那么游戲是不完整的。Unity 的音頻系統(tǒng)既靈活而又強(qiáng)大。它可以導(dǎo)入大多數(shù)標(biāo)準(zhǔn)音頻文件格式,精通于在3D 空間中播放聲音,還可根據(jù)需要提供其他效果(比如回聲和濾波)。Unity 還可以通過(guò)用戶機(jī)器上任何可用麥克風(fēng)來(lái)錄制音頻,以便在游戲過(guò)程中進(jìn)行使用或存儲(chǔ)和傳輸。
基本理論
在現(xiàn)實(shí)生活中,人們聽到的聲音是由物體發(fā)出來(lái)的。聲音被感知的方式取決于許多因素。傾聽者可以粗略地分辨出聲音來(lái)自哪個(gè)方向,根據(jù)音量和音色判斷距離。由于多普勒效應(yīng),快速移動(dòng)的聲源(如墜落的炸彈或過(guò)往的警車)會(huì)隨著移動(dòng)而改變音高。此外,周圍環(huán)境也會(huì)影響聲音的反射方式,因此洞穴內(nèi)的聲音會(huì)產(chǎn)生回聲,但相同的聲音在露天環(huán)境中卻不會(huì)產(chǎn)生回聲。

為了模擬位置的影響,Unity 要求聲音源來(lái)自附加到對(duì)象的__音頻源__。然后,發(fā)出的聲音由附加到另一個(gè)對(duì)象(通常是主攝像機(jī))上的__音頻監(jiān)聽器__拾取。Unity 然后可以模擬音頻源與監(jiān)聽器物體之間的距離和位置的影響,并相應(yīng)地播放給用戶。此外還使用源對(duì)象和監(jiān)聽器對(duì)象的相對(duì)速度來(lái)模擬多普勒效應(yīng)以增加真實(shí)感。
Unity 無(wú)法僅根據(jù)場(chǎng)景幾何體來(lái)計(jì)算回聲,但您可以通過(guò)向?qū)ο筇砑觃_音頻濾波器__來(lái)模擬回聲。例如,您可以針對(duì)應(yīng)該來(lái)自洞穴內(nèi)的聲音應(yīng)用“回聲”濾波器。如果對(duì)象在具有猛烈回聲的地方來(lái)回移動(dòng),可以在場(chǎng)景中添加__混響區(qū) (Reverb Zone)__。例如,游戲中駕車穿過(guò)隧道。如果在隧道內(nèi)放置一個(gè)混響,那么汽車的發(fā)動(dòng)機(jī)聲音會(huì)在汽車駛?cè)霑r(shí)開始回響,當(dāng)汽車從另一側(cè)駛出時(shí),回聲會(huì)消失。
Unity?混音器 (Audio Mixer)?允許您混合各種音頻源,對(duì)音頻源應(yīng)用效果,以及執(zhí)行母帶制作 (mastering)。
音頻源、音頻監(jiān)聽器、混音器、音頻效果和混響區(qū)的手冊(cè)頁(yè)中提供了有關(guān)可用于獲得正確效果的眾多選項(xiàng)和參數(shù)的信息。
使用音頻資源
Unity 可使用與其他資源相同的方式導(dǎo)入?AIFF、WAV、MP3?和?Ogg?格式的音頻文件,只需要將文件拖入 Project 面板即可。導(dǎo)入音頻文件會(huì)創(chuàng)建音頻剪輯,然后可以將音頻剪輯拖動(dòng)到音頻源中,或通過(guò)腳本來(lái)使用音頻剪輯。音頻剪輯參考頁(yè)面提供了有關(guān)音頻文件的可用導(dǎo)入選項(xiàng)的更多詳細(xì)信息。
對(duì)于音樂,Unity 還支持音軌模塊,這些模塊使用短音頻樣本作為“編曲”,然后進(jìn)行安排以播放曲調(diào)。可以從?.xm、.mod、.it?和?.s3m?文件導(dǎo)入音軌模塊,但與普通音頻剪輯的其他使用方式大致相同。
音頻錄制
Unity 可以通過(guò)腳本來(lái)訪問(wèn)計(jì)算機(jī)的麥克風(fēng),并可通過(guò)直接錄音來(lái)創(chuàng)建音頻剪輯。Microphone?類提供了一個(gè)簡(jiǎn)單的 API 來(lái)查找可用的麥克風(fēng),查詢麥克風(fēng)的功能,以及開始和結(jié)束錄制會(huì)話。麥克風(fēng)的腳本參考頁(yè)面中提供了音頻錄制的更多信息和代碼示例。