私は楽しみのために Python でいくつかの単純なカード ゲームを作成して遊んでおり、ゲームにグラフィカル ユーザー インターフェイス (GUI) を追加したいと考えています。シンプルなカード ゲームの GUI を作成する場合、どのライブラリをお勧めしますか?
6 に答える
GUI だけが必要な場合は、wxPython でうまくいくはずです。
サウンドやコントローラー入力を追加し、単純なカード ゲームを超えたものにしたい場合は、pygame を使用することをお勧めします。
私は wxPython を使用していませんが、Pygame 自体はかなり低レベルです。キーの押下、マウスイベントをキャッチし、画面に描画することができますが、事前に作成された GUI コントロールは提供されません。Pygame を使用する場合は、独自の GUI クラスを作成するか、Phil の Pygame Utilitiesなど、Pygame 用の既存の GUI 拡張機能を使用する必要があります。
一般に、ゲームのコーディングには PyGame が適しています。しかし、これはより一般的なタイプのゲームの場合です。つまり、画面上で物事が動き、優れた「フレームレート」パフォーマンスが必要です。
ただし、カード ゲームのようなものには wxPython (または PyQt) を使用します。これは、カード ゲームにはグラフィックスがあまりないためです (画面上に 2D カード形状を描画することは、PyGame よりも wx / PyQt の方が難しくありません)。一方、対話用の既製の GUI など、wx から多くの利点が得られます。
Pygame では、自分で GUI を作成するか、GUI を作成してくれるいくつかの中途半端なライブラリを探し回る必要があります。ゲームを作成するとき、通常、ゲームのスタイルに合った独自の GUI が必要になるため、これは実際には Pygame にとって理にかなっています。しかし、カード ゲームの場合は、ほとんどの場合、wx の標準 GUI ウィジェットがうまく機能し、コーディングの時間を節約できます。
この関連する質問への回答は、あなたにとって非常に役立つかもしれません:
pygame が典型的な選択ですが、pyglet は PyCon で多くの注目を集めています。Python ゲーム ライブラリに関する wiki エントリは次のとおりです: http://wiki.python.org/moin/PythonGameLibraries
私は pygame と言います - とても楽しく、簡単で、幸せだと聞いています。また、wxPython での私の経験はすべて、悲しくてつらいものでした。
しかし、私は偏見でも何でもありません。