一组用于在pygame应用程序中加载数据的类/函数,默认对数据和数据处理的结果进行缓存
项目描述
- 此模块最初是pygame项目的简单语法糖,
为了性能,它很快就获得了缓存,允许您调用图像,无需担心您是否已经加载了它们。由于您可能需要对这些图像的处理结果进行操作,图像加载器获得了很多关键字,允许您以缩放、混合、反转、缩放、旋转等方式调用图像,每次只执行这些处理的部分,并使用处理前的结果。好吧,它可能会占用大量内存,但我在大多数情况下发现这比CPU问题要小,所以如果您同意,您可能会同意对于游戏来说,这是一个可以接受的权衡。
哦,为了方便起见,它还可以加载大量文本和音乐,处理这些方面的功能较少,但欢迎贡献,并且也对其进行了缓存。
无论如何,使用它相当简单,只需从loaders.py导入所需的加载器,对于图像文件路径,image()将返回包含图像及其大小的元组,无需将其存储起来,第二次或更多次调用加载器基本上是免费的,这要归功于缓存。
pygame必须加载,并且display_mode设置为执行大多数图像操作。
>>> from pygame_loaders import image >>> image('myimage.png') # actual loading (<Surface(491x546x32 SW)>, <rect(0, 0, 491, 546)>)
>>> image('myimage.png') # returning same result, without any loading >>> image("myimage.png", zoom=1.5) # only performing zoom (<Surface(736x819x32 SW)>, <rect(0, 0, 736, 819)>)
>>> image("myimage.png", zoom=1.5, alpha=0.4) # only changing alpha (<Surface(736x819x32 SW)>, <rect(0, 0, 736, 819)>)