Pygame: pygame.display.flip () значительно замедляет игру - PullRequest
0 голосов
/ 30 июня 2018

В настоящее время я работаю над клоном Super Mario Bros. И когда я запускаю display.flip () или diplay.update (), мой fps ограничивается примерно 20 кадрами в секунду.

Даже пустой основной цикл с помощью только clock.tick (60) и update () без прорисовки ничего не дает того же результата.

Когда я удаляю display.update (), я получаю 60 кадров в секунду, когда моя игра выполняет все вычисления.

import pygame as pg

class Main():
        
    def __init__(self):
        pg.init()
        self.screen = pg.display.set_mode((1000, 1000))
        self.clock = pg.time.Clock()

    def main_loop(self):
        while True:
            self.clock.tick(60)
            print(self.clock.get_fps())
            pg.display.flip()

main = Main()
if __name__ == '__main__':
    main.main_loop()

Чем больше размер экрана, тем ниже частота кадров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...