I was wondering how I would make a slow motion C# script,(I’m new to unity lol) That would still be smooth, but still have accurate and smooth physics.
A very kind soul on the internet gave the answer on here
The gist of it is to add these two lines
Time.timeScale = 0.5;
Time.fixedDeltaTime = 0.02F * Time.timeScale;
The fixedDeltaTime is what causes the smoothness to play out. If for whatever reason you need to revert the game back to normal speeds. I apply this after all the calculations are done.
Time.timeScale = 1;
Time.fixedDeltaTime = 0.02F ;
Seems to work for me.
Happy coding and hope this helps others.
Click on your Rigidbody and choose Interpolate > Interpolate.
This will smooth your physics even when Time.timeScale is at low values such as 0.05.
Time.timeScale = 0.3 /// makes game slow motion.