Presentation is loading. Please wait.

Presentation is loading. Please wait.

遊戲設計 Audio.

Similar presentations


Presentation on theme: "遊戲設計 Audio."— Presentation transcript:

1 遊戲設計 Audio

2 Audio Audio三項基本元件: Audio Clip Audio Listener Audio Source

3 Audio Clip 代表一段音訊。 可匯入.aif .wav .mp3 .ogg等音訊檔案。
可調整的選項包括壓縮格式、品質、讀取形 式等,和遊戲效能有關連。 需考慮遊戲架構、音訊被播放的時機、音訊 的長度等等,才能選出最適合的參數。 維持預設即可,不會影響遊戲內容表現。

4 Audio Listener 接收來自場景中Audio Source發出的音效, 輸出到喇叭。
大部分情況下,Audio Listener會附加在 Main Camera上,模擬從玩家視角聽到的音 效。 會根據Audio Source的設定,綜合兩者距離 差計算聽到的音量。如果有兩者之間有速度 差,也會產生都普勒效應。

5 Audio Source 代表一個聲音的來源,播放一段Audio Clip。 可設定音量、音高、2D/3D、與其他效 果的混合比重等。 靜音
開始就播放 循環播放 最大可被聽見的範圍 代表一個聲音的來源,播放一段Audio Clip。 可設定音量、音高、2D/3D、與其他效 果的混合比重等。

6 Audio Source GameObect裡可以調整音量與距離的關係。 (如右圖的曲線,與物體距離為0時音量最大 ,500公尺時音量為0)
可以利用調整曲線去控制音量的一致。 調整成水平線音量就會均等 可以拖曳這個點去調整曲線

7 Audio Source AudioSource.volume: 0~1的浮點數,表示音量。
AudioSource.pitch: 音高,-3~3的浮點數,加速/減速音訊播放速度。 AudioSource.spatialBlend: AudioSource與AudioListener的距離如何影響音量。 0表示完全不影響,即2D音效,如背景音樂。 1表示完全受到距離影響,即3D音效,如場景中NPC的腳步聲。

8 範例:AudioSource.unity 嘗試各種不同的AudioSource效果。

9 AudioSource 有時候,某些事件發生後會需要播放一段短暫的音效。
UI按鈕音效。 爆炸聲。 角色被攻擊的慘叫。 AudioSource.playOneShot: 適合參數一樣的音效,如UI音效,或主角發出的所有聲音。 AudioSource.playClipAtPoint: 適合即時產生在場景某處的3D音效,如爆炸聲。

10 AudioSource.PlayOneShot
需要一個AudioSource Component。 使用該Audio Source,播放一段Audio Clip。 不會更改該Audio Source目前的clip。 Audio Source任何的參數變化/狀態變化都會 影響播放中的OneShot。 可以同時呼叫PlayOneShot多次,彼此之間不 互相影響。 播放以後沒辦法獨立暫停/取消。

11 AudioSource.PlayClipAtPoint
AudioSource class的靜態成員函式,不需要AudioSource實體。 在世界座標指定的位址播放一段Audio Clip。必定為3D Sound。 場景中會產生一個One shot audio物件,播放完會自我刪除。

12 Audio Effects 音效元件本身不發出聲音,但可以影響Audio Source發出的聲音 或Audio Listener聽到的聲音。
音效元件: Audio Mixer + Audio Effect Audio Filter Reverb Zone

13 Audio Mixer + Audio Effect
控制Audio Source混合的順序,每一次混和都 可以加入不同的Audio Effect。 請參閱文件:

14 Audio Filter 直接對物件發出/聽到的音效做出filter效果。 對Audio Source使用: 影響發出的聲音。
對Audio Listener使用: 影響聽到的所有聲音。 Component的順序會影響filter套用的順序。 對Audio Listener聽到的所有聲音,先做low pass(過濾掉頻率高於5000hz的聲音),再做chorus(合唱) filter。

15 Reverb Zone Reverb,殘響,用來模擬聲音在具有障礙物 的環境中的反射/折射/繞射綜合產生的複雜 效果。
使用時機如:玩家走進山洞中時,腳步聲會 產生回音。此時只要將山洞整個包在Reverb Zone中,所有位於其中的Audio Source和 Audio Listener都會自動受到影響。 有各項環境參數可調整,與一般電腦中的混 音軟體相似。 內建的 混音效果

16 範例:ReverbZone.unity 當角色進入Reverb Zone時,腳步聲會變化,模擬洞穴的回音。

17 Microphone Class 從可用的聲音輸入裝置(麥克風、網路攝影機)錄製音效為一段 AudioClip。
在Android上需要RECORD_AUDIO權限。 沒有UI/Component可使用,只能直接寫C#腳本。 注意:呼叫Microphone.Start()會產生AudioClip的meta資料, 此時讀不到任何聲音資料,實際資料在呼叫Microphone.End()之 後才會寫入!

18 Microphone Class 開始錄音: Microphone.Start (麥克風名稱,循環錄音,錄音時間(秒),取樣頻率);
當錄音時間超過設定的錄音時間時,會從最開始處覆蓋掉 開始錄音: Microphone.Start (麥克風名稱,循環錄音,錄音時間(秒),取樣頻率); 結束錄音: Microphone.End (麥克風名稱); 播放錄音: AudioSource.Play(); ex. AudioSource source; //AudioSource元件 source.clip = Microphone.Start ("", false, 5, 44100); //開始錄音 Microphone.End (""); //結束錄音 source.Play(); //播放

19 範例:RealTimeMicrophone.unity
即時偵測音量大小。

20 範例:AudioRecord.unity 錄製一段音效之後播出。


Download ppt "遊戲設計 Audio."

Similar presentations


Ads by Google