書籍概要

ゲームで学ぶPython! Pyxelではじめるレトロゲームプログラミング

著者
発売日
更新日

概要

ゲーム作りを通じて,楽しみながらPythonによるプログラミングを学ぶことができる解説書です。本書では,2Dゲームエンジンとして世界でも人気を集めている「Pyxel」を使ってゲーム作りを行います。画面にキャラクターを表示したり,アニメーションを表示したりといった作業を行う中で,自然とPythonの基本文法などを身につけられます。書籍の後半ではゲーム作りに挑戦! シンプルなゲームから本格的なゲームまで,プロが手がけた3つのサンプルゲームを題材に,覚えておきたいプログラミングのテクニックやPythonの機能,ゲームならではの処理やアルゴリズム,Pyxelの実践的なテクニックまで学べます。サンプルファイルは書籍Webサイトからダウンロード可能です。

こんな方におすすめ

  • Pythonによるプログラミングを学びたい人
  • Pyxelを使ったゲームづくりに興味がある人

サンプル

samplesamplesamplesamplesample

目次

CHAPTER 1 プログラミングをはじめよう

  • 01 Python×Pyxelでゲームを作ろう
  • 02 プログラムの開発環境を準備しよう

CHAPTER 2 プログラムを動かしてみよう

  • 01 Pythonを対話モードで実行してみよう
  • 02 Pyxelのサンプルプログラムを実行しよう

CHAPTER 3 お絵描きプログラムを作ろう

  • 01 点と線を描画してみよう
  • 02 変数を使ってみよう
  • 03 関数で複数のキャラクターを並べてみよう
  • 04 繰り返し処理でキャラクターを描いてみよう

CHAPTER 4 アニメーションを作ろう

  • 01 アニメーションの基本を学ぼう
  • 02 分岐処理を作ろう
  • 03 アニメーションを工夫してみよう
  • 04 ウサギの数を増やそう

CHAPTER 5 ワンキーゲームを作ろう

  • 01 クラスを使ってみよう
  • 02 ゲームの初期化処理を作ろう
  • 03 画像を表示してみよう
  • 04 背景やスコアを描画しよう
  • 05 タイトルを表示しよう
  • 06 宇宙船を移動させよう
  • 07 オブジェクトを配置しよう
  • 08 衝突判定を追加しよう

CHAPTER 6 シューティングゲームを作ろう

  • 01 機能ごとにクラスを分けてゲームを作ろう
  • 02 画面遷移の方法を学ぼう
  • 03 ミュージックの再生方法を学ぼう
  • 04 自機の移動処理を見てみよう
  • 05 敵の出現~移動の処理を見てみよう
  • 06 決まった方向に弾を移動させる方法を学ぼう
  • 07 ゲームの楽しさが増す衝突判定の作り方を学ぼう
  • 08 エフェクトの作り方を学ぼう

CHAPTER 7 アクションゲームを作ろう

  • 01 プログラムを複数のモジュールに分けるコツを学ぼう
  • 02 辞書を使った画面管理方法を学ぼう
  • 03 タイルマップとスクロール処理を学ぼう
  • 04 タイルの判定方法を学ぼう
  • 05 タイルとの接触処理について学ぼう
  • 06 壁のすり抜けを防ぐ押し戻し処理を学ぼう
  • 07 ジャンプ処理について学ぼう
  • 08 敵の出現処理を学ぼう

CHAPTER 8 作ったゲームで遊んでもらおう

  • 01 ゲームを手軽に遊べるようにしよう

サポート

ダウンロード

サンプルファイルダウンロード

(2025年1月17日更新)

本書で紹介しているPythonのサンプルプログラムやゲームの素材(Pyxelリソースファイル)をダウンロードできます。利用方法は,書籍のP.6や各章の解説をご覧ください。

ダウンロード
sample_game-python.zip

なお,PythonのプログラムファイルとPyxelリソースファイルなどのサンプルファイルの著作権は,著者および技術評論社が所有しています。個人での学習目的および教育機関内での教育目的にかぎり,改変や流用して使用することは可能です。それ以外の目的でサンプルファイルの二次配布や改変しての再配布,商用利用はご遠慮ください。

正誤表

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2025年1月31日最終更新)

P.99 中央の図内

1つ目のif文のブロック
1つ目のfor文のブロック
2つ目のif文のブロック
2つ目のfor文のブロック

P.102 「ランダムな値で初期化する」の4行目

ウサギが画面からはみ出さないように、最大値は「pyxel.width-RABBIT_WIDTH」で、画面の幅 - ウサギの幅に設定しています。同様に変数rabbit_ysも、画面からはみ出さない範囲の乱数を求めています。
ウサギの全身が画面外に出ないように、x座標は「画面の左端 - ウサギの幅」~「画面の右端 + ウサギの幅」の範囲の乱数を求めています。同様に変数rabbit_ysも、画面外に出ない範囲の乱数を求めています。

商品一覧