サイログ。

~雑多な記事置き場~

Miyako2.1.10リリース予定

Input.updateメソッド内でバグが見つかりましたので、Miyako2.1.10をリリースを予定します。

元々、「なぜかキーを話してもInput.trigger_amountの結果が変わらない」という問題がありましたが、
再現性が非常に低かったため、なかなか原因が見つからなかった。

さらに、処理が重くなると、症状が現れやすいことに気づいて、原因を調査しました。

…アレ!?

何たる不覚!

入力イベント処理の順番が逆でした。

昔々、Miyakoを作り始めた頃(Ruby/SDL1.Xの頃)、なぜかイベント取得がキューではなくスタックになっていたので、積まれていたイベントを逆方向に取り込んでいました。その後、イベント取得がキューになったようで、順番に処理すれば問題なくなっていましたが、Miyakoではそんなことお構いなし(たいてい、Input.updateしたときはイベントは1個だろうと考えていた)でした。ところが、たまたまイベントが2個たまったとき(1フレームの処理が遅くなったとき)に問題が起きていたようです。

というわけで、Miyako2.1.10ではこの問題を解消しました。さらに、イベント処理をCに置き換えられないか検討した後、リリースします。