「ゲームプログラマになる前に覚えておきたい技術」が来た

パラパラめくってみた感想では、これは確かに「ゲームプログラマになる前に覚えておきたい技術」のレベルの本だということだ。もうちょっと高度なのを期待してたが違った。


でも普通のソフトウェア技術者にはこんな感じの本が必要なんだろうと思うとそれはそれで意味のある本だ。この本(の特に17章あたりまで)に載ってるようなレベルはグラフィックをやりたいと言ってくるようなソフトウェア技術者なら普通に理解してるものだと思ってこれまで仕事してた(若い人にはこの本の前半に載ってるくらいのことは息をするように出来ることを期待したりしてたし、実際たまたま出来る連中がきてたんだろう)が、少なくともちょっと外れた分野の連中にはこのへんの知識は全くなかったりするんだろう。


追記する(11/18)。googleで調べたら偉く上の方にこのエントリが出てくる割にあまりにも自分のことしか書いてないのでマズいと思った。せめて前半の流し読みくらいはしてからじゃないと書いちゃいけなかった。


上に書いたように初心者向けの本だが、しかし「これこそゲーム屋だよな」っぽい感じの書き方がいろいろある。細かいところでリアルに苦労した人の判断が垣間見れる。なので初心者じゃなくてもゲーム業界に関係していない人間には興味深い内容。


例えば3章の後半ではサンプルゲーム「荷物君」用に6種類のキャラクタ絵を用意する部分があるが、大抵の入門書では画像を6枚用意するところ、この著者が用意した画像はそれを横に並べた192x32の画像である。なぜそういう画像を用意するのかの説明はされてないが、ゲーム屋ならそうするのがやっぱり普通なのである。6章の「文字の書き方」では著者は16x6に文字が整列した画像一枚をいきなり用意しているが、正直なところ他分野のプログラマにとってはこういう画像をひねりだすことが一番難しいのであり、96枚の画像を用意してしまったりする。しかしこの本をちょっとでも読んでいれば96枚の画像を用意するようなことはそもそも思いつかなくなる。


具体的な話があまりないか、とも思っていたがリアルな問題に関する記述は細かく読むと多く含まれていて参考になる。単にゲームを動かすだけの入門書なら、可変フレームレートにおけるポーズの問題なんて書きすらしないし、素直に衝突検出を組み込んだ迷路ゲームで1画素でもずれると引っかかって動けなくなるような問題をわざわざサンプルを出して取り上げたりしない。


本当にゲームを作ってみたいと思う人、ゲームを作るリアルな技術を学びたい人には間違いなくお勧めできる本だと思う。この内容で4500円は安すぎると言える。英語が原著の訳本でこの種のものになると1万円近くするのが普通になりつつある。
しかし聞きかじりの知識だけを得たい人には微妙である。たとえばこの本の8章だけ見て「衝突は難しい」ということだけが刷り込まれたりすると危険だ。実際にPS2/アーケード/PS3でメインの開発を張った人が相当な時間を費やして書いた本なので、内容はすごい密度のはずだが、ボーっと読んでると見逃してしまう感じがする。もちろんそれでもいいわけだが細かい部分を読み取れるととても面白いんじゃないかと思う。