また最近日記書いてないなぁ。
書くようなこと何もしてないに尽きるんだが。
GC本買おうとしたら全然売ってないので困った。横浜のヨドバシまで行ったらあったので助かったけど。近所の本屋で唯一頼りになったコンピュータ関係の専門書が著しく衰退したのが残念すぎる。
IronRubyとSilverlightでBulletML動かしたはいいけどさてここからどうしたものか。
なんとなくSilverlight4だったらもっと速くならんものかと試そうとしたが、Silverlight4用のChironがビルドできなかったのでとりあえず諦めた。
fps表示とかさせてみたけど、MacのCore2Duo 2.92GHzでは弾100個くらいで30fpsが目安といったところ。150個くらいはいけそうだけどまあ安定してるのは100個ちょいくらいか。
描画と更新処理どっちが重いのか計ってみたら更新が20から24msくらい、描画が8から9msなので更新が超重い。描画の中もRectangleの更新をRubyでやってるのでこれが結構時間かかってると思われる。Silverlightの描画自体は想像より断然速いようだ。すげー。
1/30sで更新処理を動かしてるので1/60sで1ステップを想定してるBulletMLに合わせて更新処理を一度に2回動かしてたのが重いみたいね。1回更新にしたら描画とだいたい同じかちょっと長いくらいの時間に落ち着いた。
BulletMLの実行はとりあえず動くこと優先で書いたから速さとか気にしてないのも悪いかもね。
まあ速くしていってもいいんだけど、そんなところ作り込みたいわけじゃないのであんまり弾出さない方向にしよう。
というかそもそもどんなゲーム作るのかと。
Silverlightで取れる入力はキーボードかマウスのみ。しかもSilverlight3だと右クリックも取れないよ!
マウス位置もMouseMoveイベントで取るくらいしか無さそうだけど重い更新処理やってるせいもあってか反応も良くない。キーボードでSTGやる気にもならんし、マウスでSTGやる気にはもっとならんから真面目にSTGを作るのは面白くなさそうだね。
とりあえずマウスで弾幕避けるようなゲームは無さそうだ。 あんまりリアルタイムなゲームじゃない方がいいかな。 その方がCPUにも優しい。つかIronRubyに優しい。
うん、まああとはやる気があれば何かしらは作れそうだ。さーてやる気はどうしようかなぁ…。