在PyGame中播放动画

时间:2018-06-17 20:28:12

标签: python pygame

我已经在列表中加载了一些图像,并且我在调用时尝试通过循环播放这些图像,但图像似乎没有加载。它意味着过渡期。这是我的代码示例:

images = [".\\ANIM\\trans_00001.png",".\\ANIM\\trans_00002.png",".\\ANIM\\trans_00003.png"]

playAnimation=True
counter=0

if playAnimation:
     pygame.image.load(images[counter])
     counter=(counter+1)%len(images)

2 个答案:

答案 0 :(得分:1)

pygame.image.load返回一个pygame.Surface对象,如果要稍后使用它,则必须将该对象分配给变量或将其放入列表或其他数据结构中。

我建议您在定义images列表时加载图像,因为从硬盘重复加载它们效率很低。

images = [
    pygame.image.load(".\\ANIM\\trans_00001.png"),
    pygame.image.load(".\\ANIM\\trans_00002.png"),
    pygame.image.load(".\\ANIM\\trans_00003.png"),
    ]

然后以这种方式访问​​当前图像:

current_image = images[counter]

答案 1 :(得分:-1)

使用

while playAnimation:  

而不是

if playAnimation: