ClockRoom

マッハニンジン | 運営ノート

マッハニンジン

全く気付かなかった。 速いマシンで動作させるとあんな結果になるとは・・・ というのは、先日報告し修正した『不思議なニンジン畑』のバグのこと。 今まで鈍足なマシンを使用していたため気付きようが無かったのだが、よく今の今までバグ報告も無く通ったものだ。

何が悪かったのかというと、完全に私の設計ミスである。 1フレーム時間を固定するために「定周期発振クラス(afOscillator)」というものを使っているのだが、このクラスのエラー訂正アルゴリズムが問題を抱えていた。 エラー訂正とは、あるタイミングでシステムによる何らかの処理(ディスクアクセス等)が加わり、フレーム時間が著しく延長されてしまった際に、その延長分を無視する処理である。 この無視する方法に問題があった。

実はこの問題、マシンが遅すぎても発生する。 それは以前からわかっていたのだが、まさか速すぎても起こるとは。 アルゴリズムはしっかり組み立てないとな・・・

コメント

名前
内容
送信

※URLを含むコメントはできません。