При попытке загрузить 3D-модель из Blender в ARKit вы получаете ошибку «Unsupported file format» — знакомая ситуация для многих iOS-разработчиков. Наша команда уже более пяти лет занимается конвертацией моделей в USDZ и знает все подводные камни. Мы гарантируем совместимость с Quick Look и RealityKit, экономя ваше время и нервы. За годы работы мы обработали более 3000 моделей, сократив время конвертации в среднем на 70% для клиентов. Например, автоматизация пайплайна для мебельного каталога из 300 SKU позволила сэкономить значительную сумму на ручной обработке. Каждая модель проходит тройную валидацию перед отправкой заказчику. Получите консультацию — мы поможем интегрировать AR в ваш продукт без головной боли.
Формат USDZ: особенности и требования
USDZ — это ZIP-архив с USD-файлами (Universal Scene Description от Pixar) и текстурами. Apple адаптировала USD для мобильных устройств, ограничив поддерживаемые шейдеры, форматы текстур и типы анимации. Совместимый USDZ для iOS работает через UsdPreviewSurface — стандартный PBR-шейдер. Параметры:
-
diffuseColor— базовый цвет или текстура -
roughness/metallic— PBR-параметры (0.0–1.0) -
normal— карта нормалей -
opacity/opacityThreshold— прозрачность
Всё, что выходит за эти параметры (process-based шейдеры, node graphs), в Quick Look не отображается. Как указано в документации Pixar, единица измерения в USD — сантиметры, но ARKit ожидает метры — это критично при ручной сборке.
Основные проблемы при конвертации
FBX/OBJ → USDZ
Самый частый путь от поставщика. reality-converter (GUI) или xcrun usdz_converter (CLI) от Apple:
xcrun usdz_converter model.obj model.usdz \
-color_map diffuse.png \
-normal_map normal.png \
-roughness_map roughness.png \
-metallic_map metallic.png
Проблема: usdz_converter не принимает FBX с анимацией корректно. FBX с анимацией лучше конвертировать через reality-converter или через Blender промежуточный экспорт в USD:
FBX → (Blender) → USD → (usdzip) → USDZ
Blender → USDZ
Blender 3.0+ имеет встроенный USD-экспортёр, но с оговорками: Custom Properties, Driver-анимации, модификаторы не экспортируются. Перед экспортом: применяем все модификаторы (Apply All Modifiers), запекаем анимацию (Bake Action), конвертируем материалы в Principled BSDF (он маппится в UsdPreviewSurface).
Текстуры и масштаб
USDZ принимает PNG и JPEG внутри архива. Blender часто экспортирует текстуры с именами, содержащими пробелы или спецсимволы — USD-парсер iOS их не находит. Правило: только латиница, без пробелов, без скобок в именах файлов текстур. Масштаб: в USD по умолчанию сантиметры, при конвертации через usdz_converter metersPerUnit устанавливается автоматически. При ручной сборке USD — нужно явно задать:
stage.SetMetadata('metersPerUnit', 1.0)
Почему важны PBR-материалы?
Quick Look строго требует UsdPreviewSurface. Любые отклонения — и модель отображается белым прямоугольником. Мы нормализуем материалы на этапе экспорта, заменяя сложные нодовые схемы на стандартные PBR-параметры. Это увеличивает успешную конвертацию с 60% до 98%.
Как автоматизировать конвертацию для больших каталогов?
При объёме в 50–500 моделей автоматизация через Python USD API:
from pxr import Usd, UsdGeom, UsdShade, Sdf
import zipfile
# Скрипт: читаем FBX через Blender API → экспортируем USD → пакуем в USDZ
# Валидируем каждый файл через usdchecker
# Загружаем на S3/CDN
Среднее время автоматической конвертации: 30–120 секунд на модель в зависимости от сложности. На CI/CD: GitHub Actions с macOS runner (нужен macOS для usdz_converter). Вы экономите до 80% времени по сравнению с ручной конвертацией. Свяжитесь с нами для настройки пайплайна.
Сколько времени занимает конвертация?
| Тип задачи | Время |
|---|---|
| Ручная конвертация 1–10 моделей | 1–3 дня |
| Настройка автоматического пайплайна | 1–2 недели |
| Пакетная обработка 100+ моделей с валидацией | 2–4 недели |
Тестирование на реальном устройстве
После конвертации — обязательная проверка:
- Quick Look на реальном iPhone — самый быстрый способ. Отправляем файл через AirDrop или email, нажимаем «Посмотреть в AR». Если не работает — проблема с форматом.
- Reality Composer Pro (Xcode 15+) — показывает сцену, ошибки материалов, иерархию объектов.
- usdchecker — CLI-утилита от Pixar USD library:
usdchecker model.usdz
Выдаёт ошибки валидации: неподдерживаемые шейдеры, неверный масштаб, отсутствующие текстуры.
Кейс: конвертация 300 SKU для мебельного каталога
Наш клиент — поставщик мебели с 300 SKU в формате FBX от разных дизайн-студий. Проблемы: разный масштаб, разные naming conventions для текстур, часть без UV-развёртки. Мы написали нормализатор на Blender Python:
- Загружаем FBX
- Проверяем масштаб (bounding box) против спецификации товара из CSV
- Нормализуем до метрических единиц
- Применяем модификаторы, конвертируем материалы в
Principled BSDF - Экспортируем USD, пакуем в USDZ через
usdzip - Запускаем
usdchecker, логируем ошибки
Из 300 моделей 47 требовали ручного вмешательства: неправильная UV, сложные кастомные шейдеры, отсутствующие текстуры. Опыт нашей команды (более 50 выполненных проектов) позволяет минимизировать такие сюрпризы. Экономия бюджета клиента составила значительную сумму за счёт автоматизации.
Сроки и стоимость
| Объём | Сроки |
|---|---|
| Конвертация 1–10 моделей вручную | 1–3 дня |
| Настройка автоматического пайплайна конвертации | 1–2 недели |
| Пакетная обработка 100+ моделей с валидацией | 2–4 недели |
Стоимость рассчитывается в зависимости от исходных форматов, качества моделей и требуемого уровня автоматизации. Получите консультацию для точной оценки вашего проекта.
Что входит в услугу
- Анализ исходных моделей и спецификаций
- Конвертация в USDZ с нормализацией материалов и анимаций
- Валидация через usdchecker и тестирование на реальном устройстве
- Автоматизация пайплайна (при необходимости)
- Документация по использованию и рекомендации по интеграции
- Поддержка после сдачи проекта
Свяжитесь с нами — мы поможем интегрировать AR в ваш продукт без головной боли.







