Вступить в клуб →
сложнаявопросUI, контент и мобильная сборка

Фриз при первом появлении каждого нового эффекта, второй раз всё гладко

На телефоне в бою заметны короткие фризы: первое появление каждого нового типа эффекта или врага с непривычным материалом даёт заминку в 100–300 мс. Повторные появления тех же эффектов идут гладко. В редакторе на рабочей машине проблема не воспроизводится. Профайлер показывает всплеск в потоке отрисовки, аллокаций почти нет. Что это и как лечится?

  • Это подгрузка текстур эффекта с диска при первом обращении к ним: помогает уменьшение разрешения и предзагрузка атласов на экране загрузки уровня
  • Фриз даёт сборка мусора при создании объекта эффекта: достаточно завести пул и переиспользовать заранее созданные экземпляры
  • Варианты шейдеров компилируются на устройстве при первом использовании материала: их прогревают на экране загрузки и сокращают их число
  • Так проявляется первое создание префаба: движок кэширует префаб только после первого Instantiate, поэтому первый вызов всегда заметно дороже

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела