44

我想知道什么是最好的开始,pyglet 还是 pygame?哪个更快,哪个更活跃?

我还想知道 pyglet 是否会获得 python 3 支持,因为我在这里读过它可能不可能或需要很长时间。

由于 python 3 的支持,选择 pygame 会更好,还是应该选择 pyglet?

谢谢。

4

3 回答 3

37

pygame 非常活跃,见证了 8 月发布的 1.9 版本,支持 nokia s60、增强的 py2app/py2exe 支持以及一系列实验性功能(支持 Python 3.1、网络摄像头、gfx……)。Hello World等书籍和ludumdarepyweek等定期有趣的竞赛见证了其社区和生态系统的活力。

pyglet 有一个简洁、更新的 API,并且很方便(纯 Python,BSD 许可证而不是 LGPL)。

至于速度,我没有运行任何基准测试,但我认为开箱即用的 pyglet 更擅长利用高级硬件加速来进行 3D 工作,而 pygame 在 2D 工作和硬件上更胜一筹(智能手机、上网本、等,没有闪亮的 3D 硬件加速器)。您可以使用附加组件来提高这两个框架的速度,但这确实会失去便利。

在 Py3 支持等方面,我认为问题只是 pygame 更加成熟和流行,拥有一个更大的核心开发团队,所以它当然可以更早地获得像 Py3 支持这样的新东西。

如果上述问题对你来说都不是决定性的(你对 LGPL 和 BSD 没问题,不太关心智能手机,不需要书等),唯一明智的方法是下载两者并尝试相同在您感兴趣的机器上完成您感兴趣的基本任务——这将告诉您每个“适合您的大脑”的程度、您对速度、便利性等的需求。

于 2009-08-11T15:01:24.277 回答
15

我无法评论其他答案,所以我必须制作这个新答案,抱歉。

就速度而言,Pyglet肯定比开箱即用的pygame快,并且在使用 pygame 进行开发时,速度始终是一个问题(您必须更新屏幕的最小部分,并且记住已更改的内容可能很乏味)。pyglet 没有这样的问题。

如果您使用cocos2d(pyglet 之上的一层)加速事情就更容易了,只需将精灵附加到 BatchNode,然后观察 FPS 上升。

正如评论 pyglet 作为 python3 支持所说的那样。

这只是我个人的喜好,但我更喜欢 Pyglet,加上 cocos2d,它真的很容易学习。缺点是社区小得多。

于 2012-09-19T10:25:30.390 回答
8

这似乎与以下内容重复:Python 游戏库 Pygame 和 Pyglet 之间的区别?

那至少是寻找其他答案的地方。

我参加了 Steve Johnson 在 PyOhio 上关于 pyglet 的演讲(Talk #18 at http://pyohio.org/2009/Talks/),并且对所涉及的代码量之少印象深刻。pygame 看起来很大,我(个人)不关心所有额外的依赖项。

也就是说,我还没有为两者编写任何代码。我的计划是从 pyglet 开始,然后在我适应它之后,尝试 pygame 并查看它们的比较。

我同意 Alex 的回答,如果你用谷歌搜索 pygame vs. pyglet,你会发现很多个人偏好。关于我看到的唯一客观差异是支持多少显卡的差异(pygame 不需要 OpenGL,因此 pygame 可以支持更多)。

于 2009-08-11T19:09:58.117 回答