フレームワークを作るのが楽しい

なんだかDXRubyのことを取り上げて頂いたようで。
で、今回の話題はそこの一文より。

蛇足だけど、Rubyゲーム界の問題は、みんな(俺を含め)フレームワークを作るのに忙しくて、ゲーム本体を作る人が足らないことだと 思います。フレームワーク作るのが楽しすぎるのがいかんのだ(フレームワークを作るのは、箱庭というか、世界をひとつ作ることだから、 たぶん言語設計に近い。言語>フレームワーク>ライブラリの順でこの要素が大きい。って前書いたことがあるな)。

Route 477(2009-05-29)

前にも似たようなこと書いた気がするが、結局みんな同じことを感じているのだ。
俺自身はどうかと言うと、そもそもゲームを作ること自体には興味がなく、もっぱらゲームを作るためのベース技術のほうに目が行く。
Rubyをいじっている人は、フレームワークを作るのが楽しくてゲームを作らないのではなく、みなさん実はそういう方向なのではないだろうか、とか思った。
ゲームが作りたくてフレームワークを作っているのではなくて、フレームワークが作りたくてフレームワークを作っているのだ。


Rubyユーザーにゲームを作る人がいないのか、というのは、実際にはよくわからない。
いたら作るはずだ、とは思っていたのだが、正直なところをぶっちゃけてしまうと、それなりの見栄えのものを適当に作って640*480pixelで60fpsが出ないような環境では簡単なアクションゲームすら作る気にならない。
それに、どれだけ簡単に使えるようにしても、このぐらいのものが作れます、というゲームが無い限りは、わざわざ勉強して使おうとは思わない。
んで、そういうサンプルがショボかったら目も当てられない。
「ある程度の品質」のゲームが必要なのだ。
使う人が増えて欲しいと思うなら、興味が無くてもそれぐらいのものは作って公開しなければいけない。


DXRubyの目標は、簡単に扱えて、かつ「それなりの見栄えのものを適当に作って640*480pixelで60fpsが出る」というところだ。
真剣に最適化していけば2Dなら何でも、というのが最終目標。
とりあえず実行性能に関しては、Ruby用ゲームライブラリの中では控えめに言ってトップクラスではないかと自分では思っているが、全部見たわけではないのであまり大きなことは言わない。
でも例えば、同じことをする簡単なスクリプトを実行して、DXRubyより2倍速いというものはさすがに無いんじゃないかと思う。
「それなりの見栄えのものを適当に作って640*480pixelで60fpsが出る」が実現できているかと言われると、まだちょっとキツいかな・・・というレベルだと思っているから、まだまだやらないといけないことは多い。
なんしか、一般的にRubyは遅いと思われているのだから、それを覆すだけのパフォーマンスと、事実として見せ付けるサンプルは必要なんだと思う。
あとは「これなら自分でも作れるかもしれない?」って思わせる簡単さ。
ゲームを作ってみたいと思っている人がRubyユーザーにいるなら、この3点セットでノってくるはずだ。