ラッパライブラリの可能性

twitterを始めてみたので、テキトーに考えたことはあっちに書いていて、それなりにまとめて書かないといけない(と思い込んでいる)ブログのほうに書くことが減った。
こっちに書き散らしてもいいのだけど、小さすぎるネタをブログに書くのは気が引ける。
多くなるし。
考えたことをまとめて、もしくは、長くなりそうなことを書くような使い分けになるだろうか。
で、今回はRubyのラッパライブラリの件。


RubyではSDLを扱うオールインワン型のライブラリが多いためか、ゲーム向けの個別機能を提供するラッパライブラリが見当たらない。
とりあえずVox.dllを呼び出すものだけは作ったが、それ以外の色々があってもいいのではないかと思った。
品質の高いものが作れれば自力でサポートしたほうがいいのだろうが、特に音に関しては中々難しいもので、既にあるものを使うことができれば、それでもよい気がしている。
とはいえ、Windows用にDLLで提供されたものがあっても、Win32APIから呼べると言っても、それを簡単に作れる人とそうでない人がいるわけで。


モノによってサイズや機能、サポートするフォーマット、処理性能もマチマチで、例えばDXRubyネイティブサポートで十分だったり、FMODみたいなのを使いたい人がいたり、その中間あたりがヒットするようなことだってあるだろう。
現状、選択肢が無いのだ。
DXRuby自体も数あるゲームライブラリの1つの選択肢として公開しているわけだし、もっともっと、色んなものがあってしかるべきだ。
まあ、そうは言っても俺自身がDXRuby以外の何かを新たに作るわけにもいかないから、できることと言えば外部DLLラッパを作ることぐらいなのだが。
ほんとはDXRubyに不満を持つ人とかが、もっとすごいのを作ってくれれば言うこと無い。
もっともっと爆発的に速くて、すげーアイデアRubyの処理もチョッパヤになって、DirectXを極限まで活用したとんでもないエフェクトが使えて、しかも簡単すぎて思わず鼻水が出ちゃうよーなの。
もしそんなのあったらDXRuby捨てて鼻水出しながら使う。


Windows系の外部ライブラリに選択肢がないのは、Rubyユーザーでそういうものを作る人が、基本的にマルチプラットフォームを尊ぶ人だからだろうと思う。
しかし、現実を見て敢えて言うなら、ゲーム開発プラットフォームはWindows一択だ。
ライブラリ周りの充実度も、ユーザー数も、どう考えてもWindows専用にするのが正解なのだ。
SDL1.3が出ちゃったら状況はある程度変わるかもしれんけど。
そこはそれ。
俺はDXRuby作者として、Windows専用のRubyゲーム開発環境にこそ可能性があると信じて、こっちの方向で整備していくとしよう。
まあ。
そう思った、という話。