音源と聞き手の位置関係に応じて自動的に音量・位相を調節します – AudioSource.js

タイトル
音源と聞き手の位置関係に応じて自動的に音量・位相を調節します
作者名
ヘルプ
マップイベントの「ルート設定」内で効果音を鳴らすと、
そのイベントが配置されている座標から鳴ったかのように音量・位相を調節します。
具体的には、「音源」と「聞き手」が離れているほど音量が小さくなり、
「聞き手」より「音源」が右にあるほど位相が増加(=右から聞こえる)します。
※イベントコマンドの「SEの演奏」では自動調節しません。うまく使い分けましょう。
また、「アニメーションの表示」の効果音も対象の位置から聞こえるようになります。

さらに、プラグインコマンドによりBGMやBGSを特定の位置から鳴らすことができます。
トリアコンタンさんのBGS並行演奏プラグインとも連携可能にしてみました。
詳しくは下の方の「プラグインコマンド」を見てください。

なお基準となる音量は効果音(,BGM,BGS)の演奏を指定した時の音量です。
音源と聞き手が同じかすぐ隣のマスに居る時は基準音量で鳴らされ、
そこから一歩離れるたびに音が小さくなっていきます。


プラグインパラメータ:
listener : 発信される音の「聞き手」を設定します。
 screen 「画面の中央マス」が聞き手になります。
 player 「プレイヤー」が聞き手になります。
decay : 音源と聞き手との間の距離が「一歩」広がるたびに音量がdecay%倍されます。
 基本的には0から100までの値を想定しています。100以上の値を入れると
 遠ざかるほど音が大きくなる、というすこし不思議な演出もできます。
pan : 音源が「一歩」右に移動すると、位相がpanだけ変化します。
 逆に音源が一歩左へ移動すると位相が-pan変化します。
cutoff : 音を鳴らすことを許可する最小の音量(%)です。
 計算後の音量がこの値を下回ると強制的に音量0%になります。


プラグインコマンド:
audiosource listener 1
指定したID(この場合は1)のマップイベントを聞き手にします。
(ちなみに0を指定すると「このイベント」を聞き手にします)
聞き手は常に一つですので、スクリーンorプレイヤーは聞き手ではなくなります。

audiosource listener reset
マップイベントの聞き手化を解除し、スクリーンかプレイヤーに聞き手を戻します。


audiosource bgm 1
audiosource bgs 1
現在流れているBGM/BGSの音量と位相を、
「指定したIDのマップイベントから鳴っている」風に聞こえるように調節します。
(0を指定すると「このイベント」から鳴らします)
設置されたラジオから曲が流れている演出などにお使いください。

また、BGS並行演奏プラグインと連携する場合は、
BGSライン変更→audiosourceの順番で指定すれば
それぞれのBGSに音源を指定できます。

◆プラグインコマンド:PB_BGSライン変更 2
◆プラグインコマンド:audiosource bgs 1

audiosource bgm reset
audiosource bgs reset
BGM/BGSの音源化を解除し、通常通りの演奏に戻します。


audiosource se on
audiosource se off
「ルート設定」や「アニメーションの表示」では自動的に効果音が
対象キャラの位置から音が鳴っているように調節されますが、
調節してほしくない時はこのプラグインコマンドでoffにしましょう。
初期値はonです。


ライセンス:
このプラグインの利用法に制限はありません。お好きなようにどうぞ。
パラメータ
param listener
desc 音の「聞き手」をscreenかplayerから選ぶ
default screen

param decay
desc 音源と聞き手の距離が一歩広がった時の音量変化倍率(%)
default 85

param pan
desc 音源が聞き手の一歩右に居る時の変化位相
default 10

param cutoff
desc 音を鳴らすことを許可する最小の音量(%)
default 1

ライセンス表記
ライセンス:

紹介ページ https://github.com/krmbn0576/rpgmakermv/blob/master/js/plugins/AudioSource.js