I recorded a video of my friend’s studio session. Due to some polling plugin or whatever, (the lag source does NOT matter in this case), their render rate gets brought down every few seconds and their camera jitters. You can see in the video right there, that the camera is tied to render rate and snaps to weird angles while trying to move the mouse normally.
No external scripts have been placed into the game as far as I know, and this issue happens in the case of any lag spike.
The video above showcases an artificial lag script I have made using os.clock() with lag spikes every 2 seconds (lasting 1 second). You can see very clearly that as the game lags more, my camera moves further away. This is highly hardware-dependent and some devices can lag worse than this, as showcased on the video further up.
Conclusion: The CameraModule is tied to render rate and does not appear to function properly in the cases of lag spikes. Further investigation of the scripts finds outdated code using tick(), deltatimes that make the problem worse..
Expected behavior
The camera is independent from render rate (as is with the new smooth updates to the 3D View camera) and does not have these problems happening in the first place. This is a genuine annoyance to anyone who has to test games on a computer that they’re unfamiliar with or has worse specs.
The dump has been captured using 2 mixed scenarios: looking at the cube, and looking away from the cube, with an interval-based lag script running the entire time in the background (that is why you can see delaying threads)