Game Maker Language リファレンス > 組み込み関数 用途別 > サウンド > audio_listener_velocity
オーディオ空間内でのリスナーのドップラー効果を設定します
audio_listener_velocity(vx, vy, vz);
この関数はリスナーにドップラー効果を与えます。リスナーの一から、指定のX,Y,Zの方向へサウンドの動きをシミュレートします。(ベクトルの詳細は、数学について?を参照してください) リスナー自身が移動しない、または動きが一定でない場合は、通常これらの値を設定する必要はありません。 ですが、例えば、スクロールのゲームを作っている場合、プレイヤーが常に画面下にいて、敵が下方向へスクロールするようなゲームの場合、リスナーやエミッタの方向を指定すると良いでしょう。 敵がプレイヤーのインスタンスを超えて移動するとき、正しいドップラー効果をシミュレートすることができます。(エミッタのドップラー効果はaudio_emitter_velocity()を使用します)。
例としては、下の画像を参照してください。
if speed > 0 { audio_listener_velocity(abs(hspeed), abs(vspeed), 0); }
上記コードは、移動速度が0より大きければ、その速度でドップラー効果を設定します