'Use Fixed Frame Rate' not working properly

Specifically, when this option is enabled, DeltaTime is set to a fixed value, but the Tick doesn’t wait the amount of time it should. The function in question with the bug is UEngine::UpdateTimeAndHandleMaxTickRate in UnrealEngine.cpp. You can see in the function that a WaitTime is calculated in all cases, except when bUseFixedTimeStep or bUseFixedFrameRate is true. It simply sets the DeltaTime and CurrentTime and just goes to the next frame without any waiting. This results in speed up of anything using DeltaTime, since the frame happens quickly, but DeltaTime was set at a fixed value, assuming the game is running faster than the fixed frame rate that was set.

Discussion of intention of this feature was happening here:

Hi Rael5,

I was looking over this issue today, and I agree with what kamrann mentioned in the forum post that you linked. The fixed frame rate option is working as intended in the case that you described. I also agree that we probably could have named this option a little better. I did, however, notice something unusual in the Editor when I was testing this. I had set the fixed frame rate to 10, and I noticed that the autosave warning was appearing about six times more frequently than expected (and the warning was disappearing about six times as fast). I don’t believe it is intended for this setting to influence the Editor in this way, so I entered a ticket to have this investigated further (UE-22770).

Tim