У VR-проекті на Unity камера рендерить об'єкти за стінами — FPS падає. Occlusion culling вирішує: відсікає невидиме, знижуючи draw calls в 2–3 рази. Ми налаштовуємо його в кожному VR-проекті та гарантуємо результат.
Чому occlusion culling критичний для FPS у VR?
У VR камера має два frustum (ліве/праве око) та широке поле зору ~100–110°. Це збільшує кількість видимих об'єктів. Без culling GPU витрачає ресурси на невидимі полігони. З коректним налаштуванням Umbra ми економимо до 40% GPU часу — критично для бюджетних шоломів з обмеженим тепловим порогом. Порівняно з frustum culling, occlusion culling у закритих сценах у 3 рази ефективніший: він знижує навантаження на GPU додатково на 30–50%.
Де occlusion culling ефективний, а де ні?
Результат: закриті простори — коридори, кімнати, будівлі, печери. Стіна між кімнатами — ідеальний occluder. На відкритих сценах (ландшафти, природні локації) occlusion culling майже не працює — тут рекомендуємо frustum culling, LOD groups та портальний culling. У VR з широким FOV ефективність culling трохи нижча, але bake з правильними параметрами вирішує.
Як ми налаштовуємо Umbra в Unity: покроковий процес
- Аналіз сцени: виявляємо occluder-и, оцінюємо FPS budget, визначаємо динамічні об'єкти. Вартість цього етапу входить у загальну вартість послуги.
- Вибір параметрів: підганяємо Smallest Occluder, Smallest Hole та Backface Threshold під геометрію сцени. Наприклад, для інтер'єрів зі стінами товщиною 0.5–1 м ставимо 1–2 одиниці.
- Bake Umbra: запускаємо розрахунок PVS, обов'язково з налаштуваннями для VR (Backface Threshold 25–50).
- Візуалізація та налагодження: перевіряємо через Unity Frame Debugger — дивимося кількість об'єктів у Render.OpaqueGeometry до та після culling. Типові артефакти — об'єкти з'являються з повітря при повороті. Виправляємо збільшенням Backface Threshold або додаванням occluder-ів.
- Документація: фіксуємо всі параметри, даємо рекомендації для динамічних об'єктів. Входить 30 днів підтримки.
Приклад з практики: у проекті з 30 приміщеннями ми знизили draw calls з 2500 до 800 після першої ітерації. Повна оптимізація зайняла 4 дні. Вартість налаштування розраховується індивідуально залежно від складності сцени. Економія на GPU-бюджеті перевищує 40%, що подовжує автономність VR-шолома. Зв'яжіться з нами для оцінки вашого проекту.
Порівняння методів culling для VR
| Метод | Ефективність у закритих просторах | Ефективність на відкритих сценах | Складність налаштування |
|---|---|---|---|
| Frustum culling | Низька (відсікає тільки поза камерою) | Висока | Низька |
| Occlusion culling (Umbra) | Висока (до 90% об'єктів) | Низька (<20%) | Середня |
| Портальний culling (SECTR) | Висока (точно по прорізах) | Середня (використовується з LOD) | Висока |
Рекомендовані параметри Umbra для VR
| Параметр | Значення | Пояснення |
|---|---|---|
| Smallest Occluder | 1–2 | Мінімальний розмір occluder (в одиницях сцени) |
| Smallest Hole | 3–5 | Розмір проходу, через який проходить culling |
| Backface Threshold | 25–50 | Визначає, наскільки агресивно враховувати зворотні сторони |
Типові помилки при налаштуванні occlusion culling
- Маленьке значення Backface Threshold (менше 20) — з'являються діри в culling.
- Відсутність розмітки Occluder Static на тонких об'єктах — вони не беруть участі в culling.
- Завеликий Smallest Hole (більше 5) — об'єкти за дверними прорізами не відсікаються.
Використовуйте Frame Debugger для перевірки: кількість об'єктів у Render.OpaqueGeometry після culling має бути щонайменше вдвічі менше, ніж до. Неправильне налаштування може коштувати до 50% FPS — проект стане некомерційним.
Чому статична геометрія важлива для occlusion culling?
Occlusion culling працює тільки зі статичними occluder-ами. Динамічні об'єкти (NPC, частинки) не беруть участі в bake, але самі можуть culling-тися статичними occluder-ами, якщо позначені як Occludee. Для складних сцен з динамікою ми доповнюємо портальний culling через Rooms & Portals — це дає передбачуваний результат на дверних прорізах. Усі статичні об'єкти-occluder позначаємо як Occluder Static та Occludee Static в Inspector.
Що входить у роботу
- Аналіз сцени: виявлення occluder-ів, оцінка FPS budget.
- Bake Umbra з підбором параметрів.
- Візуалізація та налагодження артефактів.
- Документація щодо налаштувань та рекомендації для динамічних об'єктів.
- 30 днів підтримки після здачі.
Наша команда має 10-річний досвід у VR-оптимізації, понад 50 проектів з occlusion culling. Отримайте консультацію — ми оцінимо ваш проект та запропонуємо відповідне рішення.






