生存報告

ようやく今の会社に入ってから続いていたプロジェクトが終わりました〜
終わり間際になってくると、連日会社から帰るのが夜中の2時とか3時とか。
当然休みもないもんで、なんも出来ませんでした。


とまぁ、これで復活宣言になればいいんですが、
次のプロジェクトが控えてるし、
そのプロジェクトも開始が遅れてスケジュールがやばめといういやな噂もあるんで、とりあえず生存報告だけ。


会社の仕事以外にもいろいろやらなきゃならんことあるんで、忙しいのは相変わらずだしねー。


とりあえずはCROWは一旦置いておいて、かなりガタが来てるゴーストセンター&ゴーストマネージャあたりを修正予定。
いろいろ問題が出てるのは分かってるんですが、手を出す暇がなかったもんで。
いつだか書いた改良予定も含め、まともなシステムにする予定。


使ってる皆さん、もうしばらく我慢してくださいね〜。

福岡地震

心配してる人もいるかも知れないので、生存報告ー
地震対策なんもしてないところに震度6来た割には被害は軽微


破損したのはリモコンのボタンが一つと、Delphiの箱ぐらい
あとはCDが何枚かと、爪楊枝がばら撒かれたぐらいですな(笑)
TVや本棚の上のダンボールとかが傾いてて、結構危ないとこでしたが


でなんでこういう時期はずれな報告をしてるかといいますと、
地震来た時東京にいて、ついさっき帰って来たとこだったりします
親からの電話で地震があった事を知ったぐらいで


東京行く用事が会ったんで、ついでだから春コミものぞいてきました
王立エドマエンジンが面白そうだったのに、買えなかったのが残念
一番最初に向かったんだけどなー


でまぁ、さっき確認するまでは部屋の状況がわからなかったわけで、
せっかく一週間ほど前に綺麗にしたのに、元にに戻ってるんじゃないかと思ってましたが、
前述の通りほとんど被害は無し


ちなみに、大地震といえば昔実家にいた頃、十勝沖地震食らったときもたまたま外出てたんですよね〜
めずらしく犬の散歩に行ってたりして
結果的には、その時もいろんな物が散らばっただけでほとんど被害はなかったんですけどね。
友人連中も認めるうちの強運は相変わらずらしいです(笑)

CroSs+Materia終了

CroSs+Materia無事終了ー
ついでに、1日限定CROWネタトップ画像も差し替え(笑)
実を言うと、地方開催なもんで、ものすごく閑散としたイベントになるんじゃないかと少し心配してたんですが、
会場の規模考えると丁度いいぐらいの人出で、わりかしいい感じでした。


やっぱこういうイベント行くと、伺か好きな人のパワーが感じられて、開発にも気合が入ります。
とはいっても、今回少し無茶して時間作ったもんで、最低2週間ほどは完全に時間が取れなくなったりします。


早く今の開発版を安定版まで持っていきたいんだけどなー
あと大きなところは、バグを除けば着せ替えと開発用インターフェース周りかな?
着せ替えは何箇所からかつつかれてはいるんで、V0.5.3にはなんとか入れたいところです。



今回は地元開催だということで、いつもは私が泊まりに行くんですが、
珍しく人を泊めることになりました。
面子は、たすくさん、一魔さん、FA-Xさん。
結構長距離の車での移動ということで、何も問題なく帰りつけていればいいんですが。


部屋では酒を入れて、あーだこーだといろんな話を。
内容はやばくて書けんよな〜とかいうことに(笑)
やっぱうちはこういう、酒いれてのあーだこーだという雑談が大好きですわ。


当日はぽなさんを空港から拾って、5人で会場へ。
結局、開場前から終わりまでずっと会場にいました。
会場ではいつもどおり、ぽなさんがリアルタイムデバッグを行ってました(笑)


終わった後は元の面子とさとーさんと、会場で会ったボトラーさんと一緒にメシを食い、
車組とわかれた後は、飛行機まで時間があるということで、
天神行ってエクセルサーガの元ネタ探しをやりつつ、いろんなネタを見っけ、
ラーメンを食ったりしてました。


一緒に行動したボトラーさんは、ぽなさんががっちりゴーストマスタへの勧誘を行ってたので、
次に会う時はきっと立派なゴーストマスタになっていることでしょう(笑)


とにかく楽しい1日でした。
次は彩伺祭ですなー

crow0.5.2

CroSs+Materia合わせで約1年ぶりの新バージョンです。
間があきまくってたので、ソース見ても何をやってるのかわからない点がいろいろと(笑)
なんかしらのエンバグしてる可能性もあるけど、開発版ということで多めに見てやってください。


今回の目玉はエフェクトプラグインですね。
これはSDNさんのシェルテスト&ラスタエフェクトデモツールを見て思いついたもんで、
結局作り始めてから公開までえらい期間がかかることになってしまいました。


