ISBN 9784800712394
Pythonでつくる ゲーム開発 入門講座
概要
Pythonでゲーム開発の作法をゼロから学ぶ
想定読者
ゲーム制作に関心を持つPythonプログラミング初学者。高校生以上で、SNS・同人向け自作ゲームや落ち物パズル・RPGを作りたい人、またはゲーム業界への就職を検討している学生・社会人。
こんな人には向いていない
- Pythonの基本文法を習得済みで、アーキテクチャ設計や高度な最適化に踏み込みたい中級以上のエンジニアには内容が基礎寄りすぎる
- ゲームエンジン(Unity/Unreal)での開発に既に取り組んでいる人には、Pythonベースのアプローチが業務直結しにくい
- 純粋なPython入門書として購入すると、ゲーム開発以外のユースケース(Web/データ分析等)への応用は本書の範囲外
読了後にできるようになること
- Pythonのインストールから基本文法(変数・関数・リスト・クラス)を実践しながら習得できる
- tkinterを使ったGUIプログラミングとイベント駆動の考え方を理解できる
- pygameを用いてスプライト描画・衝突判定・サウンド再生といったゲーム固有の処理を実装できる
- 落ち物パズルや本格RPGなど複数ジャンルのゲームを完成形まで作り切る経験を積める
- オブジェクト指向プログラミングの基礎を、ゲームキャラクターやアイテムのクラス設計を通じて理解できる
- ゲーム業界の基礎知識とプログラマーの役割分担を俯瞰的に把握できる
本書のキー概念(章解説)
- ゲームプログラマーになろう!(プロローグ) — ゲーム業界の基礎知識とプログラマーの役割を概観する導入。後続章の技術学習の動機づけになる
- 第 1 章 Pythonのインストール
- 第 2 章 Pythonを始めよう — Python基本文法の解説。プログラミング経験者は速読可
- 第 3 章 プログラミングの基本を深掘り
- 第 4 章 importの使い方 — ライブラリ活用の前提知識。後半のpygame導入に直結する
- 第 5 章 CUIでミニゲーム — ゲームロジックをGUIなしで実装することで、プログラムの構造を先に掴む
- 第 6 章 GUIの基本1
- 第 7 章 GUIの基本2 — tkinterによるウィンドウ・イベント処理を扱う。pygameとの違いも後続章で整理される
- 第 8 章 本格的なゲーム開発の技法 — スプライト管理・ゲームループ・当たり判定など、ゲーム特有の設計パターンを集中解説
- 第 9 章 パズルゲームを作ろう!
- 第 10 章 Pygameの使い方 — pygameの基礎APIを整理する章。実機動作確認の起点になる
- 第 11 章 本格RPG制作!前編
- 第 12 章 本格RPG制作!後編 — 11・12章で一続きの大型プロジェクトを完成させる。学習の集大成
- 第 13 章 オブジェクト指向プログラミング — 終章でOOPを整理する構成。理論先行でなくゲーム実装を経験してから読む点がユニーク
ハイライト
- 一般的なソフト開発ではなく「ゲーム開発の作法」をきちんと学ぶことによって、ゲーム好きな読者の皆さんの就職や趣味といったリアルな世界がより充実してくれることを願い、出版されました。(本書が一般プログラミング入門書と一線を画する編集意図が端的に示されている箇所)
- クイズ、すごろく、おみくじ、診断アプリ、迷路、自動生成ダンジョン、落ち物パズル、本格PRGなど……簡単なミニゲームから難しいものまで幅広く教材を用意しています。(教材ゲームの多様さが一覧でき、学習ボリュームの判断材料になる)
外部からの言及
- 本書を教材として実際にコードを書いた読者が、tkinter と pygame の両方が登場することで API の切り替えに混乱したと報告している。書籍が意図的に両ライブラリを使い分けている点は学習量を増やす面があり、事前に把握しておくと読み進めやすい(qiita)
編集メモ
Qiita 直接言及 2 件 / 累計 likes 1 / Rakuten ランキング履歴なし。Python × ゲーム開発という特定ニーズに向けた補完的な選択肢として位置づく
読む前に押さえておきたいこと
- PCへのソフトウェアインストール操作に慣れていること(Pythonのインストールは本書で扱うが、エラー対処に検索力が必要)
- ファイルの保存・フォルダ管理など基本的なPC操作ができること
- プログラミング経験は不問(本書がゼロから解説)
学習のコツ
- 第5章(CUIミニゲーム)は地味に見えるが、ゲームループとステート管理の核心が詰まっている。GUIに急ぎたい気持ちを抑えて丁寧に写経すると後半の理解が格段に速くなる
- tkinter(第6・7章)とpygame(第10章)は別ライブラリで、API の書き方が大きく異なる。両者を混同しないよう、章ごとにどちらを使っているかを意識しながら読む
- 第11・12章のRPG制作は分量が多い。ゲームを最後まで動かすことを優先し、細部のコードは後から見返す読み方が完走しやすい
- プログラミング経験がある場合は第2・3章を速読し、第5章から本格的に写経を始めると効率的
出版社による内容紹介
大手メーカーで活躍してきたクリエイターが ゲーム開発のノウハウをゼロから教えます! 本書はPythonを使用した、ゲームプログラミングの解説書です。 類書とは異なり、終始一貫「ゲーム開発」に焦点を当て、 今書いているプログラムがどのような"動き"に反映され、 どのような"面白さ"に結びつくのかを、正しく学ぶことができます。 一般的なソフト開発ではなく「ゲーム開発の作法」をきちんと学ぶことによって、ゲーム好きな読者の皆さんの就職や趣味といったリアルな世界がより充実してくれることを願い、出版されました。 【読者対象】 ○ゲーム業界に就職したい学生・社会人 ○SNSや同人で自作ゲームを発表したい方 ○落ち物パズル、RPGの作り方を知りたい方 ○一般ソフトとゲーム制作の違いを知りたい方 ○Pythonを始めたけど作るものが浮かばない方 ……高校生ぐらいから読めます! 【本書の特長】 ○業界の基礎知識やプログラマーの役割からきちんと解説 ○Pythonの基本文法をしっかり解説、プログラミング初心者も安心 ○プログラム1行ごとに説明を付けており、理解しやすい ○豊富な図解とイラストを用い、イメージで理解できる ○開発に必要な素材はすべて無償ダウンロードできる クイズ、すごろく、おみくじ、診断アプリ、迷路、自動生成ダンジョン、落ち物パズル、本格PRGなど……簡単なミニゲームから難しいものまで幅広く教材を用意しています。 さらに、読者特典として3つのおまけゲームもプレゼント! すべてのゲームをつくり終えた時、あたなのプログラミングスキルは何倍にも向上しているに違いありません。 本書を機に、ぜひゲームプログラミングの世界に飛び込んでみてください!
この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。