OpenGLのほうはあんまり面白くもなかったのでまだ見てないです。
GF100が出てきてたぶんシェーダ内でポインタ読み書き!とかできるようになるかと思うんですけど、そうでもないと面白くないかと。
どうにも土日はぼけっとピアキャス見てるだけで1日過ぎていく。それだけ時間あったらもっと何かできるだろうと…。
時間の使い方が下手なんだけど、どうにかなんねーかなー。なんねーかなーなんて言ってもどうにもならんのですけどね。
デスクトップマスコット用のツール作りを進めてました。
今まではobjやmqoを読み込んでアニメーションはパラパラ漫画方式で表示してたんですけど、めんどいのでキーフレームの間をモーフィングで補間するようにした。
これをGPUでやるかCPUでやるかが問題なんだけどGPUはいろいろめんどいのでとりあえずCPUで。
まあ作るのはそんなに苦労しなかったんだけど、なんかいまいち使えないなぁ。
単なる線形補間だし思ったように綺麗に補間できるわけもなく、キーフレームを適当に読み込んであげて、あーやっぱりこの辺破綻するかーとか言いつつキーフレーム増やしてあげて…ん?めんどいぞ。
やっぱり全身モーフィングは無理あるよなぁとは思うんだが、そういう問題でもないんだよなこれ。
Blenderとかから書き出した後で再度試行錯誤しないといけないのがめんどい。じゃあ全部キーフレームにして連番objそのまま読み込めばいいじゃんってなるんだけどそれはそれで後から編集するのがめんどくて…。
うーむ。どうすればいいんだ。
まあどうするもこうするも、こんなもの俺しか使わないからどうでもいいんですけどね…。
とりあえずアニメーションの編集ツールはもう飽きたからいいんじゃないだろうか。 デスクトップマスコット本体の編集ツールに入りたいところ。 使い勝手は全体を見て直していった方がいいだろうな。
BulletMLのRuby実装ができちゃったので、とりあえずSilverlightでなんかゲーム作ってみるかーというお話。
SilverlightとIronRubyはIronRubyを落としてくればすぐに使えます…ってあれ?IronRubyの1.0RC3だと何故かちゃんと動いてくれない。エラーも出ないしわからんなぁ。
とりあえずRC2だったら動いたのでこれで。
Silverlightでの描画がわからんのでSilverSpriteを使うことにしてみる。してみたんだけど…。Gameオブジェクト使おうとするとリソースが読み込めないとかなんとかいう感じの例外が出ちゃう。なんだこれー?
しばらく試行錯誤してみたけど無理っぽいのでやめた。C#じゃないとダメなのかな?
仕方ないのでSilverlight直接使いましょう。
しかしこれ描画がわからんな。UIElementのシーングラフ作ればいいんだろうけど、弾1つにつきRectangle1つで弾幕ってやばそうだな。
WPFにはプログラム的に描画できる機能があったなーと思ったんだが、そのDrawingContextとやらはやっぱりSilverlightには無いみたい。けち。
仕方ないのでWritableBitmapImageに一旦描いてから表示するくらいにしてあげた。たぶんこれで一括描画してくれるでしょう。
あとは画像を読み込むのに苦労したりとか。何故かUri指定の画像読み込みが動いてくれなくて、しかも例外も何も上がりやがらねぇ。xapと同じフォルダに画像置いてあるからセキュリティとか大丈夫だと思うんだけど…。なんなんだかよくわからんがxap内のファイルのストリームを取得するメソッドがApplicationにあったので、画像をxapに入れてあげてそれで解決した。
xmlも読み込むのに苦労した。いやそんなに苦労はしてないんだけど.NETのStreamを取得してきてRubyのIOとして使えないかいろいろ調べて時間かかった。結論としては無理だよばーかばーかというのが分かったのであきらめた。つかIO#readを使いたかっただけなんだが、StreamReaderで同じようなことができるので問題なかったのである。
んでとりあえずは動いた。おそいけどなー。うわAtomで動かしたら遅すぎるぜ。
動くのは確認したけどどんなゲームにしましょうねぇ…。