gpt4 book ai didi

python - pygame 仅在屏幕上显示灰色窗口

转载 作者:行者123 更新时间:2023-11-30 22:42:36 25 4
gpt4 key购买 nike

我一直在尝试使用 pygame 来显示游戏场景,但它似乎已经停止为我工作:它在我创建的任何屏幕中只显示一个灰色框,直到 pygame 关闭,然后应该在退出前屏幕会短暂闪烁。例如,下面的最小代码显示灰屏 5 秒钟,然后快速闪烁黑色并退出:

import pygame as pg
import time
pg.init()
sc = pg.display.set_mode((600,600))
sc.fill((0,0,0))
pg.display.flip()
time.sleep(5)

这似乎是屏幕显示的问题,而不是 pygame 本身的问题,因为我可以制作曲面并使用 pg.image.save() 将它们保存到图像文件中,而且它们在那里看起来很好。

自从升级到 OSX 10.12 以来,这是我第一次尝试使用 pygame 在屏幕上显示。这是使用 Python 2.7 和 pygame 1.9.3(从 pip 下载,但也是来自 bitbucket 的 dev 1.9.4 版本的问题)。所有 sdl 依赖项均为最新版本(根据自制软件)。

但是,我现在不知道如何进行更多故障排除,因为我对 pygame 如何与显示器通信的内部结构了解不够。我还能做些什么来帮助找到这个问题的根源并纠正它吗?

谢谢!

最佳答案

您需要一个持续执行以下操作的游戏循环:

  • 调用 pygame.display.flip() ——这将使用新的更改更新屏幕
  • 调用 pygame.event.get() ——这是最重要的,因为否则,事件队列将不会被刷新,并且操作系统将假设您的程序没有响应。 PyGame 中不能有诸如 sleep(5) 之类的东西。

关于python - pygame 仅在屏幕上显示灰色窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42078915/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com