我想在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
然后你需要放配置集,它应该像这样工作。