小一時間でゲームをつくる──7 つの定番ゲームのプログラミングを体験
コイチジカンデゲームヲツクル ナナツノテイバンゲームノプログラミングヲタイケン
- 著者:
- ゲヱム道館(ゲヱムドウカン)
- 出版社:
- 技術評論社
- 出版日:
- 2022年04月20日頃
- ISBN:
- 9784297127459
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
本書は、コンピュータゲームの各ジャンルを代表する 7 本のゲームの作り方を、実際の開発手順に沿って解説します。プログラミング未経験者でも、手順どおりに進めれば必ず完成するつくりになっています。言語仕様の解説はしませんが、最小限の工程ごとに動作確認を行うので、各命令文の役割が実感しやすいようになっています。作成するゲームは、RPG の戦闘シーン、ライフゲーム、リバーシ、落ち物パズル、ドットイート、擬似 3D ダンジョン、戦国シミュレーションの 7 本と、RPG にフィールドシーンを追加、戦国シミュレーションを三国志に改造する Appendix を収録しています。徐々にゲームができあがっていくわくわく感を体験してください。
技書の森解説
『小一時間でゲームをつくる』 (ゲヱム道館 著、技術評論社、2022 年 4 月刊) は、RPG の戦闘シーンやリバーシ、落ち物パズルなど、ゲームの歴史を代表する定番ジャンルの 7 本を、コンソールアプリとして一手ずつ作り上げていく書籍です。副題は「7 つの定番ゲームのプログラミングを体験」で、WEB+DB PRESS plus シリーズの一冊です。版元は、0 から完成まで手順どおりに進めれば必ず完成する仕組みで、最小限の手順ごとに動作確認を行うと案内しています。著者のゲヱム道館は、ゲームプログラミングを実況しながらライブコーディングする動画を配信しており、その動画シリーズの名前は「小一時間で作ってみた」です。決められた題材を手順に沿って完成まで運び、ゲームがどう組み立てられているかを手で確かめたい人に向いた一冊です。
定番 7 本と改造の付録 2 本、RPG の戦闘から戦国シミュレーションまで
最初に C++ のコンソールアプリの開発環境を整え、プログラムの記述と本書の読み進め方、レトロゲーム調の美咲フォントの利用、サンプルコードのダウンロードを確認します。版元の概要は C 言語によるコンソールアプリと紹介しており、開発環境として必要なのは無料の Visual Studio Community だけとされています。本編は、第 1 章がコマンド選択とメッセージ表示によるターン制バトルの王道 RPG の戦闘シーン、第 2 章が単純なルールから複雑な振る舞いが生まれるライフゲーム、第 3 章がマス目単位のデータ処理と AI の実装を扱うリバーシ、第 4 章が落ちてくるブロックをそろえて消す落ち物パズル、第 5 章が 4 種の AI を組み込むリアルタイムアクションのドットイートゲーム、第 6 章がアスキーアートで奥行きを描く擬似 3D ダンジョン、第 7 章が戦国シミュレーションです。付録は、戦国シミュレーションのデータを書き換えて三国志に改造するものと、第 1 章のプログラムを拡張して戦闘シーンにフィールドシーンを加え、RPG として仕上げるものの 2 本です。
小さな完成品の繰り返しで身につくゲームの骨組み
ジャンルが違っても、ゲームのプログラムには共通する骨組みがあります。画面に状態を描く処理、キー入力を受け取る処理、入力に応じて盤面や位置のデータを更新する処理、勝ち負けや終了を判定する処理が、一定の順序で回り続けるという構造です。リバーシや落ち物パズルではマス目を 2 次元の配列として持ち、ドットイートでは迷路のデータの上でプレイヤーと敵がそれぞれ動き、擬似 3D ダンジョンでは同じマップのデータを視点に応じた見た目へ変換します。目次を見ると、各章が盤面やフィールドのデータを作る、初期化する、描画する、入力で操作する、と同じ順序の小さな工程で区切られており、題材が変わっても骨組みの組み方が繰り返し出てくる並びになっています。ゲーム開発 の入口でつまずきやすいのは、ゲームエンジンの機能に頼るほど、この骨組みがどこで動いているのかが見えにくくなる点です。描画をコンソールの文字に絞る本書の方式は、見た目の作り込みを省いて、状態と入力と判定の関係だけを手元に残す選択と読めます。
言語仕様の解説が無い前提と、合わない目的
版元の紹介文は、プログラミング未経験者でも手順どおりに進めれば完成するつくりだと説明する一方で、言語仕様の解説はしないと明記しています。つまり本書は、変数や条件分岐、関数といった文法を一から教える教科書ではなく、動くものを先に作りながら各命令文の役割を体感していく本です。書き写して動かすだけなら未経験でも進められますが、自分で改造したり、別のゲームへ応用したりするには、文法を別の本で補う必要が出てきます。また、Unity や Unreal Engine のようなゲームエンジンの使い方、グラフィックスやサウンドを使った作品づくり、商用規模のゲーム設計を学びたい人には目的が合いません。扱うのはあくまでコンソール上で動く小さなゲームの骨組みです。
ゲームが好きでプログラミングに興味はあるのに、文法書を読み進めるだけでは手応えが続かなかった人、あるいは昔遊んだ定番ジャンルが内部でどう動いているのかを自分の手で確かめたい人にとって、7 本を順に完成させられる本書は、入口としても題材集としても元が取りやすい一冊です。読書そのものに身構えてしまう場合は、ゲームが好きならプログラミングの本も読める にも目を通してから、第 1 章の RPG の戦闘シーンから手を動かしてみてください。