Category: “UE5”
“案外複雑でわかりにくいChaosVehicleの設定項目を解説します”
執筆: “S.K”
はじめに
初めまして。
株式会社ORENDA WORLDでエンジニアをしております、S.Kと申します。
今回はUnrealEngine5に標準で用意されているChaosVehicleSystemの設定・各種パラメータについて解説をしようと思います。
このシステムはUE5で使用されている物理エンジンであるChaosPhysics上で動作する、軽量かつ汎用性の高いビークルシステムです。サンプルも用意されており、簡単に物理ベースの車両挙動を実装することが可能なほか、車両の設定パラメータが豊富に用意されているため、様々な車両・用途に対応することが可能です。
一方で設定項目が膨大なほか、専門的な内容のものも多いため、
・思ったよりスピードが出ない/出すぎる
・車がいきなり滑り出す
・もっとリアルな動きをさせたい
などの問題があった場合、どの項目を調整すればよいか分からない方も多いのではないでしょうか。
本記事では主に公式のビークルサンプルをもとに、各種パラメータの解説をしていこうと思います。車両を一からセットアップする方法については本記事では扱いませんが、こちらも難解な点、つまづきやすいポイントなどありますので、今後記事化するかもしれません。
この記事で使用する環境

- Unreal Engine 5.3.2
- Vehicleテンプレート(ブループリントプロジェクト)
本記事ではUE5.3.2を使用していますが、基本的にUE5であれば内容は同一です。
UE4に関してはChaosPhysicsが標準採用されておらず、PhysXベースのWheeledVehicleとなっているため、内容が全く異なります。

プロジェクトを作成し、プレイモードに入ると車両アクタが生成されます。
キーボードおよびゲームパッドに操作が割り当てられているので、まずは走らせてみましょう。
キーボード操作の割り当ては以下の通りです。
- アクセル:W
- ブレーキ(停止後長押しでバック):S
- ハンドル左右:A・D
- ハンドブレーキ:Space
- カメラ回転:マウス
- カメラ切り替え:Tab
- 車両リセット:Backspace
パラメータを見てみよう
Vehicleテンプレートにおいて使用されている車両BPは、VehicleAdvPawnです。
BP内のVehicle Movement Componentを選択すると、詳細タブに設定項目が表示されます。

Wheel Setup
ここからは上から順に、Wheel SetupからVehicle Setupまでの使用頻度の高い項目の解説をしていきます。

- Suspension Enabled/Wheel Friction Enabled
サスペンションおよびタイヤの摩擦演算を有効にするかどうかの項目です。
…が、チェックの有無で動作の差異が見られませんでした。 - Legacy Wheel Friction Position
UE5.1リリース時に、タイヤに対して力(駆動力、車体から受ける慣性など)を適用するポイントが変更されています。この点をそれ以前のバージョンと同じ状態にします。
細かい内容は割愛しますが、古い車両アセットを新しめのバージョンのUE5で読み込んだ際、極端に重心が高いような挙動を示した場合はTrueにすると解決する可能性が高いです。(サンプルシーンは5.1以前に作成されたものであるため、この項目がTrueになっているようです。)
Wheel Setup
Chaos Vehicleのタイヤ・サスペンションまわりの設定は、車両本体のBPと別にChaos Vehicle WheelクラスのBP内で定義されています。
そのため、車両メッシュのどのボーンをタイヤとして扱うか、またボーンに対しどのChaos Vehicle Wheel BPを適用するかをこの項目で設定します。
VehicleAdvPawnは四輪車なので、インデックス[0]から[4]まで設定がされています。
- WheelClass
使用するChaos Vehicle Wheelブループリントを指定します。
各タイヤの設定はここで指定したブループリントから読み込まれます。
そのため、車両ブループリント内にはタイヤの摩擦などを直接設定する項目が存在しません。タイヤが滑るので調整したい、などの場合はここで指定されているChaos Vehicle Wheelブループリントを開いて編集しましょう。
Mechanical Setup
エンジン・駆動系の設定を行います。

