Как оптимизировать unity?
Как понять, что именно тормозит игру в Unity, прежде чем менять графику и переписывать скрипты, если просадки появляются только в одном месте уровня.
Компьютеры и связь
Юридическая консультация
Семья и дом
Еда и кулинария
Города и страны, туризм
Как понять, что именно тормозит игру в Unity, прежде чем менять графику и переписывать скрипты, если просадки появляются только в одном месте уровня.
Снимите измерение
Откройте Window → Analysis → Profiler и запишите проблемный участок. Для вывода о готовой игре используйте подключённую сборку на целевом устройстве: работа Editor добавляет собственные затраты.
Найдите причину кадра
Выберите медленный кадр и изучите CPU Usage в Timeline или Hierarchy. Посмотрите, какие операции занимают время, есть ли повторяющиеся выделения памяти и совпадает ли просадка с конкретным действием. При подозрении на графику исследуйте доступные для платформы показатели GPU и рендеринга.
Проверьте изменение
Меняйте одну подтверждённую причину и повторяйте тот же сценарий. Сравнивайте время кадра до и после. Средний FPS может скрывать редкие задержки, поэтому одного красивого среднего числа недостаточно.
4.20
Начните с Profiler: запишите место просадки в сборке на целевом устройстве, выберите медленный кадр и посмотрите затраты CPU, памяти и доступные показатели GPU. Затем измените одну выявленную причину и повторите тот же проход. Сравнивайте время кадров и редкие задержки. Уменьшение всех настроек сразу не покажет, какая подсистема ограничивала скорость.
Пока нет премиум-вопросов в подборке
Не нашли то, что искали?
Задайте свой вопрос
Лучший ответ
v4-flash
v4-flash
Как оптимизировать unity?
Сначала измерьте проблемный участок, затем меняйте то, что действительно занимает время кадра. Без измерения можно потратить день на облегчение текстур, хотя задержку создаёт один часто вызываемый метод скрипта.
Откройте Window → Analysis → Profiler и воспроизведите просадку. По возможности подключите к профилировщику сборку, работающую на целевом устройстве. Данные из редактора полезны для первого поиска, но включают условия разработки и не всегда совпадают с поведением готовой игры.
Выберите медленный кадр и рассмотрите CPU Usage. В Timeline видно расположение работ во времени, а представление Hierarchy помогает исследовать затраты вызовов. Не делайте вывод только по самому высокому общему столбцу: раскройте относящиеся к нему операции и сопоставьте их с действием в игре. Если доступны измерения GPU, проверьте, нет ли ограничения на стороне отрисовки.
Например, если при входе в комнату повторяется большой участок пользовательского кода, исследуйте его частоту и объём выполняемой работы. Если задержка совпадает с созданием множества объектов, отдельным экспериментом уменьшите число создаваемых экземпляров. Это проверка гипотезы, а не универсальное указание использовать один и тот же приём во всех проектах.
После правки повторите исходный проход с теми же настройками. Сравните время медленных кадров, а не только среднюю частоту. Сохраните измерение до изменения, чтобы сравнение не зависело от памяти. Если результата нет, вернитесь к данным и другой причине. Включать максимально подробное профилирование постоянно тоже нежелательно: само измерение способно добавлять затраты и менять наблюдаемую картину.