あなたは間違った質問をしています。多くの新しいゲームプログラマが犯す間違いを犯しています。ゲームはありません彼らも近くない、完璧なシミュレーション。ゲームは、面白くて興味深いものになるのに十分なだけシミュレートします。他のすべてが偽造されています。
適例:
World of Goo:質量、引張強度、および弾性をシミュレートします。残りはゲームの感触を加えないので偽物です。たとえば、重力をシミュレートしません。すべてのオブジェクトは一定の力で加速します。Boyancyは偽造されています。風船は一定の力で引き上げられ、水中のグーボールも一定の上向きの力を受けます。これはすべてゲームに最適です。ただし、World of Gooの物理エンジンを使用してスペースエレベーターを作成しようとすると、故障します。
ほぼ完璧な物理ベースのサウンドエンジンを想像してみましょう。環境への影響はどうですか?洞窟や野原のフルートです。エンジンは事前定義された環境のセットを提供しますか(いくつですか)、または実際の物理的な地形を計算することでそれを把握しますか(そうです)。プレーヤーには指向性のある耳(アラヒト)または耳の穴(アライルカまたはエイリアン)のみ、または動物のような多方向性がありますか?空気は暑いですか?湿度はどれくらいですか。このリストはすぐに制御不能になる可能性があります。
ここで、このような真の物理サウンドエンジンが存在していたとしましょう。本当にゲームを作りたいですか?フルートが空中を飛んでいく音を定義するには、どれくらい時間がかかりますか。何個のパラメータを正確に取得する必要がありますか(100's?)。
あなたが尋ねるべきだったのは
、フルートの音がプレイヤーを越えて飛ぶとき、どうやってフルートの音をシミュレートできるかです。
OpenALはあなたが望むことをすることができます。
- 指向性リスナー
- 指向性音源
- ソースの速度とドップラー効果。
回転するフルートの音響効果を繰り返すことをお勧めします。プレーヤーの位置とフルートの位置/速度を入力します。今のところ、方向性に関するものはスキップしてください。
空気が流れるときにフルートの両端から来る音を録音し、フルートに2つの音源を使用させることができます。しかし、ゲームメカニック全体がフルートの回転と回転を中心に展開しない限り、努力する価値はないと思います。