Получите наши руководства по оптимизации игр 2022 LTS для мобильных устройств, консолей и ПК.

Телефоны могут стать больше (или меньше), компьютеры - мощнее, а различные визуальные стили могут входить или выходить из моды. Но одно в разработке игр остается неизменным: Вам нужно оптимизировать игру под целевое оборудование.
К счастью, теперь доступны наши обновленные руководства по оптимизации. Оптимизируйте производительность игры для мобильных устройств и Оптимизируйте производительность игр для консолей и ПКвключают в себя последние обновления Unity 2022 LTS и предоставляют вам арсенал полезных советов, тактик и обходных путей для оптимизации ваших проектов.

Эти руководства основаны на глубоких знаниях команды Accelerate Solutions. Эта команда, состоящая из самых старших инженеров-программистов Unity, поддерживает множество клиентов Unity, глубоко погружаясь в игровые проекты, чтобы помочь определить точки, где производительность может быть оптимизирована для повышения скорости, стабильности и эффективности.
Примечание: Руководства по Unity 2020 LTS по-прежнему доступны, если вы разрабатываете на этой версии движка. Все передовые технические и творческие электронные книги доступны в хабе Unity best practices.

Каждое руководство содержит практические советы по инструментам профилирования, программированию и архитектуре кода, работе с активами, конвейерам рендеринга, пользовательскому интерфейсу и многому другому. Кроме того, здесь вы найдете множество новых и обновленных ссылок на дополнительную документацию и другие ресурсы, если захотите углубиться в их изучение.
Вот некоторые из тем, которые освещаются в руководствах.
Выявление узких мест: Как понять основную методологию оптимизации производительности и использовать Unity Profiler и Profile Analyzer; как учесть температуру мобильных устройств, работать в рамках определенного бюджета кадров и понять, привязан ли ваш проект к CPU или GPU
Управление памятью: Как использовать Memory Profiler, сократить работу по сборке мусора и использовать инкрементный сборщик мусора
Программирование и архитектура кода: Как минимизировать дорогостоящий код, почему следует использовать хэш-значения вместо строковых параметров, выбор правильной структуры данных и использование ScriptableObjects для повышения производительности

Конфигурация проекта: Как отключить ненужные настройки проигрывателя, качества или физики; как избежать больших иерархий и работать с Vsync
Активы: Как правильно импортировать и сжимать текстуры, проверять количество полигонов, автоматизировать настройки импорта с помощью AssetPostprocessor, Unity DataTools и как использовать Addressable Asset System
Оптимизация графики и GPU (для мобильных устройств): Когда использовать пакетную обработку вызовов рисования, как избежать слишком большого количества динамических источников света и как эффективно использовать слои света; как использовать Occlusion Culling для удаления скрытых объектов, как избегать родного разрешения мобильных устройств, как минимизировать перерисовку и альфа-смешивание, как справиться с эффектами постобработки и многое другое
Графика (консоль/ПК): Как оптимизировать конвейеры рендеринга и Shader Graph, удалять встроенные настройки шейдеров, снимать варианты шейдеров, работать с зондами отражения, тенями и шейдерными эффектами
Оптимизация GPU (консоль/ПК): Как провести бенчмаркинг GPU, оптимизировать fill rate и уменьшить перерисовку, просмотреть порядок отрисовки и очереди рендеринга, уменьшить количество партий, активировать графические задания, отказаться от шейдеров с тесселяцией и заменить геометрические шейдеры вычислительными шейдерами

Пользовательский интерфейс: Понимание различий между UGUI и UI Toolkit; как разделить холсты, скрыть невидимые элементы пользовательского интерфейса, ограничить GraphicRaycasters и отключить Raycast Target; почему вам следует избегать групп макетов, больших списков и сеток, а также многочисленных наложенных элементов
Физика: Как упростить коллайдеры, настроить частоту симуляции, изменить CookingOptions для MeshColliders, использовать Box Pruning для больших сцен, изменить итерации решателя, отключить автоматическую синхронизацию трансформаций, повторно использовать Collision Callbacks, перемещать статические коллайдеры, использовать неаллокационные запросы, пакетные запросы для приведения лучей и визуализировать с помощью Physics Debugger
Аудио: Сравнение моно и стерео; методы сжатия, тип загрузки и методы выгрузки отключенных аудиоисточников из памяти, использование lossless-файлов в качестве источника, как уменьшить количество аудиоклипов и оптимизировать работу аудиомикшера


Оптимизация игр для мобильных устройств, ПК и консолей - это процесс, который лежит в основе всего цикла разработки игр. Как показывают списки многих пунктов в предыдущем разделе, эти электронные книги содержат широкий спектр советов для каждой части вашей игры, такой как скриптинг, рендеринг, графика и профилирование.
Обязательно ознакомьтесь с руководствами по оптимизации, а также с нашими электронными книгами по этим темам:
- Полное руководство по профилированию игр Unity
- Знакомство с универсальным конвейером рендеринга для передовых создателей Unity Unity 2022 LTS
- Лучшие практики контроля версий и организации проектов для разработчиков игр
- Повысьте уровень программирования с помощью шаблонов программирования игр
- Освещение и окружение в конвейере рендеринга высокой четкости (HDRP) Unity 2022 LTS
- Создание модульной игровой архитектуры в Unity с помощью ScriptableObjects
Мы надеемся, что вам понравятся наши последние руководства по оптимизации для мобильных и консольных/PC игр.
Вы можете найти все электронные книги (и множество статей о том, как это сделать) в хабе Unity best practices или на странице advanced best practices в документации Unity.