2009-11-28から1日間の記事一覧

RGSS2を知る(10)

RGSSはRubyGameScriptingSystemでRGSSなのだから、Rubyではあるのだが、ライブラリはいまいちRubyぽくない動作をする(俺的感覚)。 こういう感覚は人によって違うので、たとえばDXRubyも俺が思う以上にRubyぽいと言われたり、Rubyぽくないと言われたり、まち…

RGSS2を知る(11)

マニュアルに「返される値はコピーではなく参照だから、値を変更すれば反映される」というようなことが書いてある。 気になったからもう少し調べてみた。 さっきの「←ここ」をこのように変えると、 s.tone.gray = g # ←ここ 確かに色が変わるようになった。 …

RGSS2を知る(12)

グレースケール化の処理について。 osakana.factoryさま http://ofo.jp/osakana/cgtips/grayscale.phtml このサイトさまを参考に、Spriteのグレースケール化した色と、自前計算した色が一致するような計算式を探った。 b = Bitmap.new(200,200) b.fill_rect(…

RGSS2を知る(13)

Spriteはもともとそのクラスのオブジェクトを内部に持っていて、=付きのメソッドを呼ばれると引数の値を内部オブジェクトにコピーする、ということのようだ。 Bitmapクラスのrectはプロパティとしてではなくメソッドとマニュアルに書いてあり、設定機能はな…

RGSS2を知る(14)

気が付いたらもう14回目。 RGSS2がよくわかってきたような気はあんまりしない。 今回はViewportのフラッシュについて。 以下のコードを実行すると、指定時間が違うのにどちらも同時に消える。 v1 = Viewport.new(0,0,400,300) v2 = Viewport.new(100,100,400…

RGSS2を知る(15)

休みの日に一日中こんなことやってるのってどうなん? b = Bitmap.new(100,100) b.fill_rect(b.rect, Color.new(255,255,255,255)) s = Sprite.new s.bitmap = b s.angle = 45 loop do Graphics.update end 白い四角を回転させた。 この結果から言えることは…

RGSS2を知る(16)

終了方法がナゾだ。 DXRubyはWindow.loop/Input.updateでメッセージを処理するから、それを呼ばないとRuby側で終了条件を識別できなくて終わることができなくなる。 RGSS2ではGraphics.updateを呼ばなくてもウィンドウを閉じると終了してくれる。 loop do en…