Ещё несколько лет назад 3D-сканирование означало отдельный сканер размером с микроволновку и программы дороже самого железа. Сегодня iPhone с датчиком LiDAR и Object Capture от Apple собирает пригодную к работе 3D-модель из пары десятков снимков.
Функция 3D-сканирования в NFC.cool Tools упаковывает всю эту цепочку в карманный процесс.
Что на самом деле происходит
Вместе работают две технологии:
Фотограмметрия. Приложение снимает несколько десятков фотографий предмета с разных сторон. Движок фотограмметрии (на iOS это Object Capture от Apple) находит на снимках совпадающие детали и по ним строит трёхмерную сетку.
LiDAR. На iPhone с датчиком LiDAR (модели Pro начиная с iPhone 12) к каждому кадру добавляются замеры глубины с самого датчика. Сетка от этого выигрывает сразу вдвойне: масштаб получается точным, то есть модель совпадает с реальным размером, а поверхности без явных визуальных деталей (гладкая белая стена, глянцевый изгиб) обретают вменяемую геометрию там, где одна фотограмметрия сдалась бы.
Думать об этих шагах не нужно: приложение проведёт по съёмке, а потом само соберёт модель прямо на устройстве.
Как снять хороший скан
Несколько практических правил:
Обходи предмет медленно. Приложение ждёт более или менее непрерывного покрытия. Не прыгай с одной стороны сразу на противоположную, а обойди кругом.
Держи предмет в кадре. Небольшой запас вокруг предмета это нормально, а вот срезанные края теряют данные.
Ровный свет. Жёсткие тени сбивают этап фотограмметрии. Рассеянный свет (открытое небо, софтбокс, дневной свет в помещении) даёт самую чистую сетку.
Фактурные предметы сканируются лучше гладких. Кружка с рисунком снимается почти идеально. С полированным металлическим шаром всё по-настоящему сложно. LiDAR тут помогает, но полностью не спасает.
На каждом ракурсе задержись на секунду. Смаз съедает детали.
Съёмка занимает от двадцати до сорока секунд ходьбы, а потом ещё от тридцати до шестидесяти секунд на обработку.
Форматы экспорта
NFC.cool Tools выгружает в те форматы, которые реально нужны дальше:
.stl для 3D-принтеров. Его принимают слайсеры Bambu Studio, Cura и PrusaSlicer.
.obj универсальный 3D-формат. Открывается в Blender, Cinema 4D, Unity, Unreal и почти в любом редакторе.
.ply формат сетки, который сохраняет цвета вершин: пригодится, когда фактура важнее материалов с развёрткой.
.usdz формат дополненной реальности от Apple. Кладётся в Quick Look, в AR Quick Look или в RealityKit.
.abc (Alembic) для анимационных цепочек.
.usd Universal Scene Description, его понимает большинство современных редакторов.
Модель при этом одна и та же. Формат лишь решает, какой инструмент дальше сможет её открыть.
Что делать с результатом
Самое интересное, что я видел у пользователей:
Напечатать копию в единственном экземпляре. Отсканировал найденный предмет, нарезал, напечатал.
Задокументировать реальный объект. Опись имущества, музейный каталог, «а как вообще выглядит бабушкина ваза».
Показать в дополненной реальности. Отправь файл .usdz человеку с iPhone, он нажмёт на него и увидит предмет в своей гостиной через AR Quick Look.
Закинуть в игровой движок. Реальный предмет в сцене Unity, смоделированный за полторы минуты и без 3D-художника.
Когда это работает, а когда нет
Фотограмметрия вместе с LiDAR хороши на:
плотных непрозрачных предметах
фактурных поверхностях и поверхностях с рисунком
статичных объектах, то есть на всём, что не двигается во время съёмки
Плохо идут:
прозрачные и преломляющие предметы (стекло, вода, линзы)
сильно бликующий металл
очень тонкие детали (кабели, проволока, волосы)
всё, что шевелится
На том, что ей подходит, эта связка даёт по-настоящему полезный результат, а не игрушку. На остальном готовься чистить сетку в Blender или принимать ограничения.
3D-сканирование входит в NFC.cool Tools для iPhone. Object Capture от Apple требует датчика LiDAR, поэтому работает на iPhone серии Pro (iPhone 12 Pro и новее) и на iPad Pro (2020 года и новее).