我正在用 Python 编写模拟器,并且对有关基本 2D 动画的选项和意见感到好奇。通过动画,我指的是动态渲染,而不是显示预渲染的图像。
我目前正在使用 matplotlib(Wxagg 后端),我有可能继续使用它,但我怀疑它无法在性能或功能方面充分扩展。
要求是:
- 跨平台(Linux、MacOS X、Windows)
- 低复杂性开销
- 与 wxpython 配合良好(至少不会过度踩到对方的脚趾)
- 互动性。检测对象何时被点击、鼠标悬停等。
请注意,高性能不在列表中,但处理屏幕上约 100 个位图对象的能力会很好。
你的想法?
原文由 Dan Homerick 发布,翻译遵循 CC BY-SA 4.0 许可协议
我是 pyglet 的粉丝,它是一个完全独立的库,用于在 win32、linux 和 OS X 下进行图形工作。
它的开销非常低,您可以从网站上的教程中自己看到这一点。它 应该 可以很好地与 wxpython 配合使用,或者至少我似乎记得邮件列表中有关 wxpython 和 pyglet 一起使用的帖子。
但是,它不提供通过鼠标点击来选择对象的功能——您必须自己处理。一般来说,对于 2D 应用程序来说,这并不难做到。
mactorii 是我用纯 python+pyglet 编写的 OS X 应用程序,有一些基本的动画(滚动)和点击检测。它不使用 wxpython,但也许它会让您了解所涉及的内容。但是请注意,mactorii 使用的是旧的 pyglet api,所以我的运行循环已经过时了。我会抽出时间更新它的一天……:P