I’m seeing really weird behavior with UGameplayStatics::SetGlobalTimeDilation in the promoted branch (with the HEAD at commit 3381c214799b9206b8a62398babc5278e078b106).
If we call UGameplayStatics::SetGlobalTimeDilation(0.f) then everything slows down (because, as the message in the output log states, “Time Dilation must be between 0.0001 and 20. Clamping value to that range.”). That’s fine, that’s not the bug.
The bug is that doing this slowly decreases the frame rate by slowly increasing the amount of time spent in each game loop (seen using “stat unit”). For instance, I’m seeing the game time starting at ~2.9ms and, after calling UGameplayStatics::SetGlobalTimeDilation(0.f) and waiting about 30 seconds, it’s currently taking 34ms.
That’s new behavior since 4.7 and I haven’t spent any time tracking down what’s happening yet, I just wanted to log the bug here and I’ll update it when I find out something more.