【问题标题】:Show FPS in Pygame在 Pygame 中显示 FPS
【发布时间】:2021-06-12 06:27:48
【问题描述】:

我正在与我的朋友在 python 中使用 pygame 开发一个项目。我们试图在我们的游戏中显示 FPS,但我们失败了。 fps 计数器始终为零。代码如下:

#Create Text
def Render_Text(what, color, where):
    font = pygame.font.Font('assets/Roboto.ttf', 30)
    text = font.render(what, 1, pygame.Color(color))
    window.blit(text, where)
#Show FPS
    Render_Text(str(int(clock.get_fps())), (255,0,0), (0,0))
    print("FPS:", int(clock.get_fps()))

【问题讨论】:

  • clock = pygame.time.Clock()?
  • 是的,时钟是 pygame.time.Clock()
  • 您是否每帧调用一次clock.tick()

标签: python pygame frame-rate


【解决方案1】:

get_fps() 只给出正确的结果,当您每帧调用一次 tick() 时:

clock = pygame.time.Clock()
run = True
while run:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False          

    clock.tick()
    print(clock.get_fps())

    # [...]

查看get_fps()的文档

get_fps()计算时钟帧率

get_fps() -> float

计算游戏的帧速率(以每秒帧数为单位)。它是通过平均对Clock.tick() 的最后十次调用计算得出的。

【讨论】:

    猜你喜欢
    • 2016-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多