Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javaFX中限制/设置帧速率?_Java_Javafx - Fatal编程技术网

如何在javaFX中限制/设置帧速率?

如何在javaFX中限制/设置帧速率?,java,javafx,Java,Javafx,我一直在尝试使用JavaFX创建一个游戏,但忍不住注意到动画速度的随机加速。我一直在使用动画计时器,我创建了一个简单的脚本,根据动画计时器句柄方法调用之间的毫秒数,输出最后两帧播放的fps数。以下是输出: 0 8 5 62 62 62 62 62 62 62 62 62 62 62 62 62 31 62 62 62 62 62 62 35 200 66 142 111 62 62 62 62 58 66 62 62 62 62 58 66 62 62 62 62 62 62 62 62 62

我一直在尝试使用JavaFX创建一个游戏,但忍不住注意到动画速度的随机加速。我一直在使用动画计时器,我创建了一个简单的脚本,根据动画计时器句柄方法调用之间的毫秒数,输出最后两帧播放的fps数。以下是输出:

0
8
5
62
62
62
62
62
62
62
62
62
62
62
62
62
31
62
62
62
62
62
62
35
200
66
142
111
62
62
62
62
58
66
62
62
62
62
58
66
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
58
62
66
62
62
62
62
62
62
62
62
62
62
62
62
58
66
62
62
62
62
62
62
62
62
62
62
62
62
62
62
58
66
62
62
62
62
62
58
62
66
62
58
62
66
62
58
66
62
62
62
62
62
62
62
62
62
62
62
58
66
62
62
62
62
62
62
58
62
66
62
62
58
66
62
62
62
62
62
62
62
62
62
62
58
62
62
62
62
62
66
52
71
62
62
62
66
62
62
62
62
62
62
62
62
62
62
62
62
62
27
1000
37
166

所以很明显,你可以看到,当它确实在ok 62附近徘徊时,随机的加速和减速是存在的(特别是随机的100秒、200秒,最后是整个1000秒),我需要找到一种方法来移除它们,以保持游戏的物理运行正常。有没有办法设置框架盖?我一直在互联网上搜索,没有找到任何有效的解决方案。虽然它们中的大多数看起来或多或少还行,但1000特别麻烦,在1s的跨度内通过了16帧

如果建议的方法优于您正在执行的任何操作,则可能是:的副本,另请参见:。如果在帧速率不恒定的情况下其结果发生变化,则可能需要修改物理引擎实现。假设帧速率恒定,则执行计算不是一个好主意,相反,应根据上次为先前渲染的帧进行计算后所花费的实际时间进行计算。请参见此,它会根据每帧的elapsedTime更新世界。如果建议的方法优于您正在执行的任何操作,则可能会重复:另请参见:。如果帧速率不恒定时,其结果会发生变化,您可能需要修改物理引擎实现。假设帧速率恒定,则执行计算不是一个好主意,相反,应根据上次为先前渲染的帧进行计算后所花费的实际时间进行计算。请参见此图,它根据每帧的elapsedTime更新世界。