Оптимізація розміру дистрибутива VR-ігор для швидкого завантаження

Важкий дистрибутив VR-гри змушує користувачів втрачати інтерес ще до першого запуску. Ми оптимізуємо розмір білда, стискаючи текстури й налаштовуючи Unity-проєкт, щоб завантаження стало швидким і комфортним. Наша команда реалізує проєкт під ключ — від аудиту до впровадження, з подальшою підтримкою.
Часті запитання

VR-гра важить 4 ГБ, а візуально не відрізняється від 1.2 ГБ. Користувач чекає на завантаження 20 хвилин. Для Standalone-шоломів кожна секунда завантаження знижує конверсію встановлень. Наш досвід — 8+ років у геймдеві та 40+ оптимізованих VR-проєктів у Meta Horizon Store і Steam. Скорочуємо обсяг дистрибутива до 60% без втрати якості.

Оптимізація розміру дистрибутива VR: з чого почати?

Першим кроком завжди є аудит: Unity Build Report показує, які асети займають найбільше. Типова картина — 70–80% пакета — текстури. З них 600 MB — нестиснені PNG/PSD без налаштування Texture Compression. Оптимізація розміру дистрибутива VR починається саме з текстур.

Зв’яжіться з нами для попередньої оцінки вашого проєкту — ми проаналізуємо білд і запропонуємо план дій.

Вплив ASTC-компресії на розмір дистрибутива

Quest 2/3 — ARM-чіп з Adreno GPU, нативний формат стиснення — ASTC. Текстура 2048×2048 у RGBA32 займає 16 МБ. Та сама текстура в ASTC 6×6 — 1.5 МБ, в ASTC 8×8 — 0.9 МБ. ASTC 6×6 стискає текстуру у 17 разів ефективніше, ніж RGBA32, за незначної втрати якості для дифузних карт. Це дає значну економію на зберіганні та CDN-трафіку.

Налаштування ASTC-компресії в Unity — оптимізація розміру дистрибутива

  1. Відкрийте Texture Import Settings для кожної текстури.
  2. У розділі Platform-specific overrides виберіть Android.
  3. Установіть Format: ASTC 6×6 (для дифузних і roughness) або ASTC 4×4 (для нормалей).
  4. Для масового налаштування використовуйте Texture Compression Groups через Addressables або скрипт автоматизації.

Економія на стисненні текстур — до 70% від їхнього початкового обсягу.

Оптимізація аудіо та мешів

Unity за замовчуванням імпортує аудіо без агресивного стиснення. Фонові треки у WAV по 50–100 МБ кожен — не рідкість. Налаштування: Load Type Streaming, Compression Format Vorbis, Quality 70–80% для фонової музики. Короткі звукові ефекти — Decompress on Load з Vorbis.

Загалом з аудіо можна скоротити ще 30–60%, що за типових 200 МБ аудіофайлів дає економію близько 120 МБ і суттєво знижує витрати на CDN.

Меші в неоптимізованому вигляді часто містять зайві вершини для низьких LOD. Використовуємо скрипти для автоматичного зниження щільності сіток на далеких рівнях деталізації. Додаткова економія — 10–20 МБ.

Яку роль відіграє Shader Stripping?

Unity включає в білд шейдери для всіх можливих комбінацій keyword. У VR-проєкті з URP після налаштування Strip Unused Shader Variants у Graphics Settings розмір скорочується на 50–150 МБ лише завдяки видаленню невикористовуваних варіантів. Детальніше — Shader Stripping.

Тип оптимізації Типове скорочення розміру
ASTC-компресія текстур 40–70% від обсягу текстур
Оптимізація аудіо (Vorbis + Streaming) 30–60% від обсягу аудіо
Shader stripping 50–200 МБ
Addressables + remote assets 50–80% від базового пакета
Формат стиснення Розмір на диску (2048×2048) Якість
RGBA32 (без стиснення) 16 МБ Еталон
ASTC 4×4 2.8 МБ Висока
ASTC 6×6 1.5 МБ Середня
ASTC 8×8 0.9 МБ Достатня для дифузних

Інструменти аналізу розміру білда

