1.簡介
Fmod是一種跨平臺的音頻引擎。采用Fmod作為音頻引擎的游戲包括Far Cry(孤島驚魂),?Tom?Clancy‘s?Ghost?Recon(幽靈行動),著名的World?Of?Warcraft(魔獸爭霸)。
Fmod官網是https://www.fmod.com/。
2.下載
需下載FmodStudio,打開官網后需要注冊后登陸才能下載
下載Studio
下載UnityPackage
在將UnityPackage導入Unity后,可以在Unity的菜單欄中找到Fmod選項。
3.FomdStudio介紹
打開fmod studio后,看到的大體界面是這樣的。
其中,左側有Events, Banks,Assets三個列。在fmod中,聲音的素材放在Assets中,編輯好的聲音事件Event在Events里,Banks里面存放bank文件,聲音事件Event只有先Assign to bank后,在執行build操作,才能在Unity中的菜單欄Fmod選項里的Event Browser中可以顯示出來。
最大的Editor部分則為聲音文件的操作區。
在Events,Banksia,Assets中都可以創建文件夾進行方便管理。
在Events中鼠標右擊在彈出的選擇框中選擇new event即可新建一個聲音事件Event,將Assets中的音樂素材拖入到Editor區域中,在點播放按鈕,就能夠聽到素材的聲音了。
在編輯區域內右擊,可以在彈出的選擇框內看到多種選項,有設置循環播放區域,添加標記,設置判定區域等。對聲音編輯感興趣的可以深入學習。
4在Unity中的使用
在studio中新建一個Event,在Assets中導入素材后,在Event添加聲音后,執行assign to bank,在執行Build操作后進行保存,就可以在Unity中進行調用并播放了。
打開unity,首先確保已經導入fmod的UnityPackage包,然后點擊在unity的菜單欄中的Fmod選項的Edit Setting,在下面的面板中在文件夾中選選中Fmod項目。
在Fmod選項里選中Event Browser在彈出的面板中就能看到fmod項目的event和bank。
接下來就是在代碼里調用了。
添加using FMODUnity,定義一個fmod的EventInstance,使用[FMODUnity.EventRef]就能夠在文件夾中選擇event的路徑,而不需要手動的寫事件在文件夾中的路徑
調用fmod中的RuntimeManager類中創建event的方法,就能夠根據事件在fmod項目中的路徑創建出EventInstance,在調用event的start方法就能夠播放這個事件。將腳本掛在場景中的空物體下,在運行場景,就能聽見聲音了。
在fmod中可以創建3D聲音事件或者是2D聲音事件,如果是3D聲音事件,在監聽腳本處于聲音事件的播放范圍內及能夠聽到聲音,反之,如果監聽腳本處于聲音事件的播放范圍,則聽不到聲音。
在場景中有個球體和正方體,如下圖,其中球體外的白色線圈為3D聲音的播放范圍。
在球體上添加腳本FmodStudioEventEmitter,如下圖,
在Evnet中選中fmod項目的3D事件,ovrride attenuatio勾選上則是設置聲音的播放范圍。在Play Event中設置object start則這個事件在unity運行的時候就會播放,不過只在設置的播放方位內播放。這時候在unity運行的時候,是聽不到聲音的,因為沒有添加監聽腳本。在正方體下添加FmodStudioListener腳本,然后移動正方體到球體的播放范圍內,這時候就能聽到聲音了,將正方體移出白色線圈外,這時候就聽不到聲音了。
5.聯調
fmod中的聯調能夠在unity運行的時候去調節事件中的參數,是聲音達到音樂制作者想要的效果。
在unity菜單欄中的Edit選項下的Project?Settings中的Player?Settings里。如下圖,
將Run In BAckground勾選上 ,這樣子在切換應用的時候unity還是能夠保持運行,這時候打開unity中應用到的fmod項目,
點擊最下方的Live Update Off,這時候按鈕變綠且變成Live Update On,表示已經進入聯調模式。
作者:Su_f358
鏈接:http://www.lxweimin.com/p/c697a9c9022c
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權并注明出處。