Пайплайн 3D-моделей для мобильной AR: конвертация CAD в USDZ и GLB

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

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

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

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

Услуги, которые мы предлагаем
Показано 1 из 1Все 1734 услуг
Пайплайн 3D-моделей для мобильной AR: конвертация CAD в USDZ и GLB
Средний
~3-5 дней
Часто задаваемые вопросы

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

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

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

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    859
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    746
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1162
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    1035
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    969
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    563

Пайплайн создания 3D-моделей для мобильной AR

Клиенты часто приносят STEP-файл дивана от поставщика, ожидая, что через час он появится в AR-каталоге. Реальность: миллионы полигонов, отсутствие UV-развёртки, неправильный масштаб — модель не работает ни в ARKit, ни в ARCore. Наш пайплайн решает эту проблему на каждом этапе: от импорта CAD до финального USDZ или GLB, стабильно держащего 60 FPS на iPhone 12 и Samsung S21. За 5+ лет мы выполнили более 50 проектов для ритейла, мебельных брендов и промышленности. Гарантируем, что каждая модель проходит тест на реальных устройствах перед сдачей.

Технические требования к AR-модели

Полигонаж. Для мобильного AR — не более 50 000–100 000 полигонов на объект. Сцена с несколькими объектами: суммарно до 300 000. Выше — FPS проседает на устройствах без PRO-чипа. Для простых объектов (коробка, стакан) — 500–3000 полигонов.

В ARKit Best Practices указано: «Для обеспечения плавного AR-взаимодействия используйте модели с числом полигонов не более 100 000».

Текстуры. Максимальный размер — 2048×2048 пикселей. Для маленьких объектов — 1024×1024. Форматы:

  • iOS/USDZ: PNG или JPEG для diffuse, отдельные карты для normal, roughness, metallic
  • Android/GLB: предпочтительно JPEG для diffuse (меньше размер), PNG для прозрачности

UV-развёртка. Без перекрытий, без растяжений. Для AR особенно важно: модель рассматривают вблизи, артефакты UV заметны.

Масштаб. 1 единица = 1 метр. Обязательно для корректного отображения в ARKit/ARCore. Диван шириной 2.2 метра — это 2.2 юнита в сцене. Проверяем размеры в Blender через N-панель перед экспортом.

Pivot point: точка вращения и размещения — в центре основания объекта для мебели, в геометрическом центре для остальных. ARKit ставит модель relative to pivot — если pivot не там, объект «плавает» над полом.

Как оптимизировать CAD-модель для AR?

CAD-файлы от производителей содержат миллионы полигонов — прямой импорт в AR даёт 2 FPS. Мы конвертируем их по такому пайплайну:

  1. Импорт STEP в FreeCAD или Fusion 360
  2. Экспорт в OBJ/FBX
  3. Ретопология в Blender (автоматическая через Remesh modifier, ручная для важных деталей)
  4. UV и текстурирование
  5. Экспорт в USDZ/GLB

Ретопология в Blender в 3 раза быстрее, чем вручную в Maya, благодаря Remesh-модификатору с адаптивным разрешением. Для сложной органики используем ZBrush с последующей ретопологией.

Пайплайн создания AR-модели

Референсы → Low Poly моделирование → UV → Текстурирование → Оптимизация → Экспорт

Работаем преимущественно в Blender (бесплатный, мощный, есть Python API для автоматизации). Для органики — ZBrush с ретопологией в Blender. Текстуры — Substance Painter для PBR-материалов.

Оптимизация геометрии: Decimate modifier в Blender с контролем качества — убираем полигоны, которые не видны при нормальном ракурсе. Для круглых объектов (вазы, колёса) — шейдинг через normal map, а не геометрию: 16-угольник с нормалью выглядит как цилиндр, но полигонов в 5 раз меньше.

Baking. Если источник — высокополигональная модель (фотограмметрия, CAD-импорт), запекаем normal map, ambient occlusion, curvature в Substance Painter. Это даёт детализацию высокополигональной модели при полигонаже низкополигональной.