SDNさんへはすでに連絡済なんで、そのうちいろいろなエフェクトプラグインを作ってもらえると思います。
http://www.boreas.dti.ne.jp/~sdn/


エフェクトといっても、元画像関係無しに画像を作ってもいいわけで、いろんな応用例はありそうです。
今後の拡張で、エフェクトプラグイン側から本体のプロパティを取得できるようにする予定なので、
そうすれば現在のサーフィス番号や、あたり判定の範囲なども取得できるようになるはずです。


さて、いよいよ明日がCroSs+Materiaですねー。
私にとっては初の地元開催だったりするので、非常に楽しみ。
そこで知り合いにあっても、今までのまんまじゃちょっと顔合わせづらかったもんで、
どうにかしてcrow新バージョン作りました。


相変わらず忙しいですが、掲示板に報告ある件なんかも時間が出来次第順次対応していきますんでよろしく。

luaでのクラスの継承

また、今日は次のCROWで使う予定でもあるLuaと格闘してました。
Luaオブジェクト指向言語ではないんだけど、
同様なことはテーブルをうまく使うことによって実装できるはずということで、
今日一日かけてどうにか形にできました。


メタテーブルの理解が中途半端だったのが足を引っ張った感じで、
リファレンス読んだり、ネットであちこち検索して調べてました。


とりあえず、わかったことは

  • テーブルとメタテーブルはあくまでも別なもの

 テーブルに関数を追加する要領で__index等の関数を登録しても動作しない

  • ただし、テーブルとメタテーブルは共有できる

 前述の用に単にテーブルに__系の関数を登録しても動作しないが、
 自分自身をメタテーブルとして登録することは可能

  • __indexは別に関数しか登録できないわけではなく、テーブルを登録できる

 つまり、親となるクラスの関数が登録されているテーブルを
 子のクラスの__indexに登録すれば親までさかのぼって関数を呼び出してくれる


大きなところでこんなところです
これらのことがわかったおかげで、C++の継承と同じような形でLuaから関数を呼び出せるようになりました。


思ったことは、実験するならいきなりCからアクセスしないで、
Lua上だけで実験した方がいいですね。
何が問題なのかわかんなくなってしまう
あと、最低スタック内容のダンプぐらいは出来るようにしておかないとはまります。


ちなみに、Lua for Delphiについているデバッガがいろいろと便利です。
Delphi使える人は、一度インストールしてみるといいかも


実装の基本形はliolib.cにあるfile関連の処理ですね。
ここのcreatemeta関数でCで関数テーブルを持つクラスのような物を生成しています。
ようやく、ここでなにやってるかが理解できました。


継承を考えなければほぼコピペそのままで使えますが、親クラスの関数を呼びたい時は、
子となるクラスを同様な形で登録し、親クラスのテーブルをレジストリから取り出し、
そいつを今作った子クラスのテーブルのメタテーブルとして登録すればOK


ここらへんはCaluaやluabind使うとどうにかなるんでしょうかねー
どっちも日本語の資料があまり見つからなかったんで、詳しくは調べてないんですが、
Caluaはアセンブラを使っているので、他環境で使えないのでアウト、
luabindはboostを使ってるんで、これも移植に問題が出そうなんでアウト


今作ってるライブラリはいろんなCPUやコンパイラで使ってるんで、
環境に依存しそうな物は使えないんですよね。
今のとことりあえずコンパイル通るだけでCPUが4種、コンパイラが8種かな?
いろんな環境でコンパイルすると、いろいろ気がつかなかった問題を発見して楽しいです。

mac mini到着

今日mac miniを買って来ました
あらためて見るとやっぱ小さいですね〜
店で箱受け取った時も、PCの箱という感じじゃなかったです


で、家帰って早速起動
一通り設定し起動はしたんだけど、使い方がぜんぜんわからん・・・
macは今まで触る機会が一切なかったもんで、初mac体験です
とりあえず、ウィンドウの動きが妙で面白いなーと(笑)


結局、いろいろいじくりまわして、
開発環境らしいXcodeをインストールしたところで今日は終わり
続きはまた時間あるときにしよう


なんにせよ、macでプログラムを組む前にMacOSの使い方覚えんと駄目ですな〜

CROW

ようやくCROWのコーディング再開
半年以上触ってなかったから、全体を把握するとこから始めないと


特に、安定版はともかく開発版は結構思いつきでいろいろ変な機能追加してたりしてるから、
それらをちゃんと動かすのが先決かなー
PLUGIN/2.0も途中まで実装してるし


とりあえず、次の開発版にはPLUGIN/2.0と使い道のよくわからない追加タグと、
うまく使えば面白いことができそうな独自のプラグイン機構がつく予定