Вы можете использовать другой Time.timeScale
по сценарию:
Time.timeScale = 10;
заставляет вашу игру работать в 10 раз быстрее , чем в реальном времени.
Если вы понизите timeScale
, рекомендуется также понизить Time.fixedDeltaTime
на ту же сумму.
так из примера просто после первой строки также добавьте
Time.fixedDeltaTime = 0.02f * Time.timeScale;
Я бы просто сделал это в таком компоненте, как
public class TimeScaler : MonoBehaviour
{
// adjust in Inspector
public float initialTimeScale = 1.0f;
private void Start()
{
SetTimeScale(initialTimeScale);
}
// Can now also be called rom other scripts
public void SetTimeScale(float scale)
{
Time.timeScale = scale;
Time.fixedDeltaTime = 0.02f * Time.timeScale;
}
}
Таким образом, вы можете просто настроить масштаб с помощью Инспектора или также повторно использовать компонент позже из других сценариев, если вы, например, хотите изменить время и обратно в определенные моменты.