Как известно, объединение объектов, использующих один материал в группу, сильно повышает производительность. Для этого в стандартной поставке Unity существует скрипт Combine Children (далее : Комбайн)
В процессе работы, накопились некоторые добавки к стандартному скрипту Комбайна. Делюсь :
Frame To Wait : сколько кадров на старте скрипта, ждать, прежде чем произвести объединение.
К примеру, у вас есть объект, содержащий ещё сотню объектов, которые в свою очередь содержат чилдов. Префаб внутренних объектов, оборудован Комбайном с собственными настройками. На старте, все они скомбайнятся и мы получим поменьше мешей, но всё равно кучу. Почему бы не скомбайнить их снова?
Ставим циферку 1 и в следующем кадре, после завершения комбайнинга чилдов, слепляем полученные меши вновь и получаем 5 - 10 мешей вместо старых сотен.
Combine On Start - скрипт сработает на старте композиции (если он активирован, конечно).
Destroy After Optimized - убить все исходные объекты. Осторожно! Если на этих объектах коллайдеры, они тоже будут уничтожены.
Cast Shadow - конечная меш будет отбрасывать тени.
Receive Shadow - конечная меш будет принимать тени.
Keep Layer - созданный объект сохранит тот же слой, что и у исходного объекта (на котором висит скрипт)
Ну и, замечательный бонус!
Под правой кнопкой живёт команда Combine Now. Она позволяет провести всё комбинирование прямо в Редакторе, оценить изминения и, или отменить их (созданные меши нужно будет удалить руками) или сохранить. То есть - избежать необходимости комбайнить на старте приложения.
Мне он очень сильно помог и помогает в оптимизации сцен. Надеюсь и вам пригодиться.
З.Ы. Для его работы нужен стандартный скрипт MeshCombineUtility.cs из Standart Assets