TimeDelta() does not work when the time scale of the scene is 0

Hello,

When timescale = 0, TimeDelta() outputs 0, which is technically wrong because the definition of TimeDelta() is “Time elapsed since the last frame rendered on screen”, however the game does still render when the scene’s time scale is 0.

For context, I’m making a game called SOUL PARK, a theme park builder. I wanted to add a quick way to freeze the scene while allowing the player to move around the park. Time scale was a nice solution but I can’t use it because player movement relies on the value of TimeDelta().

If you set the time scale to 0, time progresses by 0 seconds every frame. This is intended behavior. This is in fact what even allows you to freeze the scene in the first place, as the time delta is the only thing affected by the timescale, leading everything relying on it to stop moving.