在数组中加载图像序列时,pygame.error:内存不足

时间:2018-01-11 14:29:18

标签: python pygame

我有一个动画背景,因为加载图像每一帧都需要很长时间我创建了一个数组,我在启动时加载所有图像。

self.spriteArrayBG = []
i = 1
while i <= 361:
    self.path = "CTT/BG/" + str(i) + ".png"
    #print(i)
    self.spriteArrayBG.append(pg.image.load(self.path).convert_alpha())
    i += 1
    print("BG Frame #" + str(len(self.spriteArrayBG)))

所有合并的图像大约为90MB。在150个图像之后运行循环时pygame崩溃时出现以下消息:pygame.error:内存不足

然而Pygame使用的是1.5GB的RAM,还有超过20GB的内存供它使用。

那为什么它使用差不多1GB的ram来存储甚至45MB的图像呢?是否有可能分配更多的ram?或者有更好的方法来制作动画背景吗?

0 个答案:

没有答案