コンピューターゲームのアルゴリズム&ネットワーキング †
Category †
- アブストラクトゲーム総合
- 数学・自然科学
- 情報科学/システム工学
お勧め †
☆☆
著者 †
- 著 Jouni Smed
- 著 Harri Hakonen
- 訳 中本浩
出版社 †
ボーンデジタル (2007)
Review †
コンピューターゲーム、得にネットワークゲームを製作する上で、
必要になる道具、技術、背景にある科学について、
図、表はもとより、アルゴリズムの実例を惜しみなく使って解説しています。
本書では、次のような構成により、幅広く論じ、しかも一つ一つの題材を丁寧にあつかっています。
- アルゴリズム
- 乱数 (さまざまな分散の乱数生成方式と応用)
- トーナメント (複数のプレーヤーを対戦させる場合のルール定義に不可欠)
- ゲーム木 (対戦ゲームにおける思考の基本技術)
- 経路探索
- 意思決定
- 不確定性のモデル化 (意思決定時に直面する、不確定な事象への対応方法)
- ネットワーキング
- 通信レイヤー (ネットワークプログラミングの基本技術)
- リソース制限の補償 (ネットワークアプリケーションを実現する上で考慮しなければならない、資源と管理の仕方)
- チート防止 (インチキを防ぐには)
大学などでの教科書として使える形式になっており、各章、
本編での技術に対して、練習問題が掲載されています。一般には、
本編で論じ切れなかった内容を、読者に考察させる意味もある章末の問題ですが、
本書の練習問題は、実践的で重要なメッセージが詰まった、楽しい数学パズルでもあります。
判型は大型ですが、高々230ページ余りの中に、これだけの情報を綺麗に収めた著者等の技術に関心させられます。
本の紹介とは少々外れた話ですが、
館長が米国でゲーム開発のプロジェクトチームを立ち上げた際、エンジニアの採用にあたって、プログラミング演習問題を事前に候補者に送り、その回答を参考にしたことがあります。あまり、問題数が多いと回答者に過度の負担をかけてしまうので、全部の問題を解くには、時間的にもほとんど困難であろうというレベルの20問程から、2問選んで回答してもらう方式をとりました。このやり方は、エンジニアの技術力だけでなく、どのような設問を選択したかで、エンジニアの興味や得意な技術が透けて見える効果があり、優秀な人を見つける有効な手法だと確認できました。
100人余りの候補者から、回答を得たのですが、一人だけ、全部の問題を解いて回答してきた
者が一人いました。回答内容も良いものでした。面接時に、「とても時間がかかったのではないか」と聞いたところ、「問題がおもしろくて、毎晩遅くまで眠れずに、考えてしまった
」と笑っていました。もちろん、彼はチームの技術リーダーとして活躍してもらいました。
米国には、本書のような水準のゲームプログラミングを教育する場として、多くの大学に専門のコースがあります。また、ゲーム技術は日々進歩していますので、これらの技術を交換し合うCGDC(Computer Game Programming Conference)などの組織や集会が開催されています。日本でもCGDCが開催されるようになりましたが、こうした機会と学校などでの教育がよりリンクしていくとよいと思います。
SEE ALSO †
Feedback †