ゲームアルゴリズム マニアックス シリーズ

あのゲームは、こうやって動いている

今回はゲームアルゴリズムをひたすら追求した書籍を3冊まとめて紹介します。

言語やAPIは時代と共に変わってしまいますが、アルゴリズムは普遍的です。

定石アルゴリズムは汎用性に優れ、カスタマイズすれば他ジャンルにも活用できます。
例えばシューティングのアルゴリズムを、3Dアクションに応用する事は普通にあり得ます。

だから様々なアルゴリズムに触れることで、ゲーム表現の引き出しを増やせるでしょう。

シューティングゲーム アルゴリズムマニアックス

Amazonで[シューティングゲーム アルゴリズムマニアックス]の詳細を見る
シューティングゲーム アルゴリズムマニアックス

まずは1冊目。シューティングゲームです。

本書では古今東西のシューティングに出てくるギミックを紹介し、そのアルゴリズムを解説しています。

個人的に面白かったのは、ホーミングレーザー触手(うねうね)の解説でした。
シンプルなデータ構造を積み重ねて、印象的な動きをつくり出す。こういうの大好きです。

シューティングはゲームプログラミングの基本です。
基本ゆえに他ジャンルへ応用しやすいので、コストパフォーマンスに優れた一冊です。

実際に本書のアルゴリズムは、RPGやアクションのエフェクト・ギミックにも使えます。

弾幕魔法エフェクトに、追尾弾キャラ移動に、触手ボスキャラ などなど
応用の幅は想像以上に大きくなります。

アクションゲーム アルゴリズムマニアックス

Amazonで[アクションゲーム アルゴリズムマニアックス]の詳細を見る
アクションゲーム アルゴリズムマニアックス

2冊目はアクションゲーム編です。

アクションゲームなので、本書はジャンプ処理のサンプルが充実しています。

可変長ジャンプ、2段ジャンプ、三角跳び等々、計10種のジャンプ(と着地)を解説しています。

また地形の処理も多彩に収録してあり、中でも「ディグダグ2」島崩しアルゴリズムはとても興味深かったです。

ただアクション固有の処理が多く、シューティングに比べると、他ジャンルへの応用度は小さい感じです。

パズルゲーム アルゴリズムマニアックス

Amazonで[パズルゲーム アルゴリズムマニアックス]の詳細を見る
パズルゲーム アルゴリズムマニアックス

ラスト3冊目はパズルゲーム編です。

パズルゲームはアルゴリズムの見本市みたいなジャンルなので、3冊で最もバラエティに富んでます。

正直ただ読むだけでも、ゲームの仕組みが分かり面白いです。

テトリス、ぷよぷよ、倉庫番、I.Q、パズルボブル などなど
おなじみのゲームがサンプルになっていて、プログラマの創意工夫が良く分かります。

私はクイックスのような「囲んで塗りつぶす処理」が興味深かったです。

ある学生がこのアルゴリズムをカスタマイズした作品をつくり、私も解析を手伝ったのは良い思い出です。

そして、その学生は無事ゲーム会社に就職できました。

どれを選ぶ?3冊シリーズ

というわけで、3冊まとめて紹介しました。

それぞれの特徴を一言で表すと

シューティング : 最も基本。他ジャンルへの応用に優れる。
アクション : アクション固有の処理に強い。
パズル : 定番パズルゲームの基本が分かる。

といった感じでしょうか。

私は本シリーズ3冊を、学生によく薦めています。

実際これらのサンプルをベースにして作品を作り、ゲーム会社へ入った学生は多いです。

解析は最強の上達法

なお3冊ともサンプルが付属してますが「コピペしてすぐ動く」ものではありません。

このシリーズに限らずアルゴリズム本は「手順の解説」がメインなので、読者は言語環境に合わせてカスタマイズするのが普通です。

またサンプルはC/C++を使っているので、それを理解する必要もあります。
だから対象読者は、プログラミングの基本を分かっている人になります。

優れたサンプルをベースにして、オリジナルのアルゴリズムを組み上げるのは、上達への近道です。

その教材として、このシリーズは最適だと思います。

ゲームアルゴリズム マニアックス シリーズ

ゲームアルゴリズム マニアックス シリーズ
9.5

分かりやすさ

9.3/10

情報量

9.5/10

普遍性

10.0/10

サンプルソース

9.3/10

Points

  • 実践的なゲームアルゴリズム集
  • 他ジャンルにも使える汎用性
  • 分かる人には相当役立つ一冊
  • 読むだけでも楽しい

Notes

  • プログラミングの基本が分かる前提
  • ゲーム全体の解説本ではない
  • アクションは使い道が限られる

もっと知りたい?
C言語_初級 | C言語_中上級 | C++_初級 | C++_中上級 | C#_初級 | C#_中上級 | Java_初級 | Java_中上級 | コンピュータ_サイエンス | アルゴリズム_ | ゲーム_プログラミング | DirectX_ | Unity_ | ゲーム_デザイン | ゲームのしくみ_ | 数学_ | プログラミング_テクニック | 歴史_偉人 | ソフトウェア工学_ | 読み物_エッセー | 人生_生き方 | 創造_発想 | 雑誌_ | 漫画_小説_映画 | メルマガのバックナンバー_

無料メルマガ好評配信中!
直球より変化球主体で攻めるプログラミングのメルマガ

読むだけで使える!プログラマーの裏技と考え方

読むだけでもプログラミング力が上がる
上辺の技術ではないプログラミングの本質が分かる
ビギナーからプロのゲームプログラマーまで幅広い方が購読しています(感謝!

つまり、登録して一緒にプログラミングを楽しもうぜ!
ってことだよ。言わせんな恥ずかしい。


登録完了メールが届きます
届かない場合は迷惑メールフォルダや設定を御確認下さい
powered byメール配信CGI acmailer

Kuniaki Ebata 登録者

プログラマーで現役のスキー国体選手です。
頭脳と体を動かすのが大好きなフレンズなんだね。専門学校で先生もやってます。

教え子をゲーム会社にどんどん送り込み、世界を面白くする野望を実現中。

プログラミングが上達するメルマガやってます。

ここを見たゲーム業界の卒業生へ
新作が出たら、連絡するか現物を送ってくれると嬉しいです。
ただし18禁・CERO-Dの場合は、厳重に梱包の上、品名をパソコン部品にて送る事(だいじ)。