最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Unity Audio -- (3)創(chuàng)建3D音效

2023-05-10 20:13 作者:vivo119  | 我要投稿

? ? ? ? 本節(jié)會添加場景中小瀑布的音效。小瀑布的音效會有一個作用范圍,也會根據(jù)角色所處的位置不同,產(chǎn)生不同的效果。

添加小瀑布的聲音

? ? ? ? 1. 在Hierarchy中,點擊右鍵,選擇Audio -> Create Audio Source,將這個新的Audio Source名字設(shè)為“Waterfall Audio”。

? ? ? ? 2. 在場景試圖中,移動Audio Source到小瀑布的底部,在池子和瀑布接觸的位置。

? ? ? ? 3. 找到AmbientWater音頻片段(Assets > CreativeCore_Audio > Audio目錄下),將它添加到Audio Source的Audio Clip變量中(推動或者點擊瀏覽按鈕選擇)。

? ? ? ? ? ? 場景中的小瀑布的音效,只要場景是激活狀態(tài),就應(yīng)該一直保持播放狀態(tài)。

? ? ? ? 4. 我們將Audio Source組件的Loop勾選上,讓音頻無限循環(huán)播放。

? ? ? ? 5.? 運行場景。

? ? ? ? ? ? ? ? 我們會聽到瀑布的聲音會一直持續(xù),但它的音量并不會隨著player和瀑布的距離變化而變化。這是因為Audio Source當(dāng)前被設(shè)置為了2D。一般來說,場景中類似瀑布的聲音源是存在于3D空間中的,因此Audio Source需要進一步調(diào)整。

? ? ? ? 6. 退出Play模式。

? ? ? ? 7. 設(shè)置Audio Source的Spatial Blend屬性為3D。

? ? ? ? ? ? ? ? 當(dāng)這個屬性設(shè)置為3D后,audio source的體積的最小和最大距離(場景視圖中Audio Source的兩個球體)就會起作用了。

? ? ? ? ?8. 調(diào)整一下Audio Source的minimum distance和maximum distance屬性,這個覆蓋范圍可以通過場景試圖來看,調(diào)整到合適的范圍即可。

? ? ? ? 9. 示例中的maximum distance大概設(shè)置為了10。

? ? ? ? ?嘗試運行看看效果,玩家要進入這個范圍后才會有聲音,并且音量會發(fā)生變化。

調(diào)整聲音的擴散角度

? ? ? ? 在進入下一項瀑布Audio Source的調(diào)整前,我們先來做個小實驗:

? ? ? ? 1. 進入Play模式。

? ? ? ? 2. 移動到Audio Source的Max Distance的外邊界,然后將角色轉(zhuǎn)到左邊和右邊,注意聲音有什么變化。

? ? ? ? ? ? ? ? 當(dāng)角色轉(zhuǎn)向左邊時,聲音似乎平移到了右邊的揚聲器中(可以理解為角色右邊耳朵更靠近音源),左邊揚聲器的聲音顯著降低或者完全消失。當(dāng)角色轉(zhuǎn)向右邊時,聲音在左邊更加明顯。我們最好使用耳機來感受這個實驗的效果。

? ? ? ? ? ? ? ? 我們聽到的聲音差異,是由3D聲音設(shè)置里的Spread值所控制的。默認(rèn)情況下,這個值是0,意味著揚聲器所發(fā)出的聲音是完全基于音源的位置信息的。從技術(shù)角度看這種行為是能講通的,但實際效果卻會顯得很不和諧,因為聲音就像是從一個揚聲器跳到了另一個揚聲器去了。

? ? ? ? 3. 仍然在Play模式下,將Spread設(shè)置為180。

? ? ? ? ? ? ? ? 此時我們會注意到,兩個揚聲器的聲音變得均衡了。Spread為180時,?去掉了揚聲器和audio source之間的位置關(guān)系,只會根據(jù)角色位置信息產(chǎn)生音量的變化。

? ? ? ? 4. 調(diào)整Spread值,直到我們找到一個聽起來沒問題的值,記住這個值。

