在 Python 的 Kivy 中使用 Config 设置 maxfps 不会限制 fps



我想在Kivy中定义一个fps的限制。

我试图用Config.set('graphics', 'maxfps', '60')将 fps 限制在 60Clock.schedule_interval(lambda dt: print(Clock.get_fps()), 1)但至少我仍然得到大约 70 到 80 fps。

这是我的完整代码:

from kivy.clock import Clock
from kivy.uix.label import Label
from kivy.config import Config
Config.set('graphics', 'maxfps', '60')

class SimpleKivy(App):
def build(self):
Clock.schedule_interval(lambda dt: print(Clock.get_fps()), 1)
return Label(text='Hello world!')

if __name__ == '__main__':
SimpleKivy().run()

导入顺序在这里很重要。该示例适用于在导入任何其他与 kivy 相关的内容之前导入配置:

from kivy.config import Config
Config.set('graphics', 'maxfps', '10')
from kivy.app import App
from kivy.clock import Clock
from kivy.uix.label import Label

class SimpleKivy(App):
def build(self):
Clock.schedule_interval(lambda dt: print(Clock.get_fps()), 1)
return Label(text='Hello world!')

if __name__ == '__main__':
SimpleKivy().run()

正如Kivy错误跟踪器上的相关github问题所述,FPS可能会略微超过/不足,但这是一个大方向。

你需要先放import config然后你需要放配置集,它应该像这样工作。

最新更新