サイログ。

~雑多な記事置き場~

Miyako2.0計画完了

というわけで、最新版をgithubに登録しました。ダウンロード・forkは、以下のURLで行えます。

http://github.com/cyross/
git://github.com/cyross/ruby-miyako.git

変更点は以下の通りです。かなり頑張りました(笑)

  1. Effectクラスの廃止
  2. EXT周りの修正・追加
  3. MiyakoCairoモジュールの追加(Miyako::Sprite<->Cairo::ImageSurface相互変換)*1
  4. RasterScrollクラスの修正(Miyako2.0に合わせた・Effect継承をやめた)
  5. Slideクラスの修正(ベースとなる背景は、slide[:___base___]で参照するように変更、テンプレートの追加)
  6. to_spriteメソッドの強化
  7. broad_rectメソッドの追加(Partクラスなどでは、すべての構成を組み合わせた大きさを返す)
  8. bounds関係メソッドをLayoutモジュールからViewportクラスに移動
  9. ・・・他にもあったハズ

個人的には、MiyakoCairoの追加が嬉しいです。やりたいやりたいと思っていて、やっと追加できたかと言う感じ。
(実装自体はそんなに難しくありませんでした・・・)

MiyakoCairoの使い方はこんな感じです。めっちゃシンプルです・・・。*2

require 'Miyako/EXT/miyako_cairo'

# Miyako::Sprite -> Cairo::ImageSurface
surface = MiyakoCairo::to_cairo_surface(sprite)

# Cairo::ImageSurface -> Miyako::Sprite
sprite = MiyakoCairo::to_sprite(surface)

さあ、これでゲームを作るか*3

*1:但し、要rcairo1.8.0以降

*2:ただ、Spriteへの変換時の値設定が結構アドホックなので、レアケースで問題が起きそう・・・

*3:でも、肝心の(略)