为什么 Pygame 比 2d 游戏引擎慢这么多?

Nv7*_*Nv7 3 python pygame godot

我是 godot 用户和 Python 用户。在 pygame 中,在像 pong 这样的简单游戏中,我在全屏模式下的平均 FPS 为 55-60。此外,当移植到 Kivy 时,我的平均 FPS 为 60-70FPS。但是当我在 Godot 中进行编码时,在视口中获得了 180-200 的平均 FPS,同时进行了分析!我的程序在两者中都非常相似,而且我在 Godot 中根本不是静态类型。为什么 pygame 这么慢,无论如何我可以让它更快?

Kin*_*ley 5

Godot 使用OpenGL ES 绘制到窗口。PyGame 基于 SDL,它根本不使用硬件图形基元。你也可以将你的游戏移植到Kivy,它也支持 OpenGL ES。

就将像素推送到屏幕而言,使用在G PU上运行的C PU绘制图形并不是 CPU 能够赢得的竞赛。也就是说,对于很多游戏风格,PyGame 已经足够快了。绝对没有必要以比显示器刷新的速度更快地更新屏幕。

我希望PyGame 中的基本Pong始终以全 FPS 运行。在巨大的高 DPI 显示器上,甚至可能擦除背景都足以降低 FPS 的像素负载。