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

2014年2月8日(土) 20:56

スクリプト分割

 これまで製作する部分を検証すると、3周目のダブル一点読みを抜ける直前までは問題ない。
 3周目のヘアピン突入までが最適化できておらず、徐々に遅くなり始めている。
 つまり、ヘアピン突入を最適化できるかどうかが完成へのポイントだ。

 ヘアピン突入のスクリプトは桁違いに計算量が多く、マトモに走らせれば2週間ぐらい掛かりそうだ。それなのに、1日未満で
OutOfMemory になってスクリプトが異常終了する。2周目は、初期に出た暫定解でも、たまたま速かった。しかし3周目は、早期に速い解を掘り出せていない。5周目ま専用スクリプトを新開発になるので、とにかく3周目と4周目のヘアピン突入を何とかせねばならない。
 こうなると、スクリプトを2分割して別々に最適化するのが現実的である。合体での最適化が出来るならベターだが、それを言い出したら1周まるごと単一スクリプトで最適組み合わせを探せと言うことにもなる。

 まず、ダブル一点読みの脱出から右ダートの折れ目を通過するまで。それが最速のパターンを調べる。
 ダブル一点読みの脱出でどのようなキー入力を行うかは、部分的最適化では結構重要である。しかし、これまでのスクリプトでは計算量過大のため、数多い脱出パターンのうち最初しか通っていなかった。
 そして、右ダートの折れ目を通過後から、ヘアピン突入を詳細に探索する。

 ダブル一点読みを脱出する最初の左ターンで、逆ハンドル補正は使っていない。使ってバリエーションを増やすかどうかは、やってみてから考える。
 その代わり、最初に右重心移動を1フレーム入れるパターンを増設。ガードビームとの間合いを僅かに広げることで、早期に曲がれる場合がある。
 こうして、最速の部類に属するパターンが8通り、ステートセーブデータとして得られた。右ダートの折れ目時点で遅い走行ラインはすべて足切りし、残った8パターンである。片っ端から試すのに、多過ぎず少な過ぎず良い感じ。殆どは、ダブル一点読みの脱出時に早期に曲がるパターンだ。
 この探索は思ったより時間が掛かるので、逆ハンドル補正まで試すかどうかは悩ましい。

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