カーレースゲームのブレーキアシストはどのように機能しますか?


8

PCカーレースのゲームには、このユニークな運転支援機能を備えた多くのゲームがあり、安全に車を回転させるためにブレーキをかけるのに役立ちます。一部のゲームでは「アシスト」にすぎませんが、車のブレーキには役立ちますが、安全な方向転換は保証されません。他の人の間では、ブレーキアシストが安全な方向転換に役立ちます。私はそれを達成するために従うアルゴリズムが何なのか疑問に思っていました。

私が考えることができる非常に基本的なアルゴリズムは、

  • 曲がる半径に応じて、トラックのすべての曲がり角で理想的な車の制動距離を事前に決定し、それに応じて車の制動を開始します。たとえば、90 o未満のターンの場合、車はターンの開始から50mの距離で自動的にブレーキをかけます。

安全な方向転換を保証するより高度なアルゴリズムは、

  1. 各ターンの開始時の車の速度を、トラック、ターン、車ごとに個別に事前に決定します。また、各自動車の減速率を個別に事前に決定します。これは、自動車の性能のために異なります。
  2. ブレーキアシストは、特定の瞬間の車の速度を記録し続けます。
  3. ターンの開始時に必要な正確な速度に車が到達するように、適切に車にブレーキをかけます。
  4. たとえば、半径43mのターンの開始時の特定の車の速度を120km / hとします。車の減速率を200km / h 2とする。ある時点で車の速度が200km / hの場合、車はターンの開始から400mで自動的にブレーキをかけます。

2
より洗練されたオプションは、天候、路面、車の重量配分、サスペンションとタイヤの特性を考慮に入れます。Real Racing 2のようなゲームで、アップグレードオプションがサスペンションとタイヤを変更し、他のいくつかはサスペンションのチューニングを可能にしました。永続的な世界特性を備えたゲームは、路上で蓄積されたがらくたと、ウォームアップ中のタイヤの摩耗と剛性の変化を考慮に入れることができます。
アンディデント

[まだコメントできないようですので、これを回答として投稿します]あなたの提案の2番目に加えて、このアルゴリズムを少し調整して、ブレーキの開始時の速度が最適速度よりも低くなるようにします。 。ここでの意図は、プレイヤーがアシストを使用しない場合、トラックから外れることなく、ターンをより速く取ることができることをプレーヤーが発見することです。私はプレイヤーにアシストを無効にすることを勧めたいと思います。
GrzegorzSławecki12年

ここでのアルゴリズムは、AI対戦相手を制御することとは著しく異なりますか?
2012

はっきりとはわかりませんが、はい、多くの点で異なります。AIを任意の速度と角度で動かしながら、正規化された動きの印象を作ることができます。この場合、AIキャラクターは160km / hの速度でも回転できない可能性がありますが、ここでの最初のアルゴリズムではプレーヤーがそれを行うことはできません。2番目の場合でも、アシストの役割は、車両をターンの開始時に必要な最適速度にすることです。その後、速度を上げる予定のプレーヤーは、ターンできません。
Ayush Khemka

回答:


4

基本的に、ブレーキアシストは、プレーヤーの車の速度をトラックの最適なレーシングライン上の最も近いポイントの速度と比較し、必要に応じて自動的にブレーキをかけて、プレーヤーの車の速度を下げて、最適なレーシングラインで指定された速度に一致させます。レーシングカーAIを書くのとまったく同じですが、アクセルやステアリングではなく、AIのブレーキ出力のみを適用します。

これには(明らかに)最適なレーシングラインに関するデータが必要なので、プレーヤーが減速する必要がある量を知ることができます。このレーシングラインは通常、開発中に計算によって生成され、実行時に計算されるのではなく、静的データの一部としてゲームに同梱されています。(私はプレーヤーの前でレーシングラインを動的に生成するゲームに取り組んできましたが、これは計算コストが高く、予測できない方法で変化するトラックがない限り、お勧めしません)


1

ドリフトせずに現在の速度で曲がる場合、車が描くパスを計算できます。次に、計算された経路から曲線までの距離である距離dに比例してブレーキをかけます。

ここに画像の説明を入力してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.