2016-08-12 9 views
0

私はAI対戦相手を打ち負かすためのスクリプトを書く必要があるレースチャレンジに参加しています。 「目標位置」(X、Y)の「現在位置」(X、Y)と、次のターゲットまでの「距離」と、車両が直面している「角度」(度)が示されています。それぞれの移動は、私が車両を移動させたい位置の(X、Y)座標と、速度(%)、すなわち0%=移動しない、100%=最高速度を提供することです。Javascript - Optimal Path(Angles)

トラックは1レースごとにダイナミックなので、何もハードコーディングできず、AI相手はほとんど減速しません。目標位置をオフセットして次のターゲットへの最適なパスを計算します。

現在、目標に近づくにつれてスピードを調整して遊んでいますが、レースが緩すぎるので、常に緩んでいます。自分の車両の現在の角度とターゲットに基づいて目標位置をオフセットする方法を理解している人がいます。

私は、粗モックアップ

おかげで、

画像をお詫び申し上げます:あなたはおそらく最高速度が提供されていることを言及するのを忘れてしまったhttp://i68.tinypic.com/1628txi.jpg

答えて

0

。だから次のステップに%を与えることで達成できる距離を得ることができます:%/ 100 * maxSpeed。このようにして、あなたが目標点を通過するかどうかを判断することができます。

また、物理的にこの質問にタグを付ける必要があります。

0

最大速度は全くスピードが唯一、以下に提供されていない事実で提供されていません。 - プレイヤーの座標(X、Y) - ターゲットの座標(X、Y) - 距離:プレイヤー間 - ターゲット - 角度を:私は、それぞれの動きに提供するために必要なもの

をターゲットにプレイヤーの方向は次のとおりです。 - ターゲットの座標(X、Y):私は、プレイヤーが を行きたい方向 - 速度/スロットル(%):0% - 100%

車両が徐々に速くなり、現在の速度/最高速度が未知である計算。しかし、スピードを調整することが解決策であるかどうかはわかりませんが、車両が次のターゲット(漂流のようなもの)を指し示すように、各ターゲットを叩くことがより重要です。