? ? ? ? ? ? ? ? 當(dāng)發(fā)生轉(zhuǎn)向時,從左到右的聲音轉(zhuǎn)換應(yīng)該是和諧的,但會有點細(xì)微差異。我們以現(xiàn)實生活中的感知為例。當(dāng)我們一只耳朵更靠近音源時,肯定是更靠近音源的耳朵聲音更明顯,但另一只耳朵也并不是說就完全聽不到或者聲音變得非常小了。

? ? ? ? 5. 退出Play模式,將第4步記錄的值設(shè)置到Spread屬性中。

? ? ? ? ? ? ? ? Spread值一般設(shè)置到0-180之間,我們就能找到一個比較合適的值。但Spread值最大能到360。180-360之間的值實際作用和0-180是一樣的,但超過180后,聲音的通道會反轉(zhuǎn)。在某些情況下這種特性可能會起到特殊作用,但本場景中只要0-180之間的一個值即可。

探索對數(shù)滾降(Logarithmic Rolloff)

? ? ? ? 目前聲音在左右揚聲器之間的轉(zhuǎn)換已經(jīng)比較平滑了,但我們?nèi)匀粫⒁獾揭粋€問題。即便我們已經(jīng)在Max Distance距離之外,瀑布的聲音仍然是可以聽到的。Max Distance就好像是代表了聲音的最小音量,這是怎么回事呢?

? ? ? ? 造成這個問題的原因是音源的音量滾降( Audio Source’s Volume Rolloff)類型被設(shè)置為了對數(shù)滾降(Logarithmic Rolloff)。對數(shù)滾降的方式是真實世界總我們所感知聲音的近似,由于我們對場景進行了一些修改,這種方式的效果可能不是那么明顯。

? ? ? ? 1. 為了更好地理解對數(shù)滾降是如何工作的,我們將Max Distance設(shè)置回500。

? ? ? ? ? ? ? ? 修改后,我們應(yīng)該能看到上圖的曲線。圖中紅色線表示了音量隨著Audio Listener距離的增加而減小。這條曲線一開始的一小段距離內(nèi)降低地很快很陡,到后面會慢慢降低至0。這條紅色線代表了Audio Source的音量衰減率曲線。

? ? ? ? 2. 將Max Distance設(shè)置回10,觀察一下曲線有什么變化。

? ? ? ? 當(dāng)Max Distance被設(shè)置到了一個較小的值時,對數(shù)滾降方式無法達(dá)到達(dá)到它想要的衰減曲線(想想對數(shù)函數(shù)的曲線應(yīng)該不難理解)。它會嘗試應(yīng)用合適的曲線,但只能得到截短的曲線。我們可以看到最大距離10處,音量停在了0.3處。

? ? ? ? 對數(shù)滾降方式中的Max Distance的理解,有一點很重要。這個距離并不是說聲音聽不到的距離,而是聲音停止衰減的距離。聲音在超出這個距離之外的一段距離內(nèi)仍然會繼續(xù)按照結(jié)束的衰減率進行處理,但隨著距離增大,聲音最終會聽不到。

? ? ? ? 3. 我們點擊運行進入游戲,控制玩家慢慢遠(yuǎn)離瀑布,注意聽在什么地方瀑布的聲音無法再被聽到。

? ? ? ? 由于對數(shù)滾降方式的這些特性,它對于要從很遠(yuǎn)距離就能聽到的聲音的場景來說是不錯的選擇。但對于音源會在極短距離內(nèi)快速衰減的情況來說,又該怎么辦呢?

探索線性滾降(Linear Rolloff)

? ? ? ? 1. 將Volume Rolloff選項從Logarithmic改成Linear,注意曲線的變化:

? ? ? ? 我們可以從名字知道,線性滾降的曲線是一條直線,聲音的音量會以線性的方式遞減。最重要的是不像對數(shù)滾降,即便Max Distance較小,音量在最大距離處也會降低到0。

? ? ? ? 2. 運行場景,感受一下線性滾降和對數(shù)滾降的區(qū)別。

? ? ? ? 當(dāng)角色在Max Distance范圍外時,瀑布的聲音完全聽不到。但只要進入Max Distance范圍內(nèi),聲音會突然播放,聲音就像是憑空出現(xiàn)而不是逐漸放大。當(dāng)角色逐漸靠近音源時,聲音會平滑增長,這樣似乎還不錯,但這并非是聲音在真實世界中該有的現(xiàn)象。

