Pygame:最好多次加载图像,还是在内存中保留一个表面?

时间:2016-05-07 07:51:50

标签: python pygame

我和一个朋友正在开发游戏,并且作为简化代码的一部分(我们最初为游戏设计编写它,代码根本不是很整洁:p)他决定设置资源加载器,以便它会在每次请求时从文件中加载精灵。

这对我来说似乎有点笨拙。如果我们这样做,磁盘I / O不是一个大的减速吗?或者我在这里什么都不担心?我没有看过他的最新变化,但我认为他计划稍后扩展它以处理声音效果和音乐。

代码在这里:https://github.com/avivbeeri/GameJam

任何想法或见解都会受到赞赏!

1 个答案:

答案 0 :(得分:0)

将表面保留在内存中要好得多。读取图像是一个多步骤的过程,在代码运行时冻结代码(当然,除非你是线程)。我的意思是,除非你在记忆中保留500多个表面,否则你真的不会遇到问题。但是如果你确实达到了500张以上的图像,那么最好的解决办法就是让引擎从像C这样的较低级别开始。

简短回答:每次使用图像时加载图像的速度都比执行内存更慢,更糟糕。