Pygame は、Python を使用してビデオ ゲームなどのマルチメディア アプリケーションを開発するための無料のオープンソース クロスプラットフォーム ライブラリです。 Simple DirectMedia Layer ライブラリと他のいくつかの一般的なライブラリを使用して、最も一般的な関数を抽象化し、これらのプログラムの作成をより直感的なタスクにします。
pygame を最高のものにするためにあなたの助けが必要です!新しい寄稿者を歓迎します。
pygame をインストールする前に、Python がマシンにインストールされていることを確認する必要があります。これを確認するには、コマンド プロンプト (Windows の場合) またはターミナル (MacOS または Linux の場合) を開いて、次のように入力します。
Python --バージョン
「Python 3.8.10」などのメッセージが表示されれば、Pythonは正しくインストールされています。エラー メッセージが表示された場合は、まだインストールされていないことを意味します。その後、公式 Web サイトにアクセスしてダウンロードする必要があります。
Python がインストールされたら、最終チェックを実行する必要があります。pip がインストールされているかどうかを確認する必要があります。一般に、pip は Python とともにプリインストールされていますが、確実ではありません。 Python の場合と同様に、次のコマンドを入力します。
pip --バージョン
「pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8)」のようなメッセージが表示されたら、pygame をインストールする準備は完了です。インストールするには、次のコマンドを入力します。
pip インストール pygame
pygame がインストールされたら、次のコマンドを入力してライブラリを簡単にテストします。これにより、プリインストールされている多数のサンプル ゲームの 1 つが開きます。
python3 -m pygame.examples.aliens
これが機能しない場合は、公式 Web サイトの「はじめに」セクションに、マシンの PATH 設定に Python を追加するなど、プラットフォーム固有の問題に関する詳細情報が記載されています。
pygame を始めたばかりの場合は、すぐに使い始めることができるはずです。 Pygame には多くのチュートリアルと入門書が付属しています。ライブラリ全体に関する完全なリファレンス ドキュメントもあります。ドキュメント ページでドキュメントを参照してください。ターミナルでpython -m pygame.docs
を実行して、ドキュメントをローカルで参照することもできます。ドキュメントがローカルに見つからない場合は、代わりにオンライン Web サイトが起動します。
オンライン ドキュメントは、GitHub 上の pygame の開発バージョンに応じて最新の状態に保たれます。これは、使用している pygame のバージョンより少し新しい可能性があります。最新の完全リリースにアップグレードするには、ターミナルでpip install pygame --upgrade
を実行します。
何よりも、サンプル ディレクトリには、すぐにコードを使って遊び始めることができる、再生可能な小さなプログラムが多数含まれています。
Pygame はゲーム開発用の強力なライブラリであり、コーディング作業を簡素化する幅広い機能を提供します。 pygame が提供するものを詳しく見てみましょう。
グラフィックス - pygame を使用すると、ダイナミックで魅力的なグラフィックスの作成がかつてないほど簡単になります。このライブラリは、画像、四角形、多角形のサポートなど、2D グラフィックスとアニメーション用のシンプルかつ効果的なツールを提供します。経験豊富なゲーム開発者であっても、初心者であっても、pygame はあなたをサポートします。
サウンド - Pygame にはサウンドと音楽の再生と操作のサポートも含まれており、ゲームにサウンド効果や BGM を簡単に追加できます。 WAV、MP3、OGG ファイル形式がサポートされているため、多くのオプションから選択できます。
入力 - Pygame は、キーボード、マウス、ジョイスティックの入力を処理するための直感的な機能を提供し、ゲームにプレーヤー コントロールを迅速かつ簡単に実装できるようにします。複雑な入力コードに苦労する必要はもうありません。pygame を使用すると簡単になります。
ゲーム開発 - 最後に、pygame は、ゲーム開発用に特別に設計された包括的なツールと機能のスイートを提供します。衝突検出からスプライト管理まで、pygame にはエキサイティングで魅力的なゲームを作成するために必要なものがすべて揃っています。プラットフォーマー、パズル ゲーム、またはその間のものを構築している場合でも、pygame が対応します。
現在開発中の機能を使用したい場合、または pygame に貢献したい場合は、pygame を pip インストールするのではなく、ソース コードからローカルにビルドする必要があります。
ソースからのインストールはかなり自動化されています。ほとんどの作業には、すべての pygame 依存関係のコンパイルとインストールが含まれます。それが完了したら、pygame の自動構成、ビルド、インストールを試みるsetup.py
スクリプトを実行します。
インストールとコンパイルに関する詳細については、コンパイル wiki ページを参照してください。
このライブラリに貢献してくれた皆さんに感謝します。スペシャルサンクスも受付中です。
パッチと修正を送ってくださった方々に感謝します: Niki Spahiev、Gordon Tyler、Nathaniel Pryce、Dave Wallace、John Popplewell、Michael Urman、Andrew Straw、Michael Hudson、Ole Martin Bjoerndalen、Herve Cauwelier、James Mazer、Lalo Martins、Timothy Stranex、Chadレスター、マティアス・スピラー、ボー・ヤンゲボルグ、ドミトリー・ボリソフ、キャンベル・バートン、ディエゴ・エッサヤ、エイヤル・ロテム、レジス・デグロップス、エマニュエル・ヘインリー、ランディ・ケルバー、マシュー・L・ダニエル、ニラフ・パテル、フォレスト・ボイト、チャーリー・ノーラン、フランキー・ロバートソン、ジョン・クルコフ、ロレンツ・クアック、ニック・アーヴァイン、マイケル・ジョージ、ソール・スパッツ、トーマス・イボットソン、トム・ロサメル、エヴァン・クロスク、キャンベル・バートン。
そしてそれを超えた私たちのバグハンターたち: アンガス、ギョーム・プルー、フランク・ライザー、オースティン・ヘンリー、カウェ・カゼミ、アルトゥーロ・アルダマ、マイク・マルチェック、マイケル・ベンフィールド、デヴィッド・ラウ
他にも役立つアイデアを提出し、このプロジェクトを継続し、基本的に私たちの生活を楽にしてくれた人がたくさんいます。ありがとう!
ドキュメントに関するコメントを作成してくださったり、pygame.org wiki に追加してくださった方々に多大な感謝を申し上げます。
また、ゲームを作成し、他の人が学んだり楽しんだりできるよう pygame.org Web サイトにゲームを公開してくださった方々にも感謝します。
pygame bugzilla をホストしてくれた James Paige に感謝します。
また、素晴らしいホスティングをしていただいた Roger Dingledine と SEUL.ORG のスタッフの皆様にも深く感謝いたします。
Pygame は明らかに SDL と Python に強く依存しています。また、他のいくつかの小さなライブラリにリンクして埋め込みます。フォント モジュールは、freetype に依存する SDL_ttf に依存します。ミキサー (および mixer.music) モジュールは SDL_mixer に依存します。画像モジュールは SDL_image に依存しており、libjpeg と libpng も使用できます。変換モジュールには、独自の rotozoom 関数用の SDL_rotozoom バージョンが埋め込まれています。 surfacearray モジュールには、多次元数値配列用の Python NumPy パッケージが必要です。依存関係のバージョン:
CPython | >= 3.6 (または PyPy3 を使用) |
SDL | >= 2.0.8 |
SDL_ミキサー | >= 2.0.0 |
SDL_画像 | >= 2.0.2 |
SDL_ttf | >= 2.0.11 |
SDL_gfx | (オプション、ベンダーで販売) |
ナムピー | >= 1.6.2 (オプション) |
このライブラリは GNU LGPL バージョン 2.1 で配布されており、ファイルdocs/LGPL.txt
にあります。当社は、このライブラリの将来のバージョンを別のライセンスに基づいて配置する権利を留保します。
これは基本的に、任意のプロジェクトで pygame を使用できることを意味しますが、pygame 自体に変更や追加を加えた場合は、それらを互換性のあるライセンスでリリースする必要があります (できれば pygame プロジェクトに送信し直す必要があります)。クローズドソースの商用ゲームは問題ありません。
examples
サブディレクトリ内のプログラムはパブリック ドメインにあります。
依存関係のライセンスについては、ドキュメント/ライセンスを参照してください。