BGMや効果音を鳴らせるようになると、次はこんな欲が出てきます。「洞窟に入ったら音を反響させたい」「爆発音は大きいのに足音が小さすぎて聞こえない」「通信機ごしのラジオみたいな声にしたい」——こうした 音の"質感"づくり を担うのが、Audio Busにかける エフェクト です。
エフェクトはバスに追加すると、 そのバスを通る全ての音にまとめて 効果がかかります。この記事では、オーディオ管理の基礎 で作ったバス構成を土台に、リバーブ・コンプレッサー・EQといった主役エフェクトの使い方から、処理順序、そして「洞窟に入ったら残響を動的にかける」実装までを組み立てます。
この記事でわかること
- エフェクトで 同じ音源が空間ごとに変わる 仕組み
- 定番3エフェクト—— Reverb(残響)・Compressor(音量差を均す)・EQ(周波数調整)
- エフェクトの 処理順序(チェーン) が結果を変えること
- 洞窟に入ったら残響をかける 動的制御(
add_bus_effect+is_instance_of+ Tween)- シチュエーション別の 設定リファレンス
動作確認環境: Godot 4.7
エフェクトでできること
エフェクトの本質は、 「同じ音源を、置かれた空間にふさわしい聞こえ方に変える」 ことです。同じ足音のサンプル1つでも、洞窟なら反響し、水中ならこもり、屋外ならすっきり抜ける——その差を作るのがエフェクトです。

しかも、これを 音源1つ1つに設定するのではなく、バスにまとめてかける のがGodot流です。「SFXバスにリバーブを1つ」置けば、そのバスを通る全効果音が一斉に反響します。だからこそ、まず バスを用途別に分けておく(BGM / SFX / Voice / Ambient)ことが、エフェクト活用の前提になります。
定番の3エフェクト:Reverb・Compressor・EQ
数あるエフェクトのうち、まず押さえたいのはこの3つです。役割がはっきり違うので、順に見ていきます。
AudioEffectReverb(残響で空間を作る)
洞窟のエコー、大聖堂の荘厳な響き——空間の広さや材質を音で表す定番エフェクトです。要は「音がどれだけ長く反射して残るか」を作ります。

| プロパティ | 説明 | 目安 |
|---|---|---|
room_size | 空間の広さ(残響の長さ) | 0.2(小部屋)〜 0.9(大聖堂) |
damping | 高音の減衰(丸さ) | 0.3〜0.8 |
wet | エフェクト音の混ざり具合 | 0.1〜0.5 |
dry | 原音の混ざり具合 | 0.5〜1.0 |
とくに wet が「効き具合」のつまみです。dry(原音)と wet(残響)は足し合わされるので、wet を上げると全体の音も少し大きくなります。後述する動的制御では、この wet を動かして残響を出したり引っ込めたりします。
AudioEffectCompressor(音量差を均す)
「爆発音は爆音なのに、足音は小さすぎて聞こえない」——ゲームでよくある音量差の悩みを解決するのがコンプレッサーです。 大きい音だけを抑え 、そのぶん gain で全体を持ち上げると、小さい音との差が縮まります。

| プロパティ | 説明 | 目安 |
|---|---|---|
threshold | 圧縮が始まる音量 | -20〜-10 dB |
ratio | 圧縮の強さ | 2:1〜4:1 |
attack_us | 反応の速さ | 20〜2000 μs(既定は20) |
gain | 圧縮後の底上げ | 0〜6 dB |
SFXバスに軽くかけると効果音全体が聞き取りやすくなり、Masterバスにかけると全体の音圧を上げられます。
AudioEffectEQ(周波数バランスを整える)
低音・中音・高音といった 周波数帯域ごとに音量を調整 するエフェクトです。低音を足して迫力を出す、高音をカットして水中のこもった音にする、といった加工ができます。AudioEffectEQ6 / EQ10 / EQ21 があり、数字はバンド(つまみ)の数です。

# EQ10で低音を強調する例(バンド0=31Hz … バンド9=16kHz)
var eq := AudioEffectEQ10.new()
eq.set_band_gain_db(0, 6.0) # 31Hzを+6dB(重低音を足す)
eq.set_band_gain_db(1, 4.0) # 62Hzを+4dB
# 水中風にするなら逆に、高音側のバンドをマイナスに下げる