jgame.js 2.0のリリース

リリースしたぜ。
http://sourceforge.jp/projects/jgame-js/news/24223

改変内容についてとか

まあ、互換性捨てて色々直した。リリースの変更履歴に全部書いてある。
http://sourceforge.jp/projects/jgame-js/releases/58684/changelog


一部抜粋。例えばこういうの。

1. inputDown, inputMove, inputUpのみだった入力系イベントをポインティングイベント系のpointDown, pointMove, pointUpとキー系のkeyDown, keyUpに分離

この手のインターフェース変更が結構多い。
名前空間の追加が修正量的には一番大変だったかな。

54. 全クラスをjg名前空間内に変更。またこれまでのコードを動作させやすいよう、jg.globalizeを追加


TypeScript的にはwebaudio.d.tsを不要にしたのが大きいかも。ほんと邪魔だったwebaudio.d.ts。

58. SimpleSoundでwebaudio.d.tsを利用する形式をとりやめ、HTMLAudioElementベースとした。
これにより、ビルド時にwebaudio.d.tsが不要となったため、libからwebaudio.d.tsを削除


あとこのフレームワークで気にいらないのはE.updatedに関するところ。あそこだけ無駄な関数コールが多いなぁという印象。修正方法はノーアイデアなので直してない。
まあ全体的には、それなりに満足いくレベルになったかなぁという感じ。

今後について

今後はバグフィックスくらいになる予定。
機能面は本体いじるのはもうやめにして、モジュールで開発していくつもり。


ドキュメント類はAPIドキュメントの更新をやめてしまったので、実質ドキュメント0状態。
なんとかしたいと思いつつ、ノーギャラでドキュメント書いてるとあほらしくなってくるんだよなぁwサンプルはテスト代わりになるから作る気になるんだけど。
まあなんか要望があったら考える。

他のライブラリについて

リリースしたぜといっといてなんだけど、今一番いいHTML5系ゲームフレームワークは、pixi.jsで多分確定してる。
https://github.com/GoodBoyDigital/pixi.js/
pixi.jsはマジで強力なので、普通にゲーム作る人はpixi.jsお勧め。


扱いやすさで言えばenchant.jsもいいと思う。特にスマフォサポートが強力。
俺がハノイで会った中で一番優秀だと思ったベトナム人も使ってるよ。FireFox OSBlackBerryはもちろん、Bada(もちろんTizenも)でもバリバリ動く*1
個人的にenchant.jsを遅いとかいう議論はちょっと的外れだと思っていて、enchant.jsはほどほどの速度を保ったまま扱いやすさと多機種サポートを追求してって欲しい。


速さではpixi.jsに負けてて、サポートや扱いやすさではenchant.jsに負けてるので、せっかくリリースしたけど俺自身そんなにお勧めって訳でもない。
ドキュメントも無いしなw

jgame.jsに期待すること

お勧めってわけでもない割に俺がリリースして、かつ今後も使っていくつもりなのはそれなりに理由もある。
pixi.jsがjgame.js製作開始前にあったら作ってなかったかもしれないけど、pixi.jsが出てくる間に色々機能を作っちゃったせいで、今から乗り換える気にはならなくなってしまった。


結果的に、今俺がやりたいことに一番近いフレームワークがjgame.jsになってるので、今後のjgame.jsに期待することは、今後俺が出していくものをもって俺が何を期待していたかを説明できればなと思う。
キーワードはTypeScript、そこそこ速い、事後再生可能、HTML5、スマフォサポートってとこすな。


とりあえず、月末にはjgforceというもののプロトタイプを出すので、興味ある人はそっちを見てもらえるとありがたい、ということで。

*1:enchant.js 0.5系の話だけどね。0.6系はそこまで動かない