我一直在研究一个项目,当我测试它时,这发生了 . 经过一些测试后,我很快意识到代码中的pygame显示翻转部分出了问题 . 我真的不明白这里有什么不对,所以我希望你们其中一个人这样做 .
import pygame
pygame.init()
screen = pygame.display.set_mode((200, 200))
img = pygame.image.load("test.png")
while 1:
screen.fill((0, 0, 0))
screen.blit(img, (0, 0))
pygame.display.flip()
pygame.time.delay(10)
现在,结果是一个空白的白色屏幕,200到200.我希望有人看到这里有什么问题 . 另外,我的png在这里没关系,因为我只用填充(黑色)得到了相同的结果,所以我希望有人知道 .
1 回答
这里有几件事:
1)我建议使用pygame时钟而不是time.delay . 使用时钟设置每秒帧数来运行代码,time.delay就在这里,等待延迟 .
2)Pygame是事件驱动的,所以你需要检查事件,即使你还没有 . 否则它被解释为无限循环并锁定 . 有关更详细的解释:click here
3)我会提供一个退出游戏循环的方法,其中一个标志可以设置为false,这样程序就可以自然地终止