2009-04-23から1日間の記事一覧

Rubyの終了時処理

DXRubyでは、DirectXの基本的なインターフェースを初期化の時に取得して、Rubyのオブジェクトを生成するときに、それぞれ個別に必要なインターフェースを取得するようにしている。 で、GCにより解放されるタイミングで、個別のほうを解放して、Rubyの終了時…

うーむ

rb_set_end_procはRubyのENDブロックの登録らしい。 なるほど、それは最終的なGCより前に動かないと都合が悪い。 んで、最終的なGCよりも後に呼ばれる関数というものは無いようだ。 こういうものがいままで無かったのは、普通は無くてもよいということなのだ…

むむ・・・

COMインターフェースを使うのにInit_dxrubyでCoInitializeをしているのだが、CoUninitializeを呼び出すタイミングがrb_set_end_procだから、これもまずいんじゃないか。 こっちは全オブジェクトが解放されてから1回だけ実行しないといけないから、全部のDire…

ようやくすっきり

ずっと気になってた音関連と全体の解放処理がすっきりした。 よくわからなくてなんだか気持ち悪かったのだ。 次は音のインターフェースを作らないと。 再生と停止しかないから、ループ開始位置、終了位置、回数、ボリューム、フェードイン、フェードアウト・…

DXRuby0.0.6リリース

いましてきた。 大きなバージョンアップだからSourceForge.jpのトップニュースに流してもらった。 リリースニュースのメッセージはこんな感じ。 「作ろうと考えていた機能が一通り揃いました。 簡単なゲームならとても簡単に、複雑なゲームでもRubyのおかげ…

目玉機能が

DXRuby0.0.6のリファレンスマニュアルにSoundEffectクラスの追加機能を書き忘れた。 目玉機能のはずが隠し機能になってしまった。 いろいろと調べ物してたら、はてなMML記法とゆーのが出てきた。 へー、すごい変なもの作る人がいるんだなーって思ってたら、…