Surface.scroll() 是在 Pygame 中实现可移动 2D 视点的正确方法吗?



我正在用Python+Pygame编写一个2D Elite风格的游戏,我需要移动星图,以便玩家可以看到整个事情。

我以前做过这种事情的方式是在绘图时将"相机"的坐标添加到其他所有内容的坐标中。但是,我注意到Pygame具有将整个表面移动一定量的功能。这是实现此功能的更快、更简单的方法吗?

星图大约是100,000像素的平方,如果它取决于图像的大小。

对于初学者来说,一个巨大的位图并不是很好,因为它会消耗资源。

我所做的是将地图划分为相机的大小,最终一次显示 9 个图块,移动相机会移动地图,并只绘制看到的地图。不过没有太大的改进。

你总是可以尝试更简单的方法,如果你觉得游戏太慢,你可以尝试另一种。如果您看不到差异,则没有优化的意义。

相关内容

最新更新