VR-гра важить 4 ГБ, а візуально не відрізняється від 1.2 ГБ. Користувач чекає завантаження 20 хвилин. Для Standalone-шоломів кожна секунда завантаження знижує конверсію встановлень. Наш досвід — 8+ років у геймдеві та 40+ оптимізованих VR-проектів у Meta Horizon Store і Steam. Скорочуємо об'єм дистрибутиву до 60% без втрати якості.
Оптимізація розміру дистрибутиву VR: з чого почати?
Першим кроком завжди йде аудит: Unity Build Report показує, які ассети займають найбільше. Типова картина — 70–80% пакету — текстури. З них 600 МБ — нестиснуті 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 — оптимізація розміру дистрибутиву
- Відкрийте Texture Import Settings для кожної текстури.
- У розділі Platform-specific overrides виберіть Android.
- Встановіть Format: ASTC 6×6 (для дифузних і roughness) або ASTC 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 дні. Вартість розраховується індивідуально після аналізу поточного білда. Напишіть нам, і ми запропонуємо прозорий план робіт.






