Проектирование 3D-графики интерфейсов (Diegetic UI) для AR VR игр
Screen-space UI в VR — это боль. Canvas в Overlay или Screen Space Camera режиме рендерит поверх всей сцены, не участвует в стереопроекции нормально, вызывает конфликт глубины у части пользователей. Классический HUD с полосой HP в углу экрана в VR читается как наклейка на стекле гарнитуры — и разрушает иммерсию за секунды.
Diegetic UI решает это радикально: интерфейс становится частью мира. Здоровье показывается на дисплее оружия, карта — на наручном устройстве персонажа, диалоговые варианты всплывают как голограммы перед NPC. Всё это — объекты в мировом пространстве, имеющие позицию, глубину и физику.
Технические проблемы, которые возникают при переходе на World Space Canvas
В Unity стандартный путь — перевести Canvas в World Space режим и разместить его в сцене. Звучит просто. На практике — несколько граблей.
Читаемость текста при масштабировании. World Space Canvas с TextMeshPro нужно калибровать: при неправильном соотношении Font Size и Canvas Scale текст либо размыт (растризован слишком мелко), либо требует огромного полигонального бюджета для SDF рендеринга на большой площади. В VR текст ещё и читается иначе из-за IPD — нужно тестировать в реальной гарнитуре, а не в Play Mode.
Окклюзия и depth fighting. UI-панель, расположенная в пространстве, конфликтует с геометрией сцены. Нужно либо использовать отдельный слой с кастомным depth write, либо уходить на transparent shader с правильно настроенным Render Queue. Частая ошибка — UI проваливается за стены или мерцает на стыке с поверхностью.
Интерактивность через XR Interaction Toolkit. Стандартный Event System не работает с VR-контроллерами из коробки. Нужно подключать TrackedDeviceGraphicRaycaster вместо стандартного GraphicRaycaster, настраивать XRUIInputModule и прописывать логику hover/select для каждого интерактивного элемента. В XR Interaction Toolkit 2.x это решается через IXRInteractable интерфейс и XRSimpleInteractable на UI-компонентах, но требует явной настройки слоёв взаимодействия.
Как строится 3D-дизайн интерфейса
Прежде всего — арт-дирекшен. Diegetic UI должен органично вписываться в мир игры. Sci-fi шутер, фэнтезийная RPG и медицинский VR-тренажёр требуют принципиально разной визуальной логики.
Проектирование начинается с информационной архитектуры: что игрок должен видеть всегда, что — по запросу, что — в определённом контексте. Это определяет расположение UI в пространстве: постоянно видимые элементы крепятся к руке или оружию, контекстные — появляются в мире при взаимодействии с объектами.
Дальше — модельный грейаут в 3D-редакторе (Blender или Maya), с чёткими размерами в метрах. В VR единицы измерения имеют значение: панель 0.3 × 0.2 метра на расстоянии 0.5 метра от игрока — это одно восприятие; та же панель на 1.5 метра — совсем другое.
Финальные ассеты экспортируются в FBX или glTF для импорта в движок. Для интерактивных панелей — отдельные компоненты для hover-состояний, press-анимации, feedback-визуализации.
В AR (через AR Foundation + ARKit/ARCore) логика немного отличается: UI должен корректно якориться к AR-плоскостям или объектам через ARAnchor, учитывать окклюзию реальным миром (если включен depth occlusion), и нормально работать в условиях нестабильного трекинга.
Типичные ошибки при проектировании Diegetic UI
- Слишком мелкий шрифт. В VR минимальный комфортный размер — около 0.5° угловых. При дистанции 0.5 м это примерно 4–5 мм высоты символа в мировых единицах.
- Элементы, расположенные слишком близко к камере (< 0.3 м). Вызывают дискомфорт из-за конфликта вергенции и аккомодации.
- UI без физического feedback. В VR нажатие кнопки без тактильного или визуального отклика ощущается сломанным — даже если технически всё работает.
- Отсутствие state machine для элементов. Кнопка должна иметь явные состояния: Normal, Highlighted, Pressed, Disabled — и анимированные переходы между ними.
Сроки
| Задача | Ориентировочные сроки |
|---|---|
| Дизайн одного UI-блока (наручный интерфейс / панель) | 3–6 рабочих дней |
| Полная система Diegetic UI для одной сцены | 2–4 недели |
| AR Foundation интеграция якорей и окклюзии | 1–2 недели |
Стоимость рассчитывается индивидуально после анализа требований и целевой платформы.