Развернуть технические детали ретопологии Для ретопологии используем Quad Remesher 1.2 в Blender с target poly count 50 000. После ретопологии обязательно проверяем UV и перезапекаем normal map. Время ретопологии: 2–4 часа для средней сложности объекта.

Экспорт в AR-форматы

Для iOS: USDZ — ZIP-архив с USD-файлами и текстурами. Экспортируем через xcrun usdz_converter или Python USD. Текстуры внутри USDZ должны быть PNG, если нужна прозрачность. Размер оптимизируем через TextureConverter сжатием ASTC.

Для Android: GLB с Draco-сжатием. Используем gltf-pipeline:

gltf-pipeline -i model.glb -o model_compressed.glb --draco.compressionLevel 7

Уменьшает размер геометрии на 60–80%, без заметной потери качества.

При экспорте важно выставить правильную сцену: ось Y вверх, метры, forward Z, как рекомендует RealityKit. Иначе модель будет отображаться с поворотом.

Почему важно правильное UV-развёртывание?

UV-развёртка — основа реалистичной текстуры в AR. Если она с перекрытиями или растяжениями, модель при ближайшем рассмотрении выглядит неестественно. Мы всегда делаем UV-развёртку с учётом масштаба: для мебели — 1 метр = 1 юнит в UV-пространстве. Это гарантирует одинаковую чёткость текстуры на всех объектах сцены.

Сроки

Тип объекта Сложность Сроки
Простой объект (коробка, бутылка) Низкая 1–2 дня
Мебель / бытовая техника Средняя 2–5 дней
Сложный механизм / транспорт Высокая 1–3 недели
Персонаж без анимации Высокая 1–2 недели

Сравнение форматов USDZ и GLB

Параметр USDZ (iOS) GLB (Android)
Сжатие ASTC для текстур Draco для геометрии
Прозрачность PNG PNG через KHR_materials_transmission
Максимальный размер Не ограничен, но >50 MB влияет на загрузку Рекомендуется <20 MB для быстрой загрузки
Инструменты Xcode, Reality Composer Blender, glTF Validator

Стоимость рассчитывается после оценки референсов и требуемого качества текстур. Пакетная работа (10+ моделей) — по отдельному тарифу. Для оценки вашего проекта отправьте референсы — получите точную стоимость и сроки.

Что входит в работу

  • Консультация по референсам и техническому заданию
  • 3D-модель в форматах USDZ и GLB
  • Исходные файлы Blender
  • PBR-текстуры (diffuse, normal, roughness, metallic)
  • Инструкция по интеграции в ARKit и ARCore
  • Тест модели на реальных устройствах (iPhone, Samsung)
  • Гарантия: если модель не проходит проверку FPS, дорабатываем бесплатно

Оценим ваш проект за 1 день. Получите консультацию — просто напишите нам.

Мы разрабатываем AR-приложения на ARKit и ARCore, которые работают стабильно даже в сложных условиях. Наш опыт — 7+ лет в мобильной разработке и 30+ реализованных проектов с дополненной реальностью. Гарантируем: трекинг не потеряется, освещение будет реалистичным, а пользователь не почувствует дискомфорта. Сертифицированные разработчики Apple и Google.

Почему трекинг теряется и как это исправить?

ARKit и ARCore используют VIO (Visual-Inertial Odometry) — совместную обработку данных камеры и IMU. Трекинг срывается в трёх сценариях: освещение ниже ~50 lux, текстурно однородные поверхности (белая стена, стекло) и быстрые движения камеры.

На практике это значит: если продукт предназначен для примерки мебели, добавляем явное UI-предупреждение при ARCamera.TrackingState.limited(.insufficientFeatures). Приложение, которое молча теряет трекинг, получает 2-звёздочные отзывы — мы такое не допускаем.

Обнаружение плоскостей настраивается через ARWorldTrackingConfiguration.planeDetection = [.horizontal, .vertical]. Важно: ARKit продолжает уточнять геометрию плоскостей через ARSCNViewDelegate.renderer(_:didUpdate:for:) — если не обрабатывать обновления, объект начинает плавать при уточнении якоря. Наша команда решает эту проблему на этапе архитектуры, а не при тестировании.

