【发布时间】:2014-09-09 11:26:53
【问题描述】:
就像pygame 一样,我想限制循环的帧速率。 Pygame 提供了 pygame.time.Clock.tick() 方法:
如果您传递可选的帧速率参数,该函数将延迟以使游戏运行速度低于给定的每秒滴答数。这可以用来帮助限制游戏的运行速度。通过每帧调用一次 Clock.tick(40),程序将永远不会以每秒超过 40 帧的速度运行。
但是如何在 python 中本地实现呢?
举例说明:
import time
max_frames = 125 # 25*5
current_frame = 1
while current_frame <= max_frames:
print('frame', time.clock(), current_frame)
current_frame += 1
生产:
('frame', 0.01, 1)
('frame', 0.01, 2)
('frame', 0.01, 3)
[...]
('frame', 0.01, 124)
('frame', 0.01, 125)
我想要每秒 25 帧,所以
('frame', 0.01, 1)
('frame', 0.05, 2)
('frame', 0.08, 3)
[...]
('frame', 4.98, 124)
('frame', 5.00, 125)
【问题讨论】:
标签: python