「綺麗な見た目のアプリをPythonで作りたい」
「簡単にゲームをPythonで作りたい」
このような場合に、pygletがおススメです。
本記事の内容
- pygletとは?
- pygletのシステム要件
- pygletのインストール
- pygletの動作確認
それでは、上記に沿って解説していきます。
pygletとは?
pygletは、Python用のクロスプラットフォームなウィンドウ・マルチメディア・ライブラリです。
簡単に言うと、ゲームやビジュアルリッチなアプリを開発できるライブラリと言えます。
pygletの特徴は、以下。
- 外部への依存なし・他インストール不要(オプションは別)
- マルチウィンドウやマルチモニター対応
- 画像、音声、音楽、ビデオの読み込み可能(例外あり)
- BSDオープンソースライセンス
例えば、pygletで作成したアプリがあるとします。
このアプリを配布するときに、外部依存なしやインストール不要がメリットになります。
メリットをもう少し説明すると、配布アプリの導入が容易に行えます。
外部依存が多いと、それだけアプリ導入でトラブルが起きやすいですからね。
以上、pygletについての説明でした。
次は、pygletのシステム要件を確認します。
pygletのシステム要件
現時点(2021年7月)でのpygletの最新バージョンは、1.5.18となります。
この最新バージョンは、2021年6月23日にリリースされています。
サポートOSに関しては、以下を含むクロスプラットフォーム対応となります。
- Windows
- macOS
- Linux
一応、OS毎にバージョン指定があります。
Windows | 7以降 |
macOS | 10.3以降 |
まあ、普通は問題ないでしょう。
そして、サポート対象となるPythonのバージョンは以下。
- Python 3.6
- Python 3.7
- Python 3.8
- Python 3.9
上記は、次のPython公式開発サイクルに従っています。
バージョン | リリース日 | サポート期限 |
3.6 | 2016年12月23日 | 2021年12月 |
3.7 | 2018年6月27日 | 2023年6月 |
3.8 | 2019年10月14日 | 2024年10月 |
3.9 | 2020年10月5日 | 2025年10月 |
おそらく、2021年のうちにpygletも3.6のサポートをやめるでしょう。
あと、音声・動画(MP3、MPEG2などの圧縮ファイル)再生にはFFmpegが必要となります。
これはオプションであり、必須ではありません。
音声・動画再生を実装するなら、FFmpegはインストールしておきましょう。
FFmpegのインストールに関しては、次の記事で解説しています。
以上、pygletのシステム要件を説明しました。
次は、pygletをインストールしていきます。
pygletのインストール
最初に、Pythonのバージョンを確認しておきます。
>python -V Python 3.9.6
サポート対象内ですね。
それでは、現状のインストール済みパッケージを確認しておきます。
>pip list Package Version ---------- ------- pip 21.1.3 setuptools 57.0.0
次にするべきことは、pipとsetuptoolsの更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。
python -m pip install --upgrade pip setuptools
では、pygletのインストールです。
pygletのインストールは、以下のコマンドとなります。
pip install pyglet
インストールは、一瞬で終わります。
では、どんなパッケージがインストールされたのかを確認しましょう。
>pip list Package Version ---------- ------- pip 21.1.3 pyglet 1.5.18 setuptools 57.0.0
pygletには、依存パッケージがありません。
その点では、比較的容易にどんな環境にでも導入できそうです。
以上、pygletのインストールを説明しました。
最後は、pygletを動作確認を行います。
pygletの動作確認
pyglet用の「Hello World」です。
import pyglet window = pyglet.window.Window(width=400,height=300) label = pyglet.text.Label('Hello, world', font_name='Times New Roman', font_size=36, x=window.width//2, y=window.height//2, anchor_x='center', anchor_y='center') @window.event def on_draw(): window.clear() label.draw() pyglet.app.run()
上記を実行すると、次の画面が表示されます。
この画面が出たら、pygletの動作確認としては十分です。
以上、pygletの動作確認についての説明でした。