AR Foundation: кросс-платформа с нюансами

Unity AR Foundation — слой абстракции поверх ARKit и ARCore. Он сокращает время разработки на 40% по сравнению с раздельными нативными кодовыми базами. Но некоторые функции (например, ARBodyTrackingConfiguration для body tracking) недоступны и требуют нативного плагина.

Для React Native и Flutter прямой AR Foundation отсутствует. Используем ViroReact (React Native) или ar_flutter_plugin для простых сценариев, но для production-качества — нативные модули с мостом. Гибридный подход: AR-сцена рендерится нативным ARKit/ARCore view, управление из JS/Dart через method channel. Входит в нашу стандартную поставку.

Задача iOS Android Кросс-платформа
Plane detection ARKit ARCore AR Foundation, Unity
Face tracking ARKit (TrueDepth) ARCore Augmented Faces Banuba, Snap Camera Kit
Image tracking ARKit (Vision) ARCore Augmented Images AR Foundation
Object detection ARKit 3D Object Scanning ARCore нет единого SDK
Persistence (сохранение якорей) ARKit World Map ARCore Cloud Anchors

Сравнение платформ: ARKit опережает ARCore по стабильности трекинга и набору функций (на 30% меньше сбоев в сценариях с низким освещением), но AR Core дешевле в поддержке устройств. AR Foundation — компромисс: теряет до 20% производительности на сложных сценах, но окупается единой кодовой базой.

Try-on: примерка товаров через AR

Примерка очков, украшений, косметики — отдельный класс задач. Здесь нужен face tracking, а не plane detection.

ARKit предоставляет ARFaceTrackingConfiguration — 52 blend shape коэффициента для мимики, 3D-меш лица, позиция и ориентация в пространстве. Работает только на устройствах с TrueDepth-камерой (iPhone с Face ID).

Для Android эквивалент — ML Kit Face Mesh Detection или Google ARCore Augmented Faces (Pixel и некоторые флагманы). Для кросс-платформенного try-on используем Banuba Face AR SDK (Banuba Face AR SDK documentation) — покрывает оба устройства, даёт готовые маски и стабильный трекинг даже на mid-range Android.

Качество try-on критически зависит от 3D-моделей товаров. Модели должны быть оптимизированы под real-time: не более 10-15K полигонов для украшений, PBR-материалы с корректными roughness/metallic картами, LOD для дальних дистанций. В рамках нашего подряда мы предоставляем готовые гайды по оптимизации моделей.

Как добиться реалистичного освещения в AR?

ARKit с современными версиями iOS поддерживает Environmental Texturing — автоматическое создание environment map из камеры для реалистичных отражений. Включается через ARWorldTrackingConfiguration.environmentTexturing = .automatic. Без этого металлические и стеклянные материалы выглядят пластиково.

ARCore предоставляет Light Estimation — intensity и color temperature окружающего света, применяемые к шейдеру виртуальных объектов. На практике это разница между объектом, который «вписывается» в сцену, и очевидно наложенной 3D-моделью. Мы гарантируем, что финальное изображение не выдаёт виртуальности.

Что входит в работу

  • Архитектура AR-решения (выбор стека, проектирование модулей)
  • 3D-пайплайн: оптимизация моделей под real-time, PBR-материалы, LOD
  • Интеграция трекинга (плоскости, лица, изображения, объекты)
  • Тестирование на 10+ реальных устройствах (iOS и Android)
  • Документация по использованию SDK и готовых компонентов
  • Поддержка после запуска (1 месяц баг-фиксинга)

Сроки и оценка

Простая AR-сцена с размещением одной 3D-модели на плоскости — 1–2 недели. Face try-on с каталогом товаров — от 6 недель (3D-пайплайн, интеграция трекинга, UI выбора и сохранения). Полноценный AR-шоппинг с облачными якорями и мультиплеером — от 3 месяцев. Оценим проект за 1 день — пишите, обсудим вашу AR-идею.