Моя программа очень простая, но мой fps не увеличивается больше чем на 20

Я начал делать игру и подумал, что у нее частота кадров 60 кадров в секунду. После того, как я нашел способ отображать истинную частоту кадров, я увидел, что на самом деле она составляет порядка 20 кадров в секунду. Я сделал более простую версию программы, которая определенно должна работать со скоростью 60 кадров в секунду, но, к моему удивлению, она также работала со скоростью 20 кадров в секунду. Когда я запустил игру на другом компьютере, она работала со скоростью 60 кадров в секунду, как я и ожидал. Зачем ему работать на одном компьютере со скоростью 20 кадров в секунду, а на другом - 60 кадров в секунду?

Это самая простая версия моей программы:

import pygame as pg
import sys

WIDTH = 800
HEIGHT = 800
FPS = 60

BLUE = (0, 0, 255)

pg.init()
screen = pg.display.set_mode((WIDTH, HEIGHT))
clock = pg.time.Clock()

running = True
while running:
    clock.tick(FPS)
    for event in pg.event.get():
        if event.type == pg.QUIT:
            running = False

        if event.type == pg.KEYDOWN:
            if event.key == pg.K_ESCAPE:
                running = False


    pg.display.set_caption(str(clock.get_fps()))

    screen.fill(BLUE)
    pg.display.update()

pg.quit()
sys.exit()

person mohsen    schedule 27.01.2019    source источник


Ответы (1)


Учитывая, что ваша игра работала так, как должна, на другой машине, проблема, скорее всего, существует на той машине, с которой у вас возникли проблемы, а не в вашем коде. Я не специалист в этой области, но вам следует проверить настройки вашего компьютера, потому что я считаю, что есть настройки, которые контролируют максимальный / минимальный FPS на компьютере.

person Pokechu48    schedule 27.01.2019
comment
Спасибо, но я также должен упомянуть, что на другом компьютере частота кадров внезапно упала - person mohsen; 29.01.2019