Unity "уменьшение размера файла на устройстве" Часть 2

В этой статье будет разбор, как уменьшить размер ассетов. В частности медиа ассетов(музыка, видео, изображения) . Прежде чем начать оптимизацию ассетов, нужно понять, какие ассеты наиболее подходящие кандидаты. Чтобы оптимизировать в первую очередь их.

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

Для этого нужно открыть консоль Unity. Если она не открыта, то ее можно открыть Window> General > Console. Справа сверху нажать на троеточие и открыть OpenEditorLog.

Unity "уменьшение размера файла на устройстве" Часть 2

В нем найти Build Report. Тут представлена информация о том, сколько занимают ассеты. Они разделены на категории. Соответственно лучше начать с той категории, которая занимает большую часть. В моем случае это textures.

Unity "уменьшение размера файла на устройстве" Часть 2

Методы оптимизации текстур

1) Создания атласов спрайтов.

Небольшие спрайты по типу кнопок, персонажей и других можно сделать спрайт атласами. То есть в одном файле будут расположены все спрайты. Таким образом можно существенно уменьшить размер сборки.

2) Выбор верных форматов для спрайтов. Есть как минимум два формата (JPEG и PNG) . JPEG лучше подходит для изображений без прозрачного фона. Для спрайтов персонажей и окружения, и элементов пользовательского интерфейса лучше подходит PNG.

3) Уменьшить разрешение спрайта

Если спрайту не требуется разрешение 1000х1000, а достаточно 500х500, то уменьшение разрешения спрайта уменьшит его объем занимаемой памяти в два раза.

4) Оптимизация под платформу.

Выбрав спрайт, в окне инспектора ниже можно настроить спрайт под целевую платформу. Здесь в основном настройки качества. Тем не менее, покрутив настройки, можно добиться оптимизации и при этом не потеряв в качестве.

Unity "уменьшение размера файла на устройстве" Часть 2

Max size – максимальный размер текстуры.

Методом проб и ошибок можно найти оптимальный максимальный размер без потери качества.

Resize algorithm – алгоритм сжатия

Mitchell – сохраняет высокое качество. Подходит для большинства текстур. Задний фон, персонажи, окружение.

Bilinear – улучшенный метод сжатия, с возможными потерями качества. Подходит для второстепенных текстур.

Format – формат текстуры

Данный параметр можно оставить по умолчанию, так как в Build Settings есть настройка сжатия текстур. Если все же текстуры, основной ассет, который занимает больше всего места. Тогда для некоторых текстур можно настроить данный параметр. Форматов существует довольно много. Поэтому в этой статье не будет их разбора. Подровней можно посмотреть здесь.

compressor quality – параметр, отвечающий за качество текстуры

Немного поиграв с параметрами можно найти оптимальный вариант для каждой текстуры.

Методы оптимизации видео

1) Удалить музыку из видео, если она не используется.

2) Оптимизация под платформу.

Выбрав видео. В окне инспектора ниже можно настроить видео под целевую платформу.

Unity "уменьшение размера файла на устройстве" Часть 2

Dimensions — изменение расширения видео. Данный параметр изменяет высоту и ширину видео.

  • Original – исходный размер видео
  • Three Quarter Res – три четверти исходного размера видео
  • Half Res – половина исходного размера видео
  • Quarter Res – одна четверть исходного размера видео
  • Square (1024 X 1024) – квадрат на 1024 X 1024
  • Square (512 X 512) — квадрат на 512 X 512
  • Square (256 X 256) — квадрат на 256 X 256
  • Custom – установить свои значения высоты и ширины

Bitrate Mode — битрейт выбранного кодека. Чем меньше, тем хуже качество.

Spatial Quality — Этот параметр определяет, уменьшаются ли видеоизображения в размере во время перекодирования В результате, они занимают меньше места для хранения, может возникнуть размытие. Поэтому нужно выбирать подходящий вариант.

Методы оптимизации звуков

1) Удалить пустую часть музыки. Если в каждом звуке или мелодии есть пару секунд, которые не нужны, это увеличивает размер сборки.

2) Оптимизация под платформу.

Выбрав звук, в окне инспектора ниже можно настроить звук под целевую платформу.

Unity "уменьшение размера файла на устройстве" Часть 2

Compression Format – формат сжатия

PCM: без сжатия.

ADPCM: очень старый формат сжатия. Этот формат дает сжатие лучше, чем другие, но из-за него могу возникать артефакты при воспроизведении звука. Хорошо подходит для звуков какого-нибудь шума.

Vorbis: формат сжатия. В большинстве случаев лучше выбирать его.

Quality – качество звука

70-100%: практически неотличимо от PCM в полном качестве. Обычно при 70% не теряется качество и не появляются артефакты.

1-69%: возможны артефакты, и потеря качества. Перед применением лучше проверить.

Sample Rate Setting – частота дескритизации

Preserve: стандартная частота дескритизации

Optimise: Метод поиска максимальной и минимальной частоты и оптимизации без потери качества. Этот параметр можно использовать только для PCM/ADPCM.

Override: при желании можно вручную задать для AudioClip новую частоту дискретизации.

В данной статье были рассмотрены способы оптимизации медиа ассетов. Есть еще много способов уменьшения размера сборки. Если тема многим покажется интересной. Я продолжу цикл статей про уменьшение размера сборки.

55
1 комментарий

Отлично. Ждём следующую часть!
Всегда использую Vorbis 90% , никогда не подводит