@@ -30,9 +30,7 @@ object FPS : HudModule(
3030 tag = ModuleTag .HUD
3131) {
3232 val average by setting(" Average" , false )
33- val updateDelay by setting(" Update Delay" , 50 , 0 .. 1000 , 1 , " Time between updating the fps value" ) {
34- ! average
35- }
33+ val updateDelay by setting(" Update Delay" , 50 , 0 .. 1000 , 1 , " Time between updating the fps value" )
3634
3735 val frames = mutableListOf<Long >();
3836 var lastUpdated = System .currentTimeMillis()
@@ -41,23 +39,23 @@ object FPS : HudModule(
4139
4240 init {
4341 listen<RenderEvent .Render > {
42+ var currentFps = 0
4443 if (average) {
4544 frames.add(System .nanoTime() + 1 .seconds.inWholeNanoseconds)
4645 frames.removeIf { System .nanoTime() > it }
47- fps = frames.size
46+ currentFps = frames.size
4847 } else {
4948 val currentTimeNano = System .nanoTime()
50-
51- val currentTypeMilli = System .currentTimeMillis()
52- if (currentTypeMilli - lastUpdated >= updateDelay) {
53- lastUpdated = currentTypeMilli
54- val elapsedNs = currentTimeNano - lastFrameTime
55- fps = if (elapsedNs > 0 ) (1000000000 / elapsedNs).toInt()
56- else 0
57- }
58-
49+ val elapsedNs = currentTimeNano - lastFrameTime
50+ currentFps = if (elapsedNs > 0 ) (1000000000 / elapsedNs).toInt() else 0
5951 lastFrameTime = currentTimeNano
6052 }
53+
54+ val currentTypeMilli = System .currentTimeMillis()
55+ if (currentTypeMilli - lastUpdated >= updateDelay) {
56+ fps = currentFps
57+ lastUpdated = currentTypeMilli
58+ }
6159 }
6260 }
6361
0 commit comments