gymnasium pygame windows 无响应

使用gymnasium的第三方游戏环境Flappybird(https://github.com/markub3327/flappy-bird-gymnasium)训练RL模型,游戏刚运行没多久窗口就会无响应

只是窗口渲染出问题,游戏逻辑实际仍然在运行

出现这个原因是因为 event queue 一直没取,满了,新的event进不去就会卡住,在游戏中加入以下代码即可:

env = gymnasium.make("FlappyBird-v0")
while True:
   # game loop
    env.render()
    ...
    pygame.event.clear()  #  加这个代码清空event queue,或者 pygame.event.get()
    ...

参见:https://www.pygame.org/docs/ref/event.html#pygame.event.clear

Leave a Comment