Godot Version
4.4.1.stable
Question
Hi!
I’m trying to record a clip of my game using Movie Maker mode in Godot editor. However, my game runs about twice as fast in that mode. The issue is, the physics seems to tick more often. Here’s the code I have in my scene:
var time = Time.get_ticks_usec()
func _physics_process(delta: float) -> void:
var time2 = Time.get_ticks_usec()
print(delta, " time: ", time2 - time)
time = time2
Basically, I measure the physics tick delta and the actual time elapsed between physics ticks. With the usual 60 fps I get the following results:
0.01666666666667 time: 16637
0.01666666666667 time: 16687
0.01666666666667 time: 18306
0.01666666666667 time: 15669
0.01666666666667 time: 16635
Pretty consistent, and one physics tick is roughly equal to the actual frame time.
Now, when I run this in 30 fps:
0.01666666666667 time: 39
0.01666666666667 time: 33538
0.01666666666667 time: 42
0.01666666666667 time: 33107
Physics is processed at the same 60 fps, and this corresponds to 2 ticks per frame (on average). The game runs with the same speed as with 60 fps, so no issues here.
Now, when I start the same scene in Movie Maker mode, things get crazy:
0.01666666666667 time: 29
0.01666666666667 time: 9560
0.01666666666667 time: 28
0.01666666666667 time: 9379
0.01666666666667 time: 28
0.01666666666667 time: 9475
The delta doesn’t match the actual time on average any more. The game runs at about 1.5x speed.
I don’t have any _process overrides, everything happens in _physics_process.
Is this some editor bug, or am I doing something wrong here? Is there a setting that I can change in order to record the video of the scene normally?