LoginSignup
38
43

More than 5 years have passed since last update.

【Python】レトロゲームエンジンPyxel

Last updated at Posted at 2018-11-26

Pythonのレトロゲーム用ゲームエンジンPyxelのメモです。
https://github.com/kitao/pyxel

インストールから使い方まで、分かりやすくREADMEが書かれているため、そちらを見れば大体分かります(日本語もあり
https://github.com/kitao/pyxel/blob/master/README.ja.md

READMEにも画像が載っていますが、以下はサンプルのジャンプゲーム(pyxel/examples/02_jump_game.py)です。
 02_jump_game.gif

仕様

  • Windows、Mac対応 (Linux版は開発中)
  • Python3によるコード記述
  • 16色固定パレット
  • 256x256サイズ、3画像バンク
  • 256x256サイズ、8タイルマップ
  • 4音同時再生、定義可能な64サウンド
  • 任意のサウンドを組み合わせ可能な8ミュージック
  • キーボード、マウス、ゲームパッド
  • 画像・サウンド編集ツール

パレット数とか、画面サイズとか和音数とかレトロゲームを意識した仕様になっています。

アプリケーションの作成方法

フレームの更新処理と描画処理を定義して、pyxel.run()するだけです。
シンプル。

import pyxel

class App:
    def __init__(self):
        pyxel.init(160, 120)
        self.x = 0
        pyxel.run(self.update, self.draw)

    def update(self):
        self.x = (self.x + 1) % pyxel.width

    def draw(self):
        pyxel.cls(0)
        pyxel.rect(self.x, 0, self.x + 7, 7, 9)

App()

描画API

ドット、ライン、矩形、円、BLT等の11種のAPIで描画が可能です。
シンプル。
03_draw_api.gif

サウンドAPI

5種のAPIでサウンド再生が可能です。
シンプル。
04_sound_api.gif

専用エディタ

ドット絵やサウンドの作成ツールも同梱されいます。


眺めていたら、久々にゲームを作りたい気持ちがわいてきました。

以上。

38
43
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
38
43