gonypage diary

トップ > 2013/04

2013/04/02

20:51 GONYNENGA 13

白状します。毎年出す年賀デモ、全然完成しなくて出しそびれておりました。エイプリルフールのネタにしちゃえよ、という悪魔の囁きを受けて、それには絶対間に合うようにとがんばった。

というわけで、ぜひお楽しみくださいといいたいところなんだけど、酔狂なことにも今回SDL 2.0ベースに移行してしまい、バイナリ配布の準備がまだできてない... というわけでとりあえずソースコードのみの公開。はっきりいって2.0への移行は大失敗だった。2.0自体はいろんな可能性を秘めていて楽しみなものだとは思うんだけど、いかんせん枯れてなさすぎる。

Objective-Cのコードベースを捨ててCで書き直したのも苦労の原因だった。思えば毎年、上手にクラスを使いまわしながら続けてきたもんだ、ということになるか。やりたいことを実現するためにまずクラス起こさないとねーということが多すぎた。まあでもCに関数ポインタベースのOOがあれば言語仕様的には全然不自由しないなあと再確認した。あとはやりたいことを簡単にするためのクラス群さえ揃っていれば、の話だけど。

最後に収穫も。ネイティブ言語でもやっぱりコルーチン使いたいよね、ということでネイティブスレッド使ってコルーチン作ってみた。実装中は予期せぬデッドロックに見舞われたりして大変だったけど、安定して動くようになってしまえばこっちのもので、シーケンスが気持ちよく書けるようになってとてもよかった。興味がある人はNKCoroutine.{c,h}あたりをご参照あれ。

そんなわけで、(たぶんそんなようには見えないだろうけど)すごく苦労したプロジェクトだった。でも、この新しいコードベースは結構いろいろ面白いところがあると思っていて、今後大切に育てていきたいと思う。

Generated by Rui 0.4.3