【发布时间】:2010-10-12 19:50:57
【问题描述】:
我一直在玩用 Python 编写一些简单的纸牌游戏来获得乐趣,我想为游戏添加一个图形用户界面 (GUI)。您会推荐哪个库来编写简单纸牌游戏的 GUI?
【问题讨论】:
标签: python wxpython pygame playing-cards
我一直在玩用 Python 编写一些简单的纸牌游戏来获得乐趣,我想为游戏添加一个图形用户界面 (GUI)。您会推荐哪个库来编写简单纸牌游戏的 GUI?
【问题讨论】:
标签: python wxpython pygame playing-cards
pygame 是典型的选择,但 pyglet 在 PyCon 上得到了很多关注。这是关于 Python 游戏库的 wiki 条目:http://wiki.python.org/moin/PythonGameLibraries
【讨论】:
通常,PyGame 是编码游戏的更好选择。但这适用于更常见的游戏类型——屏幕上的东西在移动,你必须有良好的“帧率”性能。
但是,对于像纸牌游戏这样的东西,我会选择 wxPython(或者更确切地说,PyQt)。这是因为纸牌游戏在图形方面并不多(在屏幕上绘制 2D 纸牌形状在 wx / PyQt 中并不比在 PyGame 中更难)。另一方面,您可以从 wx 中获得很多好处——比如一个现成的用于交互的 GUI。
在 Pygame 中,您必须自己创建一个 GUI,或者通过几个半生不熟的库来为您完成它。这实际上对 Pygame 来说是有意义的,因为当您创建游戏时,您通常想要一个适合游戏风格的自己的 GUI。但是对于纸牌游戏,wx 的标准 GUI 小部件很有可能会起到作用,并且可以节省您数小时的编码时间。
【讨论】:
这个相关问题的答案可能对您非常有用:
What can Pygame do in terms of graphics that wxPython can't?
【讨论】:
我没有使用过 wxPython,但是 Pygame 本身是相当低级的。它允许您捕捉按键、鼠标事件和在屏幕上绘制内容,但不提供任何预制的 GUI 控件。如果您使用 Pygame,则必须编写自己的 GUI 类或使用 Pygame 的现有 GUI 扩展,例如 Phil's Pygame Utilities。
【讨论】:
如果你想要的只是一个 GUI,wxPython 应该可以解决问题。
如果您希望添加声音、控制器输入并超越简单的纸牌游戏,那么您可能需要使用 pygame。
【讨论】:
我会说 pygame —— 我听说它很有趣、轻松且快乐。此外,我所有使用 wxPython 的经历都令人悲伤和痛苦。
但我没有偏见或任何东西。
【讨论】: