読者です 読者をやめる 読者になる 読者になる

つまらなくて役に立たない物を作るということ

最速の人が何か書いていたのでこそっと書いておこう。僕はもうゲームプログラマではないけど。


Webで役に立つツールをつくれる人はみんなから「凄い」と言われることが多いような気がする。


ぶっちゃけゲームなんて役にたたないし、たぶん大部分のゲームは「誰か」にとって面白くない。
すべてのゲームプログラマが何万ポリゴンとか動かしたりしないし、
シナリオテキストをパースしたり、正規表現構文解析したり、マップエディタをつくったり、パーティクルジェネレータをつくったり、そういうのが得意な奴もいる。
ゲームの人らがみんな秒間3億ポリゴン動かしてウハウハだなんて思わないでほしい。
ちまちましたことをやっている人だっているのだ。
なんでこんなちまちました敵のパラメータ設定や挙動のプログラムを組まなきゃならんのだ、とかどうしていちいちマップエディタとかシナリオスクリプトとかメニュー表示や挙動の制御を作らなきゃいけないんだ、思ったりすることもある。


なんでそんなことをやらなきゃいけないかというと、なくてはならないものだし、好きだからやっているのだけれど、
Webのツールを作っている人らから見ると何をやっているのか全然面白さが分からない、
「そんなものどうでもいいから、役に立つWebツール作れよ」って言うだろうね。
ツールのUIを考えたり、みんなが「おっ」というようなサービスを考えたり、APIをつかってマッシュアップする方が面白いと思ってる。
そんな奴らに皆殺しにされた日には俺の魂が報われない。


ゲームを作るのに「ちまちましてつまらない部分」が無いと思ったら大間違いだ。
下手をするとゲームプログラマの方がWebは花形だなぁ、なんて思っているかもしれない。
マップにアトリビュートをはったり、コリジョンを処理したり、なんてのはまだマシだ。
CPU命令のパイプラインやキャッシュを考えたり、メモリ配置を工夫したり、
リンカスクリプトを書いてゲームのメモリイメージを決定したり、
メモリアロケータを書いたり、タスクマネージャを書いたり、
どこでもセーブできるようなセーブデータのデータ構造を考えたり、
見えないところで見えないものを作っている人の身になれ。*1


世の中いろいろと不快なことが多くて、ゲームプログラマは少しでも娯楽をつくろうとしている。
世の中こんなにつまんないことばかりだから、ゲームの中くらいでは楽しんで欲しいと思ってゲームを作ってる。
そして、情報を集める為にWebに泳ぎでて、Webにはいろんなツールがあってlivedoor Reader便利だよ、ありがとうと思いながらRSSを読んだりする。
基本的にゲームプログラマがゲームを作るのは好きで面白いからだ。
つまらないゲームだって作らされるけど、それでも耐えるのは好きだからだ。


面白くなければ意味がない、と愚痴を零しながらゲームプログラマはゲームを作る。
目の前にあるものが大衆ウケもしない、売れもしない、誰かの自己満足のためだと思っていてもゲームを作る。
少しでも面白いものを目指すようにして作り込もうとする。
ゲームの中に魂を埋め込むのがゲームプログラマだ。
自分の仕事に価値がないだなんて思わない。
誰かの仕事に価値がないだなんて思わない。
そして、表面にある面白さだけがすべてじゃない。
だって、すべての人にとっての「面白さ」なんて定まらないだろ?
あまりゲームプログラマを舐めるな。


つまらなくて役に立たない物をつくる人もいる。
いつか面白いものを作りたいと考えて腕を磨きながら。


何だか悔しくて勢いで書いた。
もちろん本意ではないなら本意ではない。

*1:ちまちましていてつまらないと言ったけど、面白いよ