2023年3月1日

車両物理 

Evergineのリリースにより、開発者は車両物理シミュレーションを簡単に作成できるようになりました。車両物理モデルは簡略化されており、各ホイールとシャーシをジョイントで接続された個別の剛体としてシミュレートする必要がありません。代わりに、車両全体が単一の剛体として表現されるため、物理モデルが簡素化されるだけでなく、パフォーマンスも向上します。

ホイールの衝突検出をシミュレートするために、Evergineはレイキャスティングを使用します。これは現実世界の車両の挙動を近似します。このソリューションは、タイヤと路面間の摩擦も正確にシミュレートします。

開発者は、任意の数のホイール、サスペンションプロパティ、回転軸など、さまざまな種類の車両を柔軟に作成できます。これにより、現実的で複雑な車両シミュレーションの作成が可能になります。

Evergineで車両物理を始めるには、PhysicVehicle3DとPhysicWheel3Dの2つのコンポーネントを使用する必要があります。

 

PhysicsVehicle3Dコンポーネント

PhysicVehicle3Dコンポーネントは、開発者が車両にしたいシャーシの剛体に追加する必要があります。このコンポーネントは、サスペンション、エンジントルク、ブレーキ力をシミュレートするために物理ボディに力を適用します。

便利なプロパティ

以下のプロパティを使用して車両をカスタマイズできます:

  • SuspensionStiffness: サスペンションの剛性は、車両のサスペンションを圧縮するのに必要な力の尺度です。
  • SuspensionCompression: このプロパティは、ホイールがバンプや障害物に当たったときにサスペンションがどれだけ圧縮されるかを決定します。
  • SuspensionCompression:このプロパティは、サスペンションスプリングが圧縮および反発する速度を決定します。車両がバンプや不整地に遭遇したときにサスペンションに適用される減衰力の量を制御します。
  • MaxSuspensionTravel: サスペンションが圧縮または伸長できる最大距離を表します。長さの単位で測定されます。
  • FrictionSlip: 運動中にタイヤと地面の間で発生するスリップの量を指します。摩擦スリップは通常、タイヤと地面間の接線力と垂直力の比率を表す摩擦係数を使用してモデル化されます。この係数は、さまざまな種類の車両や路面に対して異なるレベルのスリップとトラクションをシミュレートするように調整できます。
  • MaxSuspensionForce: サスペンションが車両のシャーシに適用できる最大の力を指定します。サスペンションが圧縮または伸長されたときの影響を制限し、車両が過度にバウンドしたり安定性を失ったりするのを防ぎます。

車両を制御しましょう!

車両の操作を開始したい場合は、以下のメソッドが役立つでしょう:

  • ApplyEngineForce(force): このメソッドは、車両に適用されるエンジン力を与えるために使用します。車両の速度を増減するために調整でき、後退させるために負の値を設定することも可能です。エンジン力は駆動輪にのみ適用されます。
  • SetSteeringValue(steering): このメソッドは、車両のステアリング角度を設定するために使用します。車両の方向を変えるためにこのメソッドを使用してください。ステアリング値は操舵輪にのみ適用されます。
  • SetBrake(brake): 車両によって適用されるブレーキ力を示します。ブレーキ値は制動輪にのみ適用されます。

Physic Wheelコンポーネント

PhysicWheel3Dコンポーネントは、開発者が車両の車輪として機能させたい各エンティティに追加する必要があります。

以下のプロパティは、サスペンションや回転の方向などを定義するのに役立ちます。

  • WheelRadius: 車輪の半径を決定します。
  • RotationAxis: 車輪が回転する軸を定義するために使用します。また、エンジン力を適用する際の進行方向も示します。車輪エンティティのローカル空間で指定されます。
  • SuspensionDirection: 車輪のサスペンションが動作する方向を示します。また、ステアリングの方向も定義します。車輪エンティティのローカル空間で指定されます。
  • SuspensionRestLength: 車両が静止位置にあるときの車輪サスペンションの長さを定義します。

まとめ

PhysicVehicle3DおよびPhysicWheel3Dコンポーネントは、Evergineの物理システムと完全に統合されています。つまり、開発者は車両シミュレーションを作成する際に、Evergine物理エンジンのすべての機能と能力を活用できます。

結論として、Evergineの車両物理モデルは、車両全体を単一のRigid Bodyとして表現できるようにすることで、車両シミュレーションの作成プロセスを簡素化します。このアプローチは物理モデルを簡素化するだけでなく、パフォーマンスも向上させます。開発者はカスタマイズ可能なプロパティを使用してさまざまなタイプの車両を作成する高い柔軟性を持ち、リアルで複雑な車両シミュレーションを実現できます。PhysicVehicle3DおよびPhysicWheel3DコンポーネントはEvergineの物理エンジンと完全に統合されているため、開発者はエンジンのすべての機能と能力を容易に活用できます。この新しいリリースにより、Evergineは開発者が高品質な車両シミュレーションをこれまで以上に簡単に作成できるようにします。

David avila
著者
David Ávila
Plain Concepts Research