PyGameは、Pythonで2Dゲームやマルチメディアアプリケーションを開発するためのオープンソースライブラリです。シンプルなAPI設計で、手軽にゲーム開発を始めることができます。
目次
1. PyGameの主な特徴
- シンプルなAPI:直感的な関数が多く、初心者でも扱いやすい。
- マルチプラットフォーム対応:Windows、macOS、Linux で動作。
- 2D描画機能:画像や図形の描画が容易。
- イベント処理:キーボード・マウス入力を簡単に処理。
- サウンド機能:BGMや効果音の再生が可能。
- スプライト管理:アニメーションや衝突判定をサポート。
2. PyGameのインストール
PyGameはpip
で簡単にインストールできます。
pip install pygame
例)MacOSでPython3.11で仮想環境を作成してpygameをインストールする場合(Python 3.13
のような 最新バージョン を使用している場合、PyGameが適切に対応していない可能性があります)
brew install python@3.11
python3.11 -m venv pygame_env
source pygame_env/bin/activate
pip install --upgrade pip
pip install pygame
インストール確認:
python3 -c "import pygame; print(pygame.ver)"
エラーが出ずに pygame 2.6.1
のようなバージョン情報が表示されれば、問題なくインストールされています。
3. PyGameの基本構成
(1) 初期化
PyGameを使うには、まずライブラリを初期化します。
ターミナルで Pythonの対話モード を開き、そこに import pygame
を入力してください。
python3
※pythonのバージョンを変更した場合は、python3.11
などと変更してください。
すると、>>>
のようなプロンプトが表示されるので、次を入力します。
import pygame
pygame.init()
print("PyGameは正常に動作しています!")
(2) 画面の作成
ゲーム画面を作成し、背景色を設定。
screen = pygame.display.set_mode((800, 600)) # 800x600のウィンドウを作成
screen.fill((255, 255, 255)) # 背景を白に
pygame.display.update()
(3) ゲームループ
PyGameの基本的なイベントループの例です。
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
pygame.quit()
4. PyGameの主要モジュール
モジュール名 | 説明 |
---|---|
pygame.display | 画面描画やウィンドウ管理 |
pygame.image | 画像の読み込みと描画 |
pygame.draw | 図形(円、線、四角形など)の描画 |
pygame.mixer | サウンド・BGMの再生 |
pygame.key | キーボード入力の処理 |
pygame.mouse | マウス入力の処理 |
pygame.sprite | スプライト管理(アニメーションや衝突判定) |
5. PyGameを使ったシンプルな動作
以下は、ウィンドウ内にボールを動かすサンプルコードです。
import pygame
# 初期化
pygame.init()
# 画面の設定
WIDTH, HEIGHT = 800, 600
screen = pygame.display.set_mode((WIDTH, HEIGHT))
# 色の設定
WHITE = (255, 255, 255)
RED = (255, 0, 0)
# ボールの初期設定
ball_x, ball_y = WIDTH // 2, HEIGHT // 2
ball_speed_x, ball_speed_y = 3, 3
ball_radius = 20
# ゲームループ
running = True
while running:
pygame.time.delay(10)
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# ボールの移動
ball_x += ball_speed_x
ball_y += ball_speed_y
# 画面の端で反射
if ball_x - ball_radius < 0 or ball_x + ball_radius > WIDTH:
ball_speed_x = -ball_speed_x
if ball_y - ball_radius < 0 or ball_y + ball_radius > HEIGHT:
ball_speed_y = -ball_speed_y
# 画面の更新
screen.fill(WHITE)
pygame.draw.circle(screen, RED, (ball_x, ball_y), ball_radius)
pygame.display.update()
pygame.quit()
画面上をボールが動きます。

6. PyGameの活用例
- 2Dアクションゲーム
- シューティングゲーム
- パズルゲーム
- シミュレーション
- GUIアプリケーション
7. 公式ドキュメント
PyGameの詳細な情報は、公式ドキュメントで確認できます。
🔗 PyGame Documentation
https://www.pygame.org/docs/
まとめ
- PyGameはPythonでゲームを作るためのライブラリ。
- 直感的なAPIで、初心者でもすぐにゲームを作成可能。
- 2D描画、音楽、イベント処理など、基本機能が充実。
- 基本的には
pygame.init() → ウィンドウ作成 → ゲームループ
という流れで開発。 - 公式ドキュメントを活用して、より高度な機能を学ぶ。
ゲーム開発に興味がある方は、PyGameを試してみましょう!
コメント