我有一些使用 Pygame 的经验,但这些天似乎有很多关于 Pyglet 的讨论。
这两个库如何比较?在功能和易用性方面,使用其中一种比另一种有什么优势?
最后,你会说一个比另一个更Pythonic吗?
最佳答案
我正在考虑将 Pygame 和 Pyglet 用于小型 2D 射击游戏,在查看了源代码和一些教程后,我选择了 Pyglet。我对结果非常满意。
Pyglet 立即工作,使用起来很愉快,而且在概念上非常干净。它确实给我一种 Pythonic 的感觉:你可以很快地得到一个简单易读的示例,并且它使用装饰器来很好地处理事件。它也没有强制使用特定的程序结构,这让我很容易融入 Pymunk 的物理建模 (http://code.google.com/p/pymunk/)。
虽然它基于 OpenGL,并且您可以将这些功能用于特殊效果,但我能够在不了解它们的情况下做得很好。
它也适用于 py2exe 和 py2app,这很重要,因为很多人没有安装 Python 解释器。
不利的一面是,网络上关于它的信息较少,因为它较新,而且可供查看的示例游戏也较少。
此外,它与以前的版本相比发生了很大变化,因此其中的一些教程现在已经过时(有“新样式事件循环” 和 Sprite 类作为主要补充。)
我建议下载示例(包括一个不错的 Asteroids 克隆,名为 Astraea),看看你是否喜欢这种风格。
关于python - Python游戏库Pygame和Pyglet的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/370680/