Game Maker Language リファレンス > 組み込み関数 用途別 > サウンド > audio_emitter_velocity
オーディオ空間でのエミッタのドップラー計算を変更します
audio_emitter_velocity(emitter, vx, vy, vz);
この関数はエミッタにドップラー効果を与え、指定した相対的なベクトル(x,y,z)にもとづいてサウンドの動きをシミュレートするために使用することができます(ベクトルは数学について?を参照してください)。 エミッタが移動しないのであれば、これらの値を設定する必要はありません。 しかし例えば、敵が右から来て、左にスクロールするシューティングゲームを作っている場合は、エミッタにaudio_emitter_position()で敵の座標を設定し、(hspeed, 0, 0)の速度を設定すると、敵が発生するサウンドに適切なドップラー効果を発生させることができるでしょう。(この前にリスナーをaudio_listener_position()を正しい位置に配置しておく必要があります)
s_emit = audio_emitter_create(); audio_emitter_position(s_emit, room_width, 0, 0); audio_emitter_velocity(s_emit, -5, 0, 0);
上記のコードは、オーディオエミッタを作成し、変数 "s_emit」にインデックスを割り当てます。 そしてエミッタは、ルーム内の位置に配置し、x軸に沿ったステップ当たり5pixelの速度(ステップあたり5pixelの水平方向の速度でリスナーに対して右方向のドップラー)に設定します。