Unity - Audio Mixer について -
初めに
Audio Source の音量を一括で管理することができる Audio Mixer についてまとめます。
Index
Audio Mixer とは
Unity のオーディオミキサーでは、いろいろな音源をミックス(音量バランスや音色などを調整)したり、それにエフェクトをかけたり、マスタリング(最終調整)を行ったりすることができます。
前提知識
Unity では Audio Source、Audio Clip、Audio Listener の3つを用いて音を再生し、聞きとれるようにします。これらについては、こちらの記事をご覧ください。
Audio Mixer でできること
- サウンドのグループ化
グループごとにミュートにしたり、エフェクトをかけたりできる
- エフェクトをかける
エコーをかけたり、周波数の高い(低い)部分をカットしたりできる
- SnapShots(スナップショット:音量、エフェクトなどのすべての設定を保存)し、スクリプトから切り替え可能
- ダッキングができる
会話中は BGM の音量を下げるなど音量の調整ができる
実際に使ってみる
Audio Mixer を生成
Assetsを右クリック→Create→Audio Mixer で生成できます。
Audio Mixer ウィンドウを確認する
Window→Audio→Audio MixerをクリックするとAudio Mixer ウィンドウが表示されます。
グループ化
Audio Source のグループ化をします。
- Group の右にある + をクリックし、新しいグループが作る
Audio Mixer を確認すると作成したグループの Group Controller が作られていることが分かります。
- グループ化したい Audio Source の Output に Audio Mixer Group Controller をドラッグ&ドロップする
今回は BGM 用の Audio Source には BGM の Group Controller を、SE 用の Audio Source には SE の Group Controller をドラッグ&ドロップします。
実行してみる
Audio Mixer を使ってみます。動画のように、グループごとに音量を調整することができます。
Snapshots
Snapshots を使い、Audio Mixer の設定を保存、切り替えをします。
〇 保存は Snapshots の右の + をクリックすればできます。
Audio Mixer を確認すると Snapshots が保存されていることがわかります。
〇 Snapshots の切り替えはスクリプトから切り替えられます。
次の2つの関数を用いて、Snapshots の切り替えができます。
- AudioMixerSnapshot.TransitionTo
- AudioMixer.TransitionToSnapshots
AudioMixerSnapshot.TransitionTo は Snapshot に引数秒後に遷移させます。引数は float(遷移までの時間)になります。
AudioMixer.TransitionToSnapshots は複数の Snapshot の遷移をさせることができます。引数は AudioMixerSnapshot(複数のSnapshot), float(それぞれの Snapshot の重みづけ), float(遷移までの時間)になります。
Effect
グループごとにエフェクトをかけることができます。Audio Mixer ウィンドウのグループを選択すると Inspector の Add Effect が表示されます。ここからエフェクトを追加できます。
各エフェクトの説明は公式の説明に任せます。次のリンク先をご覧ください。
下の画像の部分にエフェクトの説明がまとめてあります。
最後に
Audio Mixer についてまとめました。Slider から音量調整できるようにする際、スクリプトから Audio Mixer を操作することもできます。すべての Audio をまとめて管理できるため、使えるとかなり便利なのではないでしょうか。