800 объектов с почти пустым Update заметны в профайлере: почему
На сцене около 800 декоративных объектов. У каждого свой компонент с Update, внутри которого пара строк: проверка расстояния до камеры и ранний выход. Профайлер на устройстве показывает заметное время в блоке обновления поведений, хотя полезной работы почти нет. Что здесь происходит и что делать?
- Заметное время в блоке обновления поведений всегда означает тяжёлую логику внутри методов: её надо искать глубоким профилированием и оптимизировать
- Пустые и почти пустые Update выбрасываются компилятором, значит показания профайлера ошибочны
- Каждый Update — отдельный переход из движка в управляемый код: на сотнях компонентов накладные расходы заметны сами по себе
- Достаточно увеличить фиксированный шаг физики: обновление поведений привязано к нему, и на большом шаге движок будет вызывать Update реже