Engine Setup
- Mechanical Sim Enabled
エンジン、駆動、ステアリングなどのシミュレーションを有効にします。
引っ張られるだけの台車など、タイヤがついていて転がればよいだけのものを作るのであれば、無効にするとよいでしょう。 - Torque Curve
エンジンのトルク特性をカーブで設定します。
横軸がエンジン回転数、縦軸がエンジントルクの係数です。
Extrrnal Curveからカーブアセットを指定し、使用することも可能です。 - Max Torque
エンジンの最大トルク(単位はNm)です。
トルクカーブにおいて、縦軸が1の際のトルクになります。
エンジン出力は回転数×トルクで決まるので、例えば出力(kw)を算出したければ、
2π x Max Torque x 縦軸1の時の回転数 / 60 / 1000
となります。 - Max RPM
最大回転数です。
エンジン回転数がここで設定した値までで制限されます。
Differential Setup

- Differential Type
駆動方式を設定します。
Undefined(未定義)、All Wheel Drive(全輪駆動)、Front Wheel Drive(前輪駆動)、Rear Wheel Drive(後輪駆動)から選択できます。 - Front Rear Split
後輪の駆動配分を設定します。この項目はAll Wheel Driveの場合のみ使用可能です。
1で後輪のみ、0で前輪のみに駆動力を配分します。
Transmission Setup
- Automatic Transmission
自動で変速するかどうかを設定します。
オフにすると手動で変速する、マニュアル操作になります。 - Automatic Reverse
停止時、ブレーキを入力し続けることで車両がバックします。 - Final Ratio/Forward Gear Ratio/Reverse Gear Ratio
ギアレシオの設定をします。
Finalは全てのギアに加算される係数、Forwardは前進、Reverseは後進のギアレシオです。
- Change Up RPM/Change Down RPM
Automatic Transmissionが有効の際に、ギアを上げる基準となる回転数とギアを下げる基準となる回転数を設定します。
Automaticにしてあるがギアが切り替わらないという場合には、この項目とMax RPMを確認しましょう。
Steering Setup
- Steering Type
ステアリングのモードを選択します。- Single Angle
Chaos Vehicle Wheelブループリント内で設定した最大舵角がそのまま使用されます。 - Angle Ratio
旋回時、外側の車輪の舵角を減らします。
外側の舵角は最大舵角×Angle Ratioになります。 - Ackerman
アッカーマン・ジャントー機構に基づき、左右の舵角を理想的な差に調整します。
- Single Angle
Angle RatioとAckermanでは、左右の舵角を調整して内輪差を吸収し、スムーズに旋回できるようになります。
自動車の旋回時は外側のタイヤがより大きな半径の軌跡を通るため、これを理論的に解決するためアッカーマン・ジャントー機構が存在し… といった感じですが、詳細は割愛します。
思った通りにハンドルが切れていないという場合には、こちらを確認するといいかもしれません。
- Steering Curve
車速に応じて、縦軸の倍率ぶん最大舵角を減らす設定をします。
横軸はkm/hではなく、mphであることに注意してください。
Vehicle Setup
- Reverse as Brake/Throttle as Brake
Reverse as Brake前進時にバックギアに入れ、アクセル操作をするとブレーキとして機能します。
Throttle as Brakeでは逆にバック時に前進ギアに入れ、アクセル操作をするとブレーキとして機能します。 - Drag Coefficient
抵抗を調整します。
空気抵抗や路面の抵抗など、すべての抵抗を総合したものと考えるとよいと思います。 - Downforce Coefficient
ダウンフォースを調整します。
速度に応じて下方向に押さえつける力が発生するので、高速走行時に安定しない、曲がらないなどの場合に有効です。
まとめ
ChaosVehicleSystemはUE標準であること、動かすだけならサンプルをもとにして手軽に使用できることから、UE5で車両を扱いたい場合まず最初に検討する機能だと思います。
一方で、中身は割ときっちりとした物理ベースであったり、設定内容が英語かつ専門的だったりするので、どう調整していけばいいかが分かりにくい機能でもあります。
本記事の内容が、車両がうまく走らない、設定項目がどのように反映されているか分からないというケースの助けになれば幸いです。
また、サンプルを使用せず一から車両を組む、別の3Dモデルを自前で用意するなどの場合にも様々な落とし穴があるので、その辺りに関しても次回以降解説できればと思います。