Сообщение от Nex
Как в играх делают частичную паузу допустим при диалогах, всплывающих окнах при которой всё кроме ключевых персонажей, объектов останавливается?
Время ставить в ноль получается не вариант, ибо остановится вся игра. А делать в каждом скрипте проверку на что то типа GameController.IsPause как то бредово.
|
Вот именно поэтому имеет смысл не пользоваться стандартными Update() напрямую. Мне довольно удобно работать когда у меня есть выделенный класс, который занимается инстанциированием, другой - запуском игровых процессов, третий - обращением к хранилищам данных.
Если у тебя запуск игровой логики на обсчёт сконцентрирован в одном месте (или хотя бы в Update() класса, от которого всё игровое наследуется, и внутри родительского Update() происходит запуск виртуального DoLogic()) - это легко решается. Оверхед от вкручивания чуть более громоздкой архитектуры окупается