サイログ。

~雑多な記事置き場~

Miyako1.5pre5を公開しました。

というわけで、Miyako1.5の最新版、1.5pre5を公開しました。
ダウンロードは、以下のWikiをどうぞ。

http://wiki.fdiary.net/MiyakoDevSrc/

メインは、細かいバグ修正です。

今回からは、新しい試みとして「render」メソッドを追加してみました。

このメソッドは、明示的に描画を指示するメソッドです(MyGameやStarRubyに近い描画形式です。厳密に言うと、少し描画方法が違います)。

特に、一つのスプライトで複数の画像を描画したいときや、
「やっぱり、描画順や描画指定を自分でやりたい!」と思われたとき、
「今のMiyakoのやり方じゃMVCがはっきり分かれない!」と思われたときに効果的と思います。

以下にサンプルプログラムを上げておきます。
プログラム中の「miyako.png」は、Miyako1.5pre5.zipを展開するとreadme.txtと同じディレクトリに入っています。

# Miyako render sample

require 'Miyako/miyako'
require 'Miyako/idaten_miyako'

include Miyako

# プレーンの作成
pln  = Plane.new(:file=>"miyako.png", :type=>:as)

#スプライトの作成(1)
spr1 = Sprite.new(:size=>[200,200], :type=>:as)
spr1.fill(:yellow)
spr1.centering

#アニメーションの作成
base = Sprite.new(:size=>[100,200], :type=>:as)
base.fill(:red)
base.draw_rect([0,100,100,100], :blue, :fill)
base.oh = base.w
spr2 = SpriteAnimation.new(:sprite=>base, :wait=>0.5)
spr2.snap(spr1).left.top
spr2.start # アニメーションの開始

#スプライトの作成(2)
spr3 = Sprite.new(:size=>[100,100], :type=>:as)
spr3.fill(:green)
spr3.snap(spr1).right.bottom

loop do
  Input.update
  break if Input.quit_or_escape?
  SpriteAnimation.update_animation # アニメーションの更新
  Screen.clear # 画面消去
  # 描画は、renderメソッドが実行された順に貼り付けられる
  pln.render # プレーンの描画
  spr1.render # スプライトの描画
  spr2.render # アニメーションの描画
  spr3.render # スプライトの描画
  Screen.render # 画面描画
  pln.move(-2,0) # プレーンの描画
位置の更新
end

実行するとこんな感じです。

もし評判が良ければ表示方式のひとつとして残しておこうと考えていますので、ご意見よろしくお願いします。