車両エンジン音合成システム#
完成品デモ#
以下は Kohler-ch750 エンジンの始動からアイドリングを維持し、スロットルを調整する音声です。

前文#
ゲーム音響の分野において、車両エンジンの音は常に重要な部分です。
現在の主流な方法は、現場録音と音声ミドルウェアのリアルタイム制御を組み合わせて、聴覚的にリアルなエンジン音を実現することです。さらに進んだ方法として、粒子合成器を使用してより良い効果や制御を実現することができます。例えば、Wwise プラットフォームで最も一般的に使用される REV プラグインですが、根本的にはエンジンの各部分の音をサンプリングする必要があります。
この方法には明らかに多くの制限があります。
本システムは、エンジンの動作原理に基づいて物理モデリングを行います。内燃機関の運転過程をモデル化して最終的な音を合成することで、低遅延で高品質なエンジン音効果を実現し、リアルタイムフィードバックを提供します。
工程構造#
PS:ここでは @鲁旻荟さんが整理したシステム構造図を借用しています💕
システム運転の全体的な流れは次の通りです:
まず、車両のパラメータを決定します。これには、エンジンの型式、最大回転数、シリンダー数などが含まれます。
次に、ユーザーのリアルタイムの始動点火、エンジン停止、ギア変更、アクセル位置などの操作を通じて、エンジンの回転数やアクセル開度などの重要なパラメータに影響を与え、エンジンシミュレーターの状態を変更します。
ループ内で、シミュレーターはエンジンのリアルタイムの状態に基づいて、車両運転状態でのエンジンの物理シミュレーション計算を開始します。進排気システムの流体力学シミュレーションや、排気流量、エンジン回転数、減衰係数などの計算を通じて、音の特性と強度を決定します。
最後に、結果を合成器(Synthesizer クラス)に書き込みます。合成器はエンジン回転数と排気量のデータを計算してシミュレートされたエンジン音信号に変換し、Simulator クラスにフィードバックしてリアルタイムで動的なエンジン音信号を生成し、音声出力デバイスを通じて再生します。
コアアルゴリズム#
まず、物理パラメータが音の強度と音色にどのように影響するか:
(全体的には、一連の物理パラメータを通じて最終的に排気システムの流量に影響を与え、音の基本周波数を変えることになります。同時に、他のエンジンモジュールのパラメータを通じて音色を変えます。)
- エンジン回転数 (RPM):
回転数が高いほど、排気周波数が高くなり、排気パルスの周波数が増加し、音の周波数が上昇します。 - 吸気流量:
吸気量が増加すると、通常は燃焼がより完全で強烈になり、より大きな排気流量とより大きな音を生成します。 - 燃料噴射量:
より多くの燃料噴射は、より強い燃焼を引き起こし、より高い圧力と排気流量を生成し、音をより大きくします。 - 点火タイミング:
点火タイミングを前倒しまたは遅らせることで、燃焼プロセスの特性が変わり、燃焼の効率と圧力変動に影響を与え、排気流量と音の特性に影響を与えます。 - 排気システム圧力:
排気システム内の圧力変化は、排気流量の動的特性と音の伝播方法に直接影響を与えます。 - シリンダー圧力:
シリンダー内の圧力変動の周波数と振幅は、排気流量のパルス特性に影響を与え、音の周波数と強度に影響を与えます。 - 熱量と温度:
温度変化は、ガスの膨張速度と排気流量の安定性に影響を与え、音の特性に影響を与えます。 - エンジン負荷:
負荷の変化は、燃焼プロセスの強度と周波数に影響を与え、排気流量と音を変えます。 - 進排気バルブの開閉タイミングと持続時間:
進排気バルブのタイミングは、シリンダー内のガス交換の効率に影響を与え、排気流量のパルス特性と音を変えます。 - 振動と共鳴:
エンジンおよびそのコンポーネントの振動特性は、排気システムの振動モードを通じて排気流量の変調と音のスペクトル特性に影響を与えます。
次に、音合成システムがこれらのパラメータを通じて最終的に音信号を合成する方法です:
-
まず、排気流量信号を合成器に入力し、入力値を補間して平滑処理します。
-
信号の直流フィルタ処理
-
信号の微分処理
-
空気ノイズのローパスフィルタ処理
-
信号の混合
-
畳み込みフィルタ処理
-
レベル調整
-
信号の量子化
-
最後に信号を音声出力デバイスにレンダリングします。
まとめと展望#
現時点では、この記事の紹介はシステムのコア部分の概要を粗く説明したものであり、実際には多くの具体的な内容が展開されていません。このシステムは現在、その複雑な計算と物理モデリングのため、ゲームエンジンに直接適用するには適していません。この記事の完成時点までに、著者はそのさらなる軽量化に取り組んでおり、UE エンジンへの統合を実現することを目指しています。