pygame:当前时间毫秒和增量时间

时间:2014-06-04 14:11:47

标签: python python-3.x pygame

正如您在下面的代码中看到的,我有一个基本的计时器系统

done = False
clock = pygame.time.Clock()

# Create an instance of the Game class
game = space_world.SpaceWorld()

# Main game loop
while not done:
    # Process events (keystrokes, mouse clicks, etc)
    done = game.process_events()

    # Update object positions, check for collisions...
    game.update()

    # Render the current frame
    game.render(screen)

    # Pause for the next frame
    clock.tick(30)

我的问题是,如何获得当前时间毫秒以及如何创建增量时间,以便在更新方法中使用它?

2 个答案:

答案 0 :(得分:5)

从文档中:pygame.time.Clock.get_time将返回前两次调用Clock.tick之间的毫秒数。

还有pygame.time.get_ticks,它将返回自调用pygame.init()以来的毫秒数。

Delta-time只是自上一帧以来经过的时间量,如:

t = pygame.time.get_ticks()
# deltaTime in seconds.
deltaTime = (t - getTicksLastFrame) / 1000.0
getTicksLastFrame = t

答案 1 :(得分:4)

ms = clock.tick(30)

该函数返回自上一次调用以来的毫秒数。