Реализация AR-примерки очков и аксессуаров

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Услуги, которые мы предлагаем
Показано 1 из 1Все 1735 услуг
Реализация AR-примерки очков и аксессуаров
Сложный
~1-2 недели
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    495

Реализация AR-примерки очков и аксессуаров

Очки — один из лучших кандидатов для AR-примерки: объект имеет фиксированную форму, крепится к конкретным точкам лица (переносица, уши) и не требует деформации mesh под тело. Но «хорошо сидящие» очки в AR — это правильный pivot, корректный масштаб под IPD пользователя и стабильная анимация при движении головы. Без этих деталей примерка раздражает, а не помогает.

ARKit Face Tracking как основа

ARFaceTrackingConfiguration — единственный вариант для face AR на iOS. Требует iPhone X или новее (TrueDepth камера). Возвращает ARFaceAnchor с:

  • transform — позиция и ориентация лица в мировых координатах
  • geometry — 1220-точечная сетка лица
  • blendShapes — 52 коэффициента для выражений (моргание, улыбка, подъём бровей)

Для очков используем конкретные точки face mesh: переносица (~vertex 9 в ARKit mesh), виски. Pivot point модели очков — строго на переносице. При правильном pivot оправа «сидит» на лице без дополнительных корректировок позиции.

// Привязываем модель очков к face anchor
let faceAnchorEntity = AnchorEntity(.face)
let glassesEntity = try! ModelEntity.load(named: "glasses.usdz")
glassesEntity.position = SIMD3(0, 0.005, 0.065) // тонкая корректировка Y, Z
faceAnchorEntity.addChild(glassesEntity)
arView.scene.addAnchor(faceAnchorEntity)

Масштабирование под реальный размер лица

Стандартная модель очков в USDZ — для «среднего» лица. Реальные лица разные. Два подхода:

Автоматический. Измеряем ширину лица через расстояние между левым и правым ухом в ARFaceAnchor.geometry. ARKit дает эти точки в метрах — сравниваем с эталонной шириной оправы, вычисляем коэффициент масштабирования. Применяем к ModelEntity.scale.

Ручной. Ползунок «размер» в UI. Проще в реализации, хуже UX.

Расстояние между зрачками (IPD) через eye tracking доступно на iPad Pro (ARKit, ARFaceAnchor.leftEyeTransform, rightEyeTransform). На iPhone face tracking IPD напрямую не измеряется, но вычисляется приблизительно через face geometry.

Наушники, серьги, головные уборы

Те же принципы, другие anchor-точки:

Наушники/серьгиleftEarTransform, rightEarTransform из ARFaceAnchor. ARKit предоставляет эти трансформы напрямую.

Головные уборыARFaceAnchor.transform (центр головы) + смещение по Y вверх. Требует учёта наклона головы — иначе шапка «едет» при запрокидывании головы.

Солнцезащитные очки с линзами. Линзы с tinted/gradient материалом — через PBR с transmission и tint color. В RealityKit — .PhysicallyBasedMaterial с opacityThreshold и blending. Зеркальные линзы — environment texture reflection.

Android: лицевой трекинг без TrueDepth

ARCore AugmentedFace (Pixel 3+, Samsung Galaxy S10+, другие с depth sensor) — аналог ARKit face tracking, но с меньшей точностью mesh (468 точек MediaPipe vs 1220 ARKit). Для очков достаточно — ключевые точки переносицы и висков стабильны.

Устройства без depth sensor: MediaPipe Face Landmark через ML Kit. Работает на RGB-камере, точность ниже на движении, но для статичного кадра — приемлемо.

Производительность и Memory

На iPhone старше XR одновременный face tracking + высокополигональная модель + environment texturing даёт нагрузку на GPU. Металлические оправы с reflection требуют environment probe — это дополнительные draw calls.

Оптимизация: LOD (level of detail) для очков — полная модель при статичном кадре, упрощённая при движении. Текстуры 512×512 для мелких деталей оправы — достаточно для мобильного экрана.

Сроки

Face tracking + базовая AR-примерка одной модели очков — 5-7 дней. Галерея оправ, масштабирование под лицо, шаринг — 2-3 недели. Поддержка Android через ARCore AugmentedFace — плюс 1 неделя. Стоимость рассчитывается индивидуально.