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

2017年8月3日(木) 21:51

遅い元凶

 スクリプトに小さな改良を加え、乾いたタオルを絞るような僅かな高速化を頑張ってみる。その結果ちょっとだけ速くなり、3周目と比較して+1692フレームで S-JET 噴射を終えることができた。

 2周目と3周目が1691フレームだから、ギリギリで カッコは付いている。だが、棒磁石地帯を抜けて最初のヘアピンへと突入する部分で、更に遅れてしまう。0.5フレームぐらい遅い。これでは、4周目のラップが1692フレームで収まるかどうかも怪しい。
 そもそもどうして、4周目は最初でこれほど遅いのか?

 3周目はともかく、2周目とはショートカット後の再スタート条件がほぼ同じである。それなのに、どんなに頑張っても遅い。

 前に戻って、遅い元凶である S-JET 噴射時を確認する。2周目と4周目を詳細比較しようと考えたのだが、そんな手間が掛かる作業を行う前に問題点に気付く。

 過剰にブレーキを掛けて、478キロを大きく割り込み過ぎている。
 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