I've been battling this issue for a while, and originally blamed it on the renderer. However, the issue now occurs with all three renderers. The game is running smoothly, but the parallax background scrolling is jittering. Sometimes it's only a little bit, sometimes it's really bad. It looks like the image is jittering back and forth while scrolling. When I record it, it doesn't seem as bad, but I do see that, when it jitters, instead of advancing each frame, it doesn't advance for 2 frames, and then advances twice its distance.
The code for the scrolling is simply:
func _process(_delta):
scroll_offset.x -= 10
The problem is that this makes the scrolling background function pretty much unusable. I tried using _physics_process() instead, but that didn't help either.
UPDATE: Further testing has shown that keeping the background still and moving a camera instead produces the same jitter. It doesn't even need to be parallax. Just creating a background out of a few texture rects is enough. What is going on here? Is Godot incapable of smooth movement?
UPDATE 2: After a bit more digging, might be an issue with the Nvidia graphics card. I made a test project, built it and ran it on my PC, jittery mess. I then ran it on a laptop with an Intel UHD Graphics, runs perfectly smooth. Interestingly, when I run the executable while also running OBS, it gets less jittery. And when I record, even less. I guess my graphics card is too powerful for Godot or something?