Miyako2.1.12リリース
Miyako2.1.11に潜在の大きなバグが見つかったため、急遽2.1.12をリリースいたしました。
2.1.11が入っている方はインストール(gem install ruby-miyako/ruby-imyako-mswin32)をお願いします
gem以外のダウンロードは、こちらのリンク集のMiyakoダウンロード(RubyForge)からどうぞ
変更点は、以下の3点です。
インストール方法は、リンク集のMiyakoメインサイトからどうぞ。
変更点は以下の通りです。
・SpriteAnimation.newメソッドで、move_offsetパラメータを渡すと、表示位置が狂うバグを修正
・Layout#.left!で無駄なコードがあったため削除
・SpriteArray#.update_animationメソッドで、返却値を配列からtrue/falseに変更(どれかの要素のパターンが変更すればtrueを返す)
・Point/Size/Rect/Square構造体にupdate!,update_by_point!,update_by_size!,update_by_rect!,update_by_square!メソッドを追加
上2つについては…ごめんなさい。
下2つは、メモリの有効活用のためです。特にupdaet_animationの返却値に配列を渡すと、次から次へと配列が作られるため、すぐにガベージコレクションが起きやすい状態となりました。さすがに問題と判断したため、以上のような仕様に変更いたしました。ご了承をよろしくお願いいたします。
update!系メソッドは、Point同士や、RectからSizeへの値コピー時に、多大なメモリの増加を減らすために追加しました。
たとえば、以下のようなコードがくめます。
@off = Size.new : hogege = [Rect.new(...), ...] : hogege.each{|hoge| @off.update_by_size!(*hoge) : # 別の場所 hogege = [Rect.new(...), ...] : # 最初のhogegeでの値を保全 fuga.resize!(*@off)
これを使えば、hogegeの内容がちょくちょく変わるようになっていても、@offの値は保全されます。