Unity Build Report — Window → Open Last Build Report — показує, що і скільки важить. Сортування за розміром виявляє аномалії. Asset Bundle Analyzer (від Unity Technologies) — для Addressables, показує дублювання асетів між бандлами.

Кастомний скрипт через AssetDatabase.GetAllAssetPaths() знаходить текстури без ASTC override, аудіо без streaming, меші із зайвими вершинами. Наш багаторічний досвід оптимізації VR-проєктів гарантує, що ми не пропустимо жодного роздутого асета.

Як автоматизувати перемикання всіх текстур на ASTC? Використовуйте скрипт на основі `AssetDatabase` і `TextureImporter`. Приклад коду доступний у документації Unity з налаштування імпорту асетів.

Як Addressables прискорюють завантаження VR-гри?

Для VR-ігор із кількома рівнями — розділення на base package (код + перший рівень) і remote assets (решта рівнів через CDN). Unity Addressables з Remote Load Path на Cloudflare R2 або AWS S3. Користувач встановлює 400 МБ, запускає гру й одразу бачить перший рівень.

Решта довантажується у фоні. Результат — скорочення часу першого встановлення до 3 хвилин і економія на CDN-трафіку до 70%.

Meta Horizon Store підтримує розділення на base APK + expansion files. Базовий APK має бути меншим за 4 ГБ, оптимально — до 1 ГБ.

Що входить до оптимізації дистрибутива

  • Аудит наявного білда з детальним звітом за кожним типом ассетів.
  • Налаштування Texture Compression Groups на всі текстури під Android.
  • Конвертація аудіо у Vorbis з вибором оптимального ступеня стиснення.
  • Налаштування Shader Stripping і LOD-автоматизації.
  • Впровадження Addressables з виділенням базового пакета.
  • Перевірка фінального білда на всіх цільових пристроях.
  • Передача документації щодо підтримання оптимізації.

Терміни та як почати

Аудит і базова оптимізація — 2–5 робочих днів. Повна реструктуризація з переходом на Addressables — 2–4 тижні. Замовте аудит вашого білда — отримайте звіт із точками оптимізації вже за 2 дні. Вартість розраховується індивідуально після аналізу поточного білда. Напишіть нам, і ми запропонуємо прозорий план робіт.

Наші компетенції

Останні роботи

  • Розробка гри для компанії Mortal Motors
    Розробка гри для компанії Mortal Motors
    1709
  • Покрокова стратегія у фентезі сеттингу With Fire And Sword
    Покрокова стратегія у фентезі сеттингу With Fire And Sword
    1180
  • Розробка ігри для компанії Second term
    Розробка ігри для компанії Second term
    807
  • 3D-анімація – тизер для гри phoenix 2.
    3D-анімація – тизер для гри phoenix 2.
    898
  • Навчальна вікторина для дітей «Покупки в магазині»
    Навчальна вікторина для дітей «Покупки в магазині»
    402

Інші послуги студії

VR/AR/MR застосунки на замовлення

Вражайте клієнтів і навчайте команду у віртуальній реальності

Розробка ігор на Unity

Від ідеї до релізу — ігри, які запам'ятовуються

3D-моделювання та анімація

Оживимо ваш продукт в об'ємній графіці та анімації

VR-тренажери промислового обладнання

Тренуємо операторів на техніці без ризику і простою

AR-інструкції для виробництва

Покрокові підказки прямо на обладнанні — без паперу

Safety-тренажери

Відпрацювання НС і техніки безпеки без виходу на об'єкт

VR/AR-тренінги

Навчаємо персонал сервісу, адаптації та soft skills у VR

Навчальні вікторини

Перевірка знань у форматі гри — легко і без стресу

Корпоративні відеоінструкції

Зрозумілі ролики для навчання співробітників і клієнтів

Гейміфікація бізнес-процесів

Мотивуємо команду через ігрові механіки в KPI та HR

Застосунки для інфокіосків

Інтерактивні екрани для магазинів, стендів і офісів

VR/AR-інсталяції

Wow-ефект для брендів на виставках, івентах і в шоу-румах

Віртуальні виставки та музеї

Ваша експозиція доступна з будь-якої точки світу — 24/7

Event-квести та брендовані ігри

Незабутні ігри для конференцій та клієнтських івентів