Darkside(リンクエラー修正しました)

2017年3月19日(日) 17:48

反射ドリフト

 反射ドリフトの操作だが、ガードビームにぶつける際にはハンドルを切っていないことが重要。直進で突っ込む。
 そして反射したら、すぐ左ハンドルを切る。旋回しつつ横滑りを始めるので、今度はハンドルを戻しから左重心移動だけを使って横滑りを止める。

 操作パターンのパラメーターとしては、左ハンドル開始タイミング、左ハンドル持続フレーム数、重心移動開始タイミング、重心移動持続フレーム数・・・と最低でも4つある。更に、最終段階で再び左ハンドルを入れて進路調整も必要だ。パラメーターが多いので、スクリプトが相当に重くなりそうだ。
 そこで、自機の座標変化を確認して重心移動の終了タイミングを自動的に決めることにした。最後の左ハンドル微調整も、自動的に行う。それでは近似解しか出て来ないが、いったん近似解を出しておいてから追加スクリプトを実行して最適化するというのは、これまでも良く使った手法だ。

 実際にやってみると、想像よりも自動操作がピタリと決まった。
 更に、重心移動の開始タイミングは重要ではないことも判明。何フレームかズレても、出てくる解は変わらない。
 反射時の大減速が何フレーム連続するか、というのが決定的に速さを左右することも判明し、つまりはそこで簡単に解候補の足切りが可能。そんなこんなでスクリプトは30分も掛からずに終了。
 ただし、旋回途中で邪魔カーを食らい易いので、初期値は幾つも用意しておくべきだ。

 ダートを踏むと減速は大きくなり、走行距離は短くなる。だから、速遅判定も自明ではないが、既に実走抜きで計算できるようになっているので問題ない。

written by higashino [ゲーム] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL

Comments

TrackBacks

Darkside(リンクエラー修正しました)

Generated by MySketch GE 1.4.1

Remodelling origin is MySketch 2.7.4