互動音樂的五種常用設計理念
互動音樂,顧名思義就是能夠與玩家的操作行為進行互動的遊戲音樂。對這個概念完全陌生的朋友可以看一下上期的文章
在遊戲中,互動音樂的設計理念可以總結成下面五種:
1. 分層(Layering)
所謂分層,就是指將音樂中不同的樂器拆分開來,各自有獨立的播放邏輯。同一首音樂可以根據不同樂器間的組合,產生不同的狀態,營造不同的氛圍。
最簡單的分層,即為將音樂分為 AB 兩組樂器,在非戰鬥狀態下,只播放 A 組的樂器,而進入戰鬥狀態時,加入 B 組樂器。離開戰鬥狀態後 B 組樂器也隨之消失。
較為複雜的分層,可能有4組以上的樂器,不同樂器組間的排列組合,可以產生數十種不同狀態的音樂。每一組樂器可以設定在不同遊戲狀態間漸變的獨特引數。比如分為 ABCD 四組樂器,玩家探索場景時播放 A 組,觸發劇情時加入 B 組,進入戰鬥時去掉 B 組但加入 C 組,C 組的音量可以根據敵方單位的數量來動態變化,結束戰鬥後去掉 AC 兩組加入 D 組。
分層音樂的優點在於即時反饋的高度變化性。玩家的節奏不可控,因此需要音樂能夠及時根據玩家節奏產生變化。在分層音樂中,每一層的長度都是整首音樂,在樂器組進入和退出時,音樂只是將音量淡入淡出。無論音樂進行到什麼位置,進入的樂器組都保持對齊在相同的位置,而非從頭開始。
然而,這也代表著分層音樂需要佔用較高的效能資源。在計算機中,無論音樂的複雜程度,消耗的 CPU 都是以同時播放的音軌為單位線性累加的。也就是說,一個4組的分層音樂,在全部同時播放時需要佔用單軌音樂4倍的效能資源。在只播放其中一層時,其他靜音的三層一般會被音訊引擎送到虛擬通道,只記錄播放位置而不播放音樂,從而大幅降低 CPU 消耗。
從音樂的角度上來說,分層音樂的優點在於將各個樂器獨立出來,能夠產生不同的變化方式。同一首音樂,可以因為樂器組合的不同,而產生完全不同的效果,但玩家仍然能意識到不同的樂器組來自同一首音樂。
而分層音樂也有其音樂上的侷限性。分層音樂往往來自一個大迴圈,因此在和聲進行與曲式上能夠發揮的空間較為有限。同時,縱向的樂器可變化性,也犧牲了橫向的音樂發展性。比如一首音樂一般從頭到尾會產生相當多的變化,不管是和聲調性發展,還是配器的變化。而一旦採用分層的設計方法,音樂就不得不從頭到尾保持相對一致的感覺,使用相同的樂器。
因此,分層音樂最佳的應用場景為需要在探索/戰鬥狀態下切換的背景音樂。分層音樂如果設計得當,能夠為玩家提供很多有用的隱含資訊。遊戲中可以採用音樂先行的方法,暗示即將出現的事件。這在電影配樂,尤其是恐怖片的配樂中是一種常用的做法。在玩家進入某個陌生的暗室時,加入一層表現氣氛緊張的樂器組,可以增加玩家的沉浸感,預判到即將到來的危險。
分層音樂還可以用在同一場景不同狀態的切換,比如遊戲中的晝夜週期。同樣一首音樂,在白天與晚上,通過不同的樂器進行表現,能夠達到非常好的氛圍烘托效果。
將各個樂器分層,每個樂器可以獨立通過引數控制變化(中介軟體 Wwise)
2. 分支(Branching)
分支音樂類似於遊戲劇情的分支。玩家不同的行為會導致不同的劇情發展,因此也需要不同的音樂。
分支的特點和分層幾乎完全相反。分層音樂的變化來自其縱向樂器組之間的互動,而分支音樂的變化來自音樂橫向的不同發展。
而分支音樂不僅僅是簡單的場景音樂切換。分支音樂的設計,要求不同場景的音樂能夠完美地銜接,聽上去像是一首音樂的一個部分跳轉到了另一個部分,而不是兩首完全不同的音樂。如果兩首音樂的風格差別較大,往往還需要設計專門的轉接段落來完成音樂之間的過渡變化。
相比於分層音樂,分支音樂更加考驗設計師和作曲家的音樂功底,尤其是在分支情況較多時。分支音樂的轉接情況會產生 O(n*(n-1)) 的複雜度。比如遊戲需要在三個場景之間互相切換,就需要考慮 3*2=6 種不同的轉接情況。要想讓任意兩段音樂之間的銜接都非常自然好聽,需要精妙的設計。
由於分支音樂的變化來自於橫向發展,因此在曲式結構、和聲進行等方面,相比於分層音樂,具有了較高的自由度。同時,分支音樂不需要同時播放多條音樂,節省了效能的佔用。然而對於音樂本身,可變化性非常侷限。分支音樂無法像分層音樂一樣,能夠立即對遊戲中的事件進行反饋,往往需要等到音樂中當前樂句或者段落結束時才能夠做出相應的變化。
因此,分支音樂最佳的使用場景為可互動的帶有劇情變化的音樂。比如遊戲中人物正在進行對話,每說一句話玩家需要點一下,或者選擇相應的回答。分支音樂在音樂連貫性和反饋及時性中需要進行取捨,兩者不可得兼。如果想要保證音樂的連貫性,就只能在每一個樂句結尾時觸發轉接;如果想要有更及時的反饋,可以將轉接的觸發間隔設為每小節,甚至每拍子。具體的情況需要根據遊戲的需求來決定。
3 個不同樂段之間的隨機轉接以及對應的 9 個過渡段落(中介軟體 FMOD)
3. 隨機(Random)
遊戲音樂中,最困擾玩家的問題就在於如果需要在同一場景中消耗大量時間,音樂會變得非常重複,繼而導致玩家聽膩,關閉遊戲聲音。高成本的做法當然是製作多首不同的音樂,讓玩家可以選擇。但其實單首音樂加入不同的隨機變化,即可達到類似的效果。
不過嚴格來說,單純隨機不能算是互動音樂,必須配合其他的設計才能展現出其效果。比如在使用分層音樂的時候,每一層中的樂器,相比於播放固定的旋律,會從幾條旋律中隨機選擇一條播放,或者隨機選用不同的樂器播放同樣的旋律;在使用分支音樂的時候,從多條相似的音樂中隨機選取一條播放;在一些高度模組化的音樂中,還可以隨機打亂音樂的順序播放。這樣增加了音樂的變化,聽起來不那麼重複,但同時也增加了音樂佔用的硬碟空間。遊戲開發者和音訊設計師需要兼顧到音樂效果與遊戲大小的平衡。
在隨機的選項中加入空白也可以有很好的效果。音樂分為多個樂器組時,每個樂器組中某個樂器有一定概率完全不播放,可能反而會有更好的效果。太多層音樂同時播放,也會帶來一定的混亂。
從四種不同的鼓 loop 中隨機選擇一種播放,避免音樂過於重複(中介軟體 Wwise)
4. 加花(Stinger)
加花一般用於對於玩家行為的即時反饋,通過音樂的方式給玩家一個提示或者獎勵。
加花根據觸發時機分為兩種情況:第一種是即時性的,不需要等待,像音效一樣立即觸發。這樣的加花,一般可以等同於“音樂性的音效”,比如玩家找到了一個關鍵道具時播放的幾個音符。第二種加花則需要與音樂同步,往往是等到下一拍子或者下一小節觸發。
比如遊戲中的 Boss 每 30 秒會釋放一次終極技能,需要玩家進行閃避。音樂可以在 Boss 準備放終極技能的時候播放一段加花,提醒玩家做好準備。又或者是玩家吃到 buff,播放一個或幾個音符,但需要和音樂對齊以增強協調感時,也可以採取加花而非直接播放音效的方法來設計。
加花音樂在設計時要特別注意一點,就是與音樂的和聲保持和諧。如果音樂進行了轉調,就需要在不同位置播放不同調的加花,或者選取不同調之間共有的音符來編寫加花旋律,以免出現不和諧的音樂,造成反效果。
根據音樂播放位置選擇符合當前和絃進行的加花樂句播放(中介軟體 Elias)
5. 實時處理(Dynamic Processing)
互動音樂的設計不光包含在音樂的製作上,在音樂進入遊戲之後的聲音處理上,也可以大做文章。
最常用的是通過濾波器對音樂進行處理。比如玩家在潛入水中的時候,聽到的聲音都會發悶,因為高頻聲波在水中的傳播效果很差。在玩家進入水下時,給音樂也加上一個低通濾波器(Low Pass Filter),即可實現同樣的效果。類似的,當玩家飛在天上的時候,也可以為音樂增加一個高通濾波器,只保留音樂中高頻的部分,讓玩家聽起來就有懸空感。
音樂的左右聲像也可以進行實時變化。在某些情況下,遊戲中的音樂來自遊戲裡的物件或人物,比如會唱歌的 NPC。這時候對應的音樂應當做成3D 擺放,就能實時演算與玩家之間的相對位置,讓音樂聽起來更加真實立體。
除此之外,還可以加入一些特殊的效果器,做出一些酷炫的效果。比如玩家在進入空曠的室內時,可以選擇為音樂也加入一定量的混響;玩家遇見強大敵人時,可以為一些樂器加入失真效果等等。這些都取決於設計師對於遊戲音樂表現力的把控,同時也要兼顧到效果器帶來的 CPU 效能消耗。
根據玩家勝利進度,對某一樂器組進行濾波器頻率和音量變化(自制 Unity 互動音樂外掛)
結束語
以上五點並不是只能單獨出現,可以以任何的方式進行組合。比如在分支音樂的基礎上,可以為每一段分支再加入分層,即可兼顧兩者的優點(但複雜度也會大幅提升)。在加花中加入隨機的元素,也是一個很酷的設計。設計的理念不是固定的,需要根據遊戲的需求,以及效能的限制進行具體的設計分析。這就好比裝修房子出設計圖,需要根據不同的房型和業主的喜好,採取不同的裝修風格和設計方案。
互動音樂還需要考慮成本問題。同樣是做一首2分鐘的音樂,做出分層/分支/隨機效果,需要的時間精力或者外包金錢成本,會明顯超過簡單的2分鐘單軌。取決於遊戲對音訊表現力的需求,互動音樂的使用程度也需要進行取捨,在不必要或者玩家不太可能聽出來的情況下也需要避免“過度設計”。
在之後的文章中,我會選取一些互動音樂設計優秀的遊戲(以獨立遊戲為主)以及玩法設計上有創新想法的音樂遊戲,進行一些例項的分析。音訊設計師和遊戲配樂作曲家可以從中學習更多的互動音樂用法,也可以幫助遊戲設計師加深對於互動音樂的理解。
via:indienova
相關文章
- Golang 常用的五種建立型設計模式Golang設計模式
- 《Divinuet》的互動音樂系統 – 第 2 部分
- 《Divinuet》的互動音樂系統 – 第 1 部分
- 互操作性的區塊鏈系統設計理念區塊鏈
- 五線譜入門,程式設計師也可以玩音樂程式設計師
- 關於動態音樂設計的思考-Part 1-設計分類學
- Spring設計理念Spring
- [MAUI]模仿網易雲音樂黑膠唱片的互動實現UI
- 《VALORANT》武器設計理念
- DDD聚合五種設計方法
- 互動設計法則
- 淺談《動物森友會》背後的設計理念
- 幾種常用設計模式的簡單示例設計模式
- 快速梳理23種常用的設計模式(下篇)設計模式
- 語音互動的前世今生
- 互動的音符躍起又落下:音樂節奏類遊戲的興衰遊戲
- 實驗一原型設計-汽水音樂app原型APP
- 五種Java程式設計高效程式設計方法 - BablaJava程式設計
- 網易雲音樂資料互動—async&await實現版AI
- 互動設計原則分析
- Linux 上最好的五款音樂播放器Linux播放器
- 基於《十三機兵防衛圈》的音訊整合設計理念及工程分享音訊
- Mac動畫互動設計軟體Mac動畫
- 科技展廳設計的理念分析
- UI | 一組有趣的互動動效設計作品UI
- 深入解讀.NET MAUI音樂播放器專案(三):介面互動UI播放器
- 從3DS到Switch,深度剖析《動物之森》的設計理念3D
- Mac音樂視覺化程式設計軟體Mac視覺化程式設計
- 現代雲原生設計理念
- Principle for Mac(互動原型設計工具)Mac原型
- shell程式設計之免互動程式設計
- 《危城餘生》的聲音是這樣製作的 #1:前期音樂框架設計框架
- 網頁抓取五種常用的HTTP標頭網頁HTTP
- python 程式設計師必備的五大常用庫Python程式設計師
- Principle for Mac(動畫互動設計軟體)Mac動畫
- Java專案中常用的的五大設計原則Java
- 如何利用AI做互動設計?北美互動設計師推薦10個顯著幫助UI/UX設計的AI工具!AIUIUX
- 基於Android的音樂播放器的設計與實現Android播放器