Framerate affect the speed of the game

后端 未结 1 937
轮回少年
轮回少年 2020-12-02 01:05

I am practicing on pygame and I was wondering how can we do so that the framerate does not affect the speed of execution of the game

<
相关标签:
1条回答
  • 2020-12-02 01:59

    pygame.time.Clock.tick returns the number of milliseconds passed since the previous call. If you call it in the application loop, then this is the number of milliseconds passed since the last frame.
    Multiply the velocity of the player by the passed time per frame, to get a constant movement independent on the FPS.

    For instance define the distance in number of pixel, which the player should move per second (move_per_second). Then compute the distance per frame in the application loop:

    move_per_second = 500
    FPS = 60
    fun = True
    clock = pygame.time.Clock() 
    while run:
        ms_frame = clock .tick(FPS)
        move_per_frame = move_per_second * ms_frame / 1000  
    
        # [...]
    
    0 讨论(0)
提交回复
热议问题