Я понимаю, что это не простая проблема, поскольку вы кажетесь новичком в Unity.
Вы правильно поняли, что изменение масштаба времени приведет к замораживанию всех агентов на сцене.ОДНАКО, если вы загружаете новую сцену, вам нужно перезагрузить игровую сцену - потерять все данные, которые у вас были (а это не то, что вы хотите).Мой совет - создать элемент наложения на игровой сцене и просто показать / скрыть его.* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * в качестве отправной точки.Дайте мне знать, если вам нужна дополнительная помощь.
пример кода
// Update is called once per frame
void Update()
{
if (Input.GetKey(KeyCode.Escape))
{
if (Time.timeScale == 0)
{
Time.timeScale = 1;
pauseMenu.gameObject.setActive(true);
}
else
{
Time.timeScale = 0;
pauseMenu.gameObject.setActive(false);
}
}
}
Вам понадобится ссылка на объект игры pauseMenu, прикрепленный к этому сценарию, с помощью редактора Unity.