目录
系统方法
pygame.time.get_ticks()
pygame.time.wait()
pygame.time.delay()
pygame.time.set_timer()
pygame.time.Clock
pygame.time.Clock.tick()
pygame.time.Clock.tick_busy_loop()
pygame.time.Clock.get_time()
pygame.time.Clock.get_rawtime()
pygame.time.Clock.get_fps()
系统方法
pygame.time.
get_ticks
()
功能:(以毫秒为单位)获取时间
get_ticks() -> milliseconds
返回自 pygame.init()
开始调用的毫秒数。在初始化pygame之前,此值将始终为0。
pygame.time.
wait
()
功能:暂停程序一段时间
属性:wait(milliseconds) -> time
- 将暂停给定的毫秒数。此函数使进程休眠,以便与其他程序共享处理器。一个程序即使只等待几毫秒也需要很少的处理器时间,因此比
pygame.time.delay()
函数稍稍不准。 - 将返回实际使用的毫秒数。
pygame.time.
delay
()
功能:暂停程序一段时间
delay(milliseconds) -> time
- 将暂停给定的毫秒数。此函数将使用处理器(而不是休眠)以使延迟比
pygame.time.wait()
更精确。 - 将返回实际使用的毫秒数。
pygame.time.
set_timer
()
功能:在事件队列上重复创建事件
属性:
- set_timer(eventid, milliseconds) -> None
- set_timer(eventid, milliseconds, once) -> None
- 将事件类型设置为每隔给定的毫秒出现在事件队列中。第一个事件在经过一定时间后才会出现。
- 每个事件类型都可以附加一个单独的计时器。最好使用
pygame.USEREVENT
和pygame.NUMEVENTS
的值。 - 若要禁用事件的计时器,请将毫秒参数设置为0。
- 如果once参数为True,则只发送计时器一次。
New in pygame 2.0.0.dev3: once argument added.
pygame.time.
Clock
功能:创建一个帮助跟踪时间的对象
属性:Clock() -> Clock
创建可用于跟踪时间量的新Clock对象。时钟还提供了一些功能来帮助控制游戏的帧速率。
pygame.time.
Clock.tick
()
功能:更新时钟
属性:tick(framerate=0) -> milliseconds
- 此方法应每帧调用一次。它将计算自上次调用以来经过的毫秒数。
- 如果传递了可选的帧速率参数,函数将延迟以保持游戏运行速度低于给定的每秒滴答数。这可以用来帮助限制游戏的运行速度。通过调用
Clock.tick(40)
,程序的运行速度永远不会超过每秒40帧。 - 请注意,此函数使用 SDL_Delay 函数,这在每个平台上都不准确但使用的CPU不多。如果想要一个精确的定时器且不介意占用CPU,可以使用tick_busy_loop。
pygame.time.
Clock.tick_busy_loop
()
功能:更新时钟
属性:tick_busy_loop(framerate=0) -> milliseconds
- 此方法应每帧调用一次。它将计算自上次调用以来经过的毫秒数。
- 如果传递了可选的帧速率参数,函数将延迟以保持游戏运行速度低于给定的每秒滴答数。这可以用来帮助限制游戏的运行速度。通过调用
Clock.tick_busy_loop(40)
,程序的运行速度永远不会超过每秒40帧。 - 注意,此函数使用 pygame.time.delay()函数,它在繁忙的循环中使用大量的CPU,以确保计时更准确。
New in pygame 1.8.
pygame.time.
Clock.get_time
()
功能:上一刻度(tick)使用的时间
属性:get_time() -> milliseconds
前两次调用之间传递给 Clock.tick()
。
pygame.time.
Clock.get_rawtime
()
功能:上一刻度(tick)中使用的实际时间
属性:get_rawtime() -> milliseconds
类似于 Clock.get_time()
,但不包括 Clock.tick()
限制帧速率的延迟时间。
pygame.time.
Clock.get_fps
()
功能:计算时钟帧率
属性:get_fps() -> float
计算游戏的帧速率(每秒帧数),即最近十次调用Clock.tick()
的平均时间。