AR-об'єкт має виглядати невід'ємною частиною реального світу: відображати те саме освітлення, мати правдоподібні тіні, реагувати на зміну оточення. Це принципово відрізняє AR від VR, де освітлення контролює команда. В AR джерелом світла виступає реальне оточення, і PBR-пайплайн потребує зовсім іншого підходу. Ми часто стикаємося з задачею: об'єкт не просто накладається на картинку, а живе в ній. Помилки в матеріалах вбивають ілюзію: об'єкт виглядає пласким, неприродньо блищить або не ховається за реальними предметами. Розберемо, як цього уникнути.
Як оцінка освітлення впливає на матеріали?
ARKit (iOS) та ARCore (Android) надають Environment Probe і Light Estimation: дані про колірну температуру, інтенсивність та напрямок основного джерела. Але це оцінки, а не точні дані. Порівняння:
| Характеристика | ARKit | ARCore |
|---|---|---|
| Environment Texture | HDR cubemap (оновлюється кожні кілька кадрів) | Сферичні гармоніки другого порядку |
| Затримка (latency) | Низька | Середня |
| Якість specular | Високе | Середнє |
| Придатність для metallic | Хороша | Потребує обмеження |
Точність Light Estimation ARCore достатня, щоб об'єкт не виглядав чужорідним, але для фотореалізму не вистачає. Завдання PBR-матеріалів в AR — створити фізично коректну базу, яка працює в широкому діапазоні: від яскравого дня до приглушеного офісу.
Чому Metallic workflow потребує налаштування?
В AR Foundation через URP стандарт — Metallic workflow. Але metallic поверхні критичні до якості Environment Probe: висока металічність при бідному Reflection Probe дає плоский сірий highlight. Для AR краще обмежувати Metallic значеннями 0.7–0.85 для «металевих» поверхонь і компенсувати roughness. Occlusion теж впливає: використовуйте AROcclusionManager для коректного приховування за реальними об'єктами. Об'єкти з прозорими або cutout матеріалами потребують окремої обробки в шейдері.
Як налаштувати матеріали під AR Foundation + URP?
Reflection Probes
Статичний cubemap в AR не відповідає реальному оточенню. Правильний підхід — AREnvironmentProbeManager з AR Foundation, який автоматично генерує cubemap з камери і оновлює Reflection Probe. Налаштуйте в Unity: AREnvironmentProbeManager на AR Session Origin, Automatic Placement включено, Environment Texture Filter Mode — Trilinear для плавної інтерполяції.
Конфігурація PBR-параметрів для AR
| Параметр | Рекомендований діапазон | Примітка |
|---|---|---|
| Albedo | Нейтральні тони | Без додаткових bias, AR-движок коригує експозицію |
| Roughness | 0.3–0.6 | Менше 0.2 видає неточність Reflection Probe |
| Metallic | 0.0–0.85 | Для металевих – 0.7–0.85 |
| Normal Map | Помірна інтенсивність | При неправильному освітленні дає артефакт |
| Emission | Для self-illuminated елементів | Допомагає візуально «заземлити» об'єкт |
Практика: матеріал під мобільний AR на Android
На Android через ARCore Light Estimation API доступна сферична гармоніка другого порядку для навколишнього освітлення. В Unity AR Foundation дані приходять через ARLightEstimationData.mainLightDirection та ambientSphericalHarmonics. Кастомний URP ShaderGraph може напряму приймати ці дані і застосовувати до матеріалу, даючи більш точний ambient порівняно зі стандартним URP Lit. Для iOS ARKit надає Environment Texture (HDR cubemap) з оновленням кожні кілька кадрів — якість вища, але latency присутня. Матеріали для iOS-проектів можна налаштовувати агресивніше по specular.
Наприклад, у проекті мобільного додатку для меблевого бренду ми налаштовували PBR-матеріали для дерев'яних поверхонь. Використовували ARCore Light Estimation і кастомний ShaderGraph, що дозволило досягти фотореалістичності при змінному освітленні. FPS залишався стабільним на рівні 30 кадрів/с на пристроях середнього сегменту.
Тестування на фізичному пристрої
Фінальне тестування PBR-матеріалів для AR обов'язково проводиться на фізичному пристрої в різних умовах освітлення: яскравий сонячний день, штучне світло, півтінь. Емулятор не замінює це за жодних обставин.
Що входить в розробку PBR-матеріалу
- Створення текстур (Albedo, Roughness, Metallic, Normal) з урахуванням AR-специфіки
- Налаштування шейдера (URP Lit або кастомний ShaderGraph)
- Інтеграція AREnvironmentProbeManager і Light Estimation
- Тестування на 3+ фізичних пристроях (iOS та Android)
- Оптимізація продуктивності (FPS budget, draw calls)
- Документація по параметрах матеріалу
- Підтримка після здачі (2 тижні безкоштовних правок)
Типові помилки при створенні PBR в AR
- Використання занадто високого Metallic (1.0) — дає відблиски без урахування реального оточення.
- Нехтування Roughness: гладкі поверхні (0.1) виглядають неприродньо в AR.
- Відсутність тестів при різному освітленні — матеріал «працює» тільки в офісі, але не на вулиці.
- Ігнорування Occlusion — об'єкт не ховається за реальними предметами.
Терміни та вартість
Терміни залежать від складності: простий prop — від 2 робочих днів, складний асет (кілька material zones + кастомний шейдер) — від 5 робочих днів. Аудит існуючих матеріалів — 1 робочий день. Вартість розраховується індивідуально. Зв'яжіться з нами для оцінки вашого проекту. Наш досвід — 5+ років в AR/VR, понад 30 реалізованих проектів. Розробка ведеться під ключ з наданням вихідників та документації. Гарантуємо відповідність параметрів матеріалів під ваше AR-оточення. Отримайте консультацію інженера вже сьогодні.






