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

2017年6月8日(木) 21:10

甘過ぎる


 2周目のダート地帯に差し掛かったとき、作り直したもの(右)は2フレーム近くも先行している。内部変数で座標を確認すると実際は1.3フレームぐらいだが、それでも相当に先行したのは間違いない。


 ところが S-JET 最適化を後半まで行ったところ、逆に作り直す前よりも遅くなった!

 これは、とんでもない話だ。相対的には、2フレームぐらい損したことになる。そんな膨大なロスが、一体どこで生じた?


 例によって2つのムービーを詳細に比較する。

 結果として、ダート地帯を抜けるあたりで新しい方はアウトに膨らみまくっている。
 ガードビームに時々接触しつつ突っ走るのが S-JET 噴射中の典型シーンである。それが、ガードビームに触れられずにアウト側に膨らんで走行してしまっている。

 使用したスクリプトは新旧全く同じだが、僅かな初期状態の差で大差を生む。エキスパートクラスでのWIPでは、ギリギリまで最適化を追求しなかった。そのためいざ本気で最適化を煮詰めようとした今になって、スクリプトに内在する最適化の甘さが次々に発覚している。

 初期状態の運が良い場合に限り最適化がうまくできる、というスクリプトだらけだ。
 このスクリプトは、初期状態を手動で調整することで3分の2フレームぐらい速くなった。だが、それでもまだ遅い。この右コーナーは後半の方がやや緩いという特殊ケースで、それが逆に厄介なのだ。つまり、S-JET を噴射したままフル旋回すると、前半でインに付けなくなる。前半でインに付くと、後半でガードビームに弾かれてしまう。
 そこで、最初は重心移動併用で旋回するが、途中から重心移動を使わないで旋回するようにした。これで、期待通りに速くなった。

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