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

好き勝手に・げーあにん?

ファミコンと同い年の社会人ヌルオタの日記

『ゲームコーディング・コンプリート』読んだ

C++ プログラム

バグ指摘してからすぐ書こうと思ってたのに、気づいたら2週間以上経ってた。

この本、誰を対象にしてるのかよくわからないなー、というのが途中まで読んでだ状態での感想。で、後半までたどり着いて、だいぶハッキリした頃に出てくるこのページをもっと最初の方に持ってくるべきなんじゃないかと思った。

P.694より引用

プロのコンピュータゲームを制作するために必要なあらゆるツールやテクニックを広く浅く紹介している

ゲームプログラミングの入門書として読者の皆さんのお役に立てることを願う。

というわけで、入門書でした。タイトルとか、最初の方とかにだいぶ惑わされてしまった。

一流になるためのゲームプログラミング(本の副題)

これぞ正真正銘プロの技。ゲーム開発の現実がここにある!(帯)

この本に書かれていることは、実力のある開発者になるために重要なことばかりだ。よそで簡単に得られるものではない。(序文)


監訳者まえがきにはそれらしき事は書いてあったんだけども。

どう作ったらいいのかわからない、自分の設計で本当に大丈夫か自信がない、そんな新人プログラマの方々や、これからプロのゲーム開発者になるために勉強をしているアマチュア・学生の方々にとっては、非常に有益な指針となってくれることでしょう。(監訳者まえがき)


そんなこんなで、いろいろ必要な知識の入門を網羅的に集めている本としてみると、良く出来ていると思います。特に、19章のティーポッドウォーズは、ここまでの本の内容がほぼ詰め込まれていて、ひとつのゲームとして十分成り立っているという、ステキなサンプル。

物理とLua組み込みで、ネット対戦までできる3Dゲームのサンプルと言うだけでも、かなり需要があるんじゃないだろうか。

コードは、本買ってなくても、Subversionで落としてこれるし、本当にいい時代だなぁ。

コードに関しては、個人的な好みと相容れない部分がどうしてもあって、キモイなーというのが正直な意見なんだけど、まぁ、好みの問題だよね。

vertual なメソッド名の頭に V が付いていてキモイとか、IEventData なる基底クラスを何もかものイベントが継承してたりして、if 文で EventType を確認してからのダウンキャストのオンパレード必須で残念な感じになってるとか、まぁ、好みの問題だよね。

個人的には、この手の EventListener っぽいものをつくるより、『ゲームプログラマになる前に覚えておきたい技術』の Sequence 的なつくりの方が好きだけど、まぁ、好みの問題だよね。



小さい(?)ツッコミ。P.98

Subversionなどは、ブランチのコピーを新しく作るのでサーバーのディスクをたくさん消費してしまう。

Subversion はその辺はうまくやってなかったっけ? CVSはたくさん消費してた気がするけど。

元の本が出たのがちょっと前だからなのか、分散バージョン管理関連の言及は無いけど、VSS、Perforce、AlienBrainなどの商用のものに言及してる本ってあんまないよなー、とは思った。

幸運なことに(?)、私はVSSを使ったことがありません。


小さい(?)ツッコミその2。P.11に現行家庭用ゲーム機の性能表が載ってるんだけど、Wiiのスペックを載せてしまっていいんだろうか? しかも、ちょっと違うようなそうでないような……