
Pythonの基本的な文法や関数の使い方を学んだら、次のステップとして何か面白いプログラムを作ってみたくなりますよね。
その中でも特に人気が高いのが「ゲーム開発」です。
「ゲームを作るのは難しそう」「専門的な知識が必要なのでは?」と感じる人もいるかもしれません。
確かに、商用の大規模なゲームを作るには高度な技術が求められますが、Pythonには 「pygame」 というライブラリがあり、初心者でも比較的簡単に2Dゲームを作ることができます。
pygameを使うことで、キャラクターを動かしたり、ボタンをクリックしたり、音を鳴らしたりと、ゲーム開発に必要なさまざまな機能を簡単に実装できます。
Pythonの基本を学んだあなたにとって、新しいスキルを身につける絶好の機会となるでしょう。
この章では、まずpygameの概要を説明し、環境の準備方法や簡単なサンプルプログラムの実行方法について詳しく解説します。
Pythonを使ったゲーム作りの第一歩を一緒に踏み出しましょう!
Chapter1:pygame入門|画面を表示しよう
・Chapter1-1:pygameを導入しよう ◁今回はここ
・Chapter1-2:ゲームループの基本を理解しよう
・Chapter1-3:画面に画像を表示しよう
・Chapter1-4:画面に文字を表示しよう
・Chapter1-5:画面上の画像を動かそう
Chapter2:簡単なノベルゲームを作ろう
Chapter3:簡単なアクションゲームを作ろう
Chapter4:ブロック崩しを作ろう
Chapter5:シューティングゲームを作ろう
Chapter6:横スクロールのアクションゲームを作ろう
pygameとは何か?|Pythonで2Dゲームを作ろう
pygameの概要と活用場面
pygameは、Pythonで2Dゲームを作成するためのライブラリです。
Pythonの標準ライブラリにはゲームを作るための機能は含まれていませんが、pygameを使うことで、ゲームに必要な次のような機能を簡単に実装できます。
- 画面の描画(画像や図形の表示)
- イベント処理(キーボードやマウスの入力)
- 音の再生(BGMや効果音の追加)
- アニメーション(キャラクターの移動や動きの表現)
- 衝突判定(オブジェクト同士の接触判定)
pygame自体はC言語で作られており、Pythonから利用できるようになっています。
そのため、Pythonの柔軟性を活かしながら高速な処理が可能です。また、pygameはオープンソースであり、無料で使用できます。
pygameの主な特徴とメリット
pygameにはゲーム開発初心者にとって嬉しい特徴がいくつかあります。
- シンプルな構造
pygameは比較的シンプルなコードで動作するため、初心者にも理解しやすい。 - クロスプラットフォーム対応
Windows、Mac、Linuxのどの環境でも動作する。 - 学習リソースが豊富
公式ドキュメントやチュートリアルが充実しており、初心者でも学びやすい。 - インストールが簡単
pip
コマンドを使うことで、簡単にインストールできます。
これらの特徴から、pygameはPythonを使ってゲームを作りたい初心者にとって最適なライブラリだと言えます。
pygameの導入方法|pipでインストールしよう
pygameを使用するには、まず開発環境を整える必要があります。
この章ではpygameのインストール方法と、正しくインストールされたかを確認する方法について解説します。
pygameをインストールしよう
pygameはPythonの外部ライブラリなので、標準ではインストールされていません。
そのためPythonに組み込まれているパッケージ管理ツール pip を使ってインストールする必要があります。
インストールの前に準備すること
まず、Pythonが正しくインストールされているか確認しましょう。
Pythonがインストールされていない場合は、Python開発環境を構築する方法【初心者向け】の記事を確認し、インストールしてください。
Pythonがインストールされているかを確認するには、以下のコマンドをターミナル(またはコマンドプロンプト)で実行します。
python --version
このコマンドを実行するとPythonのバージョンが表示されます。例えば、次のような出力が得られればPythonが正しくインストールされています。
Python 3.10.5
pygameをpipでインストールする方法
Pythonがインストールされていることを確認したら、次に pip
を使ってpygameをインストールします。
ターミナル(またはコマンドプロンプト)で以下のどちらかのコマンドを実行してください。
- pip install pygame
- pip3 install pygame
インストールが正常に完了すると、次のようなメッセージが表示されます。
- Successfully installed pygame-2.x.x
もしエラーが発生する場合は、以下の点を確認してください。
- Pythonが正しくインストールされているか
pip install pygame
を実行したかpip
のバージョンが最新か
(pip install --upgrade pip
を実行すると最新にできます)
インストール後の動作確認手順
pygameが正しく動作するかを確認するために、簡単なプログラムを実行してみましょう。
以下のコードをPythonファイル(例: test_pygame.py
)として保存し、実行してみてください。
import pygame # pygameの初期化 pygame.init() # 画面を作成(幅500px × 高さ400px) screen = pygame.display.set_mode((500, 400)) # ウィンドウのタイトルを設定 pygame.display.set_caption("pygameテスト画面") # 画面の背景色を設定(黒) screen.fill((0, 0, 0)) # 画面を更新 pygame.display.flip() # 終了イベントを待つ running = True while running: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False # pygameを終了 pygame.quit()
このプログラムを実行すると何もない黒いウィンドウ が表示されます。正しく表示されれば、pygameが正しく動作していると言えます。
ウィンドウを閉じるには、右上の×(閉じる)ボタンをクリック してください。
サンプルゲームを遊んでみよう
pygameには、インストール直後から サンプルゲーム がいくつか含まれています。
pygameを用いてどのようなゲームを作成できるのかを確認するために、ここで一度遊んでみましょう。
今回は、以下の 3つのサンプルゲームとデモ を紹介し、それぞれの特徴や実行方法を解説します。
- エイリアンシューティングゲーム
- 星のスクリーンセーバー風デモ
- スプライトアニメーションテスト
エイリアンシューティングゲーム
以下のPythonコードを書き、実行してみましょう。
import pygame.examples.aliens as game # エイリアンゲームをインポート game.main() # ゲームを起動
このゲームの遊び方は簡単。画面の下にいる洗車が自分であり敵のUFOを打ち落とします。
左右キーで移動し、スペースキーで弾を発射できます。
星のスクリーンセーバー風デモ
import pygame.examples.stars as game # 星のアニメーションデモをインポート game.main() # プログラムを起動
このコードを実行すると、星が流れるようなアニメーションが表示されます。
スプライトアニメーションテスト
import pygame.examples.testsprite as game # スプライトアニメーションデモをインポート game.main() # プログラムを起動
このコードを実行すると、画面上に複数のスプライトが表示され、ランダムな動きをするアニメーションが確認できます。
本サイトオリジナルゲーム「SuperNekoWorld_demo」を遊ぼう
本サイトのChapter6で紹介するゲームの一部をここで先に公開します。
このゲームはデモ版なので様々な機能が制限されており、見た目も整っていませんが、pygameでどのようなゲームが作れるようになるかがよく分かると思います。
Chapter6ではこのデモ版をベースとしてさらに機能を追加したり見た目を整えていきますので、是非そこまでたどり着いてください。
↓↓のダウンロードリンクをクリックすることで、ゲームをダウンロードできます。
まとめ
この章ではpygameの基本的な導入方法と、pygameに含まれるサンプルゲームを実行する方法を学びました。
これで、ゲーム開発の基礎を学ぶ準備が整いました。
次は「ゲームループの基本を理解しよう」というテーマで、ゲームを動かすために重要な「ゲームループ」について詳しく学んでいきます。
ゲーム開発はとても楽しい分野です。焦らず、ひとつひとつのステップを楽しみながら学んでいきましょう!
FAQ|pygameの導入に関するよくある質問
今回の記事に関する「よくある質問」とその解答について、以下の内容を参考にしてください。
- Q1. pygameを使うメリットは何ですか?
-
pygameは、Pythonで手軽に2Dゲームやインタラクティブなアプリケーションを作成できるライブラリです。シンプルなAPIで音声・画像・アニメーション・入力処理などを簡単に扱えるため、初心者でも短期間でゲーム制作に取り組めます。
- Q2. pygameのインストールはどのPythonバージョンに対応していますか?
-
基本的にpygameはPython 3.6以降のバージョンに対応しています。ただし、使用するOSやpygameのバージョンによって細かな違いがあるため、公式サイトや本記事の手順を参照してください。
- Q3. 他のゲームエンジンと比べてpygameを学ぶメリットは何ですか?
-
pygameは他の本格的なゲームエンジンと違い、Python標準の文法の延長で扱えるのが最大の特徴です。難しい設定や特別な知識が不要で、プログラミング学習の延長としてゲーム制作を体験できるため、学習コストが低く初心者向けと言えます。
pygameの導入についてよくあるトラブルと解決法
今回の記事に関する「よくあるトラブル」とその原因、解決法について、以下の内容を参考にしてください。
「pip install pygame」でエラーが表示される
- トラブルの原因と対処法を見る
-
トラブルの原因
Pythonやpipのバージョンが環境によって異なっていたり、コマンドプロンプトやターミナルで間違った仮想環境を使用している場合があります。
トラブルの解決法
ご利用のPythonバージョンとpipバージョンが本記事で案内している内容と一致しているか確認してください。
また、複数のPythonがインストールされている場合や仮想環境を使用している場合は、
python --version
とpip --version
を実行して、実際に使っているバージョンやパスを確認しましょう。そのうえで、必要に応じて仮想環境を有効化し、もう一度
pip install pygame
コマンドを試してください。
pygameをimportしようとすると「ModuleNotFoundError: No module named ‘pygame’」が表示される
- トラブルの原因と対処法を見る
-
トラブルの原因
pygameのインストールが正常に完了していない、もしくは違うPython環境でインストールと実行を行っている場合があります。
トラブルの解決法
まず、コマンドプロンプトやターミナルで
pip show pygame
を実行して、pygameがインストールされているか確認してください。もしインストールされていない、または違うPython環境になっている場合は、実行環境と同じPythonでインストールをやり直しましょう。
python -m pip install pygame
というコマンドも有効です。
pygameのインストール時に「Permission denied」や「アクセスが拒否されました」と表示される
- トラブルの原因と対処法を見る
-
トラブルの原因
インストール時の権限不足や、管理者権限が必要なフォルダにインストールしようとしていることがあります。
トラブルの解決法
コマンドプロンプトやターミナルを管理者権限(Windowsでは「管理者として実行」)で開き、再度インストールを試してみてください。
それでも解決しない場合は、ユーザーディレクトリ下に仮想環境を作成し、その中でpipを実行すると解決することが多いです。