【Unity】Audio Mixerを使ってダッキング(サイドチェイン)する

Unity の Audio Mixer を使ってダッキングする方法についてまとめました。

はじめに

この記事ではUnityのAudio Mixerでダッキングを行う方法についてまとめます。

ダッキングとは、ある音が鳴ったときに他の音の音量を下げて聞こえやすくする処理です。
例えばキャラクターのボイスが再生されたときに自動的にBGMを下げて、ボイスを聞こえやすくするときなどに使います。

今回はこの例を想定して、下図のようにVoiceとBGMという名前のAudio Groupを作成しておきます。

Audio Group

この辺りの設定方法及びAudio Mixerの基礎知識については本記事では割愛しますが、以下の記事にまとめていますので必要に応じて参照してください。

light11.hatenadiary.com

ちなみにAudio Mixerにはサイドチェインという用語が出てきますが、これは以下のような意味です。

エフェクトをかける対象の音を通すメインの接続とは別に信号を送る接続がある事を示す言葉で、サイドチェイン用の信号を入れるための入力を「サイドチェイン入力」と呼ぶ。 https://www.g200kg.com/jp/docs/dic/sidechain.html より

ダッキングはこのサイドチェインを使って掛ける効果という関係性になります。
しかしながら以下のようにサイドチェインという用語自体がダッキングと同じ意味で使われるケースもあるので、検索などする際にはこのことを頭に入れておいた方が良さそうです。

このように、ある音を避けるように音量をコントロールする効果はダッキングと呼ばれるが、サイドチェインの使用目的のほとんどがダッキングのためであるため、「サイドチェイン」と言う言葉は多くの場合ダッキングの事を指している。
https://www.g200kg.com/jp/docs/dic/sidechain.html より

音量を下げるグループの設定

それではダッキングの設定をしていきます。
まず、ダッキングが発生したときに音量を下げるグループの設定をします。
今回の例ではボイスが再生されたときにBGMの音量を下げるため、BGMグループの設定を行います。

まず Add… > Duck Volume からグループに Duck Volume ユニットを追加します。
次に Inspector から Threshold を -50dB に、Ratio を200% に設定します。

パラメータ調整

Threshold を小さくするほど、より音量の小さいボイスが再生されたときにもダッキングが起こるようになります。
また Radio が大きいほど、ダッキング時のBGMの音量が小さくなります。

なおこの状態だとボイスが再生されてからダッキング効果がかかるまでに多少の猶予がありますが、 AttackTime をゼロにすると即座に効果がかかるようになります。

ダッキングのトリガーとなるグループの設定

次にダッキングのトリガーとなるグループの設定を行います。
今回はボイスが鳴ったら音量を下げるため、Voiceグループがトリガーとなります

まず Add… > Send からグループに Send ユニットを追加します。
次に Inspector から、 Receive に対象のユニット、つまり今回は BGM/Duck Volume を指定します。
また Send Level 0.00dB にしておきます。

設定

以上で設定は完了です。
ボイスを再生するとBGMの音量が小さくなることが確認できるはずです。

関連

light11.hatenadiary.com