Сборка Unity, в которой более 70% занимают заголовки файлов

Прошлой ночью я работал над текущим проектом Unity и заметил, что при сборке заголовки файлов составляют более 70% моего пространства сборки. Я читал в документах единства, что этого не должно быть.

Искал в сети, как уменьшить это, но ничего не нашел. Может ли кто-нибудь предложить хороший подход к снижению этой цифры?

Я попытался обновиться до последней версии Unity и попытался отключить Static Lightmaps, но ничего не изменилось. Каждый раз, когда я создаю проект, файлы заголовков увеличиваются в размерах?

В моей папке ресурсов (размером всего 3 МБ) у меня, вероятно, есть:

  • 12 изображений
  • 7 материалов
  • 45 сборных.

Вот фото моей проблемы:

введите описание изображения здесь

И из моего Editor.log:

Build Report
Uncompressed usage by category:
Textures      34.4 mb    15.6% 
Meshes        1.5 mb     0.7% 
Animations    2.0 mb     0.9% 
Sounds        384.9 kb   0.2% 
Shaders       4.7 mb     2.1% 
Other Assets  1.8 mb     0.8% 
Levels        3.1 mb     1.4% 
Scripts       1.1 mb     0.5% 
Included DLLs 4.1 mb     1.8% 
File headers  167.6 mb   76.0% 
Complete size 220.6 mb   100.0% 

Used Assets and files from the Resources folder, sorted by uncompressed size:
 11.3 mb     5.1% Assets/Realistic Terrain Collection/Terrains/Terrain1/Low Resolution_1.asset
 6.0 mb  2.7% Assets/Realistic Terrain Collection/Terrains/Terrain3/Low Resolution_3.asset
 4.6 mb  2.1% Resources/unity_builtin_extra
 1.3 mb  0.6% Assets/Town Creator Kit LITE/Textures/Buildings_Map_1A.png
 1.0 mb  0.5% Assets/Lava_Flowing_Shader/Textures/lava2.png
 658.0 kb    0.3% Assets/_Project/LoadingScreen/FWC_Logo.png
 412.9 kb    0.2% Assets/Fantasy Wooden GUI  Free/normal_ui_set A/UI board Small  stone.png
 384.2 kb    0.2% Assets/_Project/_Scenes/SnowyPeaksLevel/ReflectionProbe-0.exr
 384.2 kb    0.2% Assets/_Project/_Scenes/OutOfPlay/ReflectionProbe-0.exr
 ...

person Charlie Seligman    schedule 22.03.2018    source источник


Ответы (1)


Этого не должно происходить с таким количеством файлов. Первое, что вы должны проверить, это: уверены ли вы, что ресурсы, о которых вы говорите (12 изображений, 7 материалов, 45 готовых элементов), находятся в папке resource, а не в папке asset. ? Размер заголовка файла зависит только от количества файлов в папке ресурсов. Еще раз проверьте содержимое папки ресурсов (на всякий случай)

Если у вас есть система управления версиями (git или другая), вы можете попробовать открыть чистую версию своего проекта. Оформить проект без файлов .meta. Пусть единство соберет весь проект и проверит размер в этой новой папке. (Если у вас нет программного обеспечения для управления версиями, вы все равно можете создать чистый проект и скопировать свои сцены и активы вручную, без файлов .meta)

Если размер все равно большой, проверьте, нет ли у вас ненужных статических префабов (галочка static в объекте). Я не знаю технической причины этого, но это было решение для этого парень

Цитирование ссылки:

Это было решено

30 из 36 мб было решено путем сброса статики на 2 префабах, думаю, я что-то там делал не так. Последние 6 были из сцены, я удалил все в сцене, а 6 мб еще были в заголовках файлов, поэтому я скопировал все в новую сцену и удалил предыдущую сцену. 6мб ушло.

Я ожидаю, что просто сделать чистую установку будет работать в вашем случае.

Если ничего из этого не работает, это может означать, что эти заголовки необходимы для загрузки папки ресурсов. В этом случае решение может состоять в том, чтобы переключиться на наборы ресурсов вместо использования папки ресурсов.

Наборы ресурсов — это архивные файлы, которые могут содержать определенные ресурсы Unity, такие как префабы, текстуры, сетки и т. д. Он по-прежнему позволяет загружать активы во время выполнения. Это решение, предложенное Unity в этом тема

Цитирование ответа разработчика Unity по ссылке выше

Я думаю, что нет способа уменьшить размер заголовка файла без уменьшения количества файлов в папках ресурсов. Поэтому я предлагаю продолжать использовать пути к файлам из базы данных, чтобы перейти к другому решению, используя локальные пакеты активов вместо папки ресурсов, вы все равно можете использовать путь к файлу для загрузки актива из Assetbundles.

Если это кажется хорошим решением для вашего случая использования, вот руководство по комплектам активов

person Basile Perrenoud    schedule 26.03.2018
comment
Спасибо за ответ. Мои активы находятся в моей папке «Ресурсы», но это внутри моей папки «Активы». Я думаю, так и должно быть? Моя папка ресурсов составляет всего 8,4 МБ. - person Charlie Seligman; 03.04.2018