Pygame:pygame.time.Clock,或time.sleep

Pygame: pygame.time.Clock, or time.sleep

我在这个 Pygame 项目中有一个合作伙伴。所以它是为了好玩,它是 Snake。 他说使用 time.sleep 而不是 pygame.clock 因为它是 'better'。他的选择更好,还是我的更好?

使用pygame.time.Clock控制每秒帧数,从而控制游戏速度。

方法tick() of a pygame.time.Clock object, delays the game in that way, that every iteration of the loop consumes the same period of time. See pygame.time.Clock.tick():

This method should be called once per frame.

这意味着循环:

clock = pygame.time.Clock()
run = True
while run:
   clock.tick(60)

每秒运行 60 次。

相比之下,time.sleep 只是等待固定的时间。如果你想获得恒定的帧率,你需要使用 pygame.time.Clock.tick.