? ? ? ? 線性滾降方式最佳的使用方式是用于吸引玩家注意某些物體,而不是用于環(huán)境音源。音量線性增加會讓玩家更容易判斷音源和玩家的距離,可以讓玩家知道他們的移動方向是否正確。舉一個神秘海域的例子大家應(yīng)該就明白了?!渡衩睾S?失落遺產(chǎn)》中,有一個道具是“女王的紅寶石”,這個道具能夠在接近寶藏的時候發(fā)出聲響。玩家越接近寶藏,聲音就越急促,玩家離開一定范圍,聲音就消失了(實際上頑皮狗是否是使用了線性滾降方式不得而知,但這個例子能比較好的理解線性滾降的場景)。

創(chuàng)建自定義的滾降曲線

? ? ? ? Unity也允許我們自定義滾降曲線。下面我們來看看這個功能。

? ? ? ? 1. 將Volume Rolloff修改成Custom,觀察一下曲線:

? ? ? ? 2. 運行場景,體驗一下效果。

? ? ? ? ? ? 這條曲線相比于線性曲線,已經(jīng)更加自然了。我們還可以進一步編輯曲線。

? ? ? ? 3. 選擇紅色曲線。

? ? ? ? 4. 選擇1.0標(biāo)記處的點,這會激活曲線的切線編輯:

? ? ? ? 5. 左鍵點擊并拖動切線,改變一下曲線的形狀。

? ? ? ? ?我們可能會需要在曲線上編輯更多的點,在曲線上點擊右鍵選擇Add Key可以新增一個編輯點。

? ? ? ? 接下來嘗試去改改新增點的切線。新增的點有左右兩條切線可以編輯。默認(rèn)情況下它們會一起移動,我們可以在右鍵菜單中選擇Broken來單獨編輯左右兩條切線。

? ? ? ? 6. 嘗試為瀑布編輯出一條最佳效果的曲線。然后運行場景,如果不滿意再次嘗試去編輯一下。

調(diào)整Audio Listener

? ? ? ? 我們還可能注意到了一個問題,當(dāng)角色進入到音源的范圍內(nèi)時,聲音會延遲一段距離后才播放。這是因為目前場景中的Audio Listener是掛在相機上的,相機和角色是存在一定距離的。

? ? ? ? 有一條比較好的通用原則是將Audio Listener掛在用戶要和虛擬世界進行交互的物體身上。比如對于第一人稱視角,將Audio Listener掛在Main Camera上是講得通的:這種情況下相機就是用戶的“眼睛”,眼睛和耳朵放到一起是合理的。本小節(jié)所使用的是一個third person controller,意味著用戶是通過角色來和虛擬世界進行交互的。因此Audio Listener應(yīng)該掛到角色身上。這就是說音效會基于角色位置來改變,這樣會更符合預(yù)期。

? ? ? ? 1. 在Hierarchy中選擇Main Camera,在Inspector中找到Audio Listener。

? ? ? ? 2. 點擊Audio Listener組件右上角的三個圓點,選擇Remove Componet移除該組件(也可以通過將左上角的勾去掉禁用這個組件)。

? ? ? ? 3. 在Hierarchy中選擇PlayerArmature游戲物體,在Inspetor中為其添加Audio Listener組件。

? ? ? ? 4. 運行場景再體驗一下有何不同。


Unity Audio -- (3)創(chuàng)建3D音效的評論 (共 條)

分享到微博請遵守國家法律
青岛市| 新密市| 百色市| 陕西省| 博客| 广元市| 准格尔旗| 怀远县| 安福县| 修武县| 巩义市| 进贤县| 新宁县| 新蔡县| 滨州市| 霍山县| 金山区| 格尔木市| 岚皋县| 蒲城县| 云龙县| 曲阳县| 陇西县| 乐至县| 吉隆县| 监利县| 辽宁省| 鹤峰县| 孟州市| 象州县| 尖扎县| 内乡县| 诸城市| 县级市| 靖宇县| 丹阳市| 分宜县| 年辖:市辖区| 建瓯市| 浦县| 白朗县|