Apple работает над дополненной реальностью в течение последних нескольких лет, и в этом году на WWDC18 Apple выпустила свою последнюю версию своей платформы AR: ARKit 2. В этом году релиз полон новых функций, и в этой статье мы посмотрим, что нового в ARKit 2.
С одного взгляда
Прежде чем мы углубимся в изменения, давайте немного рассмотрим, что собой представляет ARKit. ARKit — это платформа, которая позволяет разработчикам создавать приложения с дополненной реальностью для устройств iOS. С этой платформой разработчикам больше не нужно дорогое оборудование для реалистичной AR, вместо этого им просто нужна встроенная камера их устройства iOS.
Как это работает?
Поскольку ARKit работает только с использованием встроенной камеры и датчиков вашего устройства iOS, ему требуется сложное программное обеспечение, чтобы виртуальные объекты выглядели реалистично на сцене. Он использует обнаружение горизонтальной плоскости, характерные точки и оценку освещенности, чтобы придать виртуальным объектам реалистичные характеристики.
Какие датчики он использует?
ARKit разработан Apple, поэтому, очевидно, он работает на их устройствах — точнее, на устройствах iOS. Эти мобильные устройства содержат определенные датчики, которые ARKit использует в полной мере при размещении объектов в реальном мире. На устройствах iOS можно найти встроенный акселерометр и камеру, и ARKit использует комбинацию этих двух компонентов для дополненной реальности.
1. Постоянные карты мира
Состояние сеанса на карте мира включает в себя осведомленность ARKit о физическом пространстве, в котором пользователь перемещает устройство (которое ARKit использует для определения положения и ориентации устройства), а также любые объекты ARAnchor, добавленные в сеанс (которые могут представлять обнаруженные реальные мир функций или виртуальный контент, размещенный вашим приложением). — Документация Apple
Согласно определению Apple, карта мира включает в себя якоря, объекты и другие функции, которые ARKit использует, чтобы оставаться в курсе пространства вокруг пользователя. В текущей версии ARKit эти карты создаются в начале сеанса и удаляются в конце.
ARKit 2 дает возможность сохранять эти карты мира, что открывает возможность делиться этим опытом с другими или сохранять их для использования в том же приложении позже.
Хранимые Карты
Постоянные карты мира означают, что вы можете сохранить прогресс пользователя и позволить ему быстро вернуться обратно туда, где он остановился. Это открывает такие возможности, как игры по созданию блоков, в которых пользователь завершает игру серией шагов или уровней, а не только за один сеанс.
Многопользовательский опыт
Благодаря возможности хранить и обмениваться картами мира два устройства могут отслеживать одну и ту же карту мира, что обеспечивает многопользовательские игры и другие возможности совместного использования дополненной реальности. Например, вы можете поиграть в виртуальную игру, разбивающую башни, с несколькими устройствами.
2. Текстурирование среды
Текстуры окружения — это текстуры кубической карты, которые отображают вид во всех направлениях от определенной точки сцены. При рендеринге 3D-ресурсов текстуры окружающей среды являются основой для алгоритмов освещения на основе изображений, в которых поверхности могут реально отражать свет от окружающей среды. ARKit может генерировать текстуры среды во время сеанса AR с использованием изображений с камеры, что позволяет SceneKit или пользовательскому механизму рендеринга обеспечить реалистичное освещение на основе изображений для виртуальных объектов в вашем опыте AR. — Документация Apple
При использовании дополненной реальности важно, чтобы объекты сливались с окружающей их средой. В первой версии ARKit такие функции, как обнаружение окружающего света, пытались заставить виртуальный объект «вписаться» в сцену.
ARKit 2 позволяет объектам отражать текстуры вокруг них. Например, если блестящий виртуальный шарик находится рядом с блюдом с фруктами, вы сможете увидеть отражение этого фрукта на шарике, и освещение виртуальных объектов больше не ставится, а вместо этого основано на изображении.
3. Распознавание 3D объектов
Одним из способов создания впечатляющих впечатлений от AR является распознавание особенностей среды пользователя и использование их для запуска появления виртуального контента. Например, музейное приложение может добавить интерактивные 3D-визуализации, когда пользователь направляет свое устройство на отображаемую скульптуру или артефакт ( документация Apple).
Трехмерные объекты лежат в основе ARKit, не так ли? Последняя версия этого фреймворка приносит то, что раньше было невозможно: возможность сканировать и распознавать эти объекты.
Экспонаты музея
ARKit 2 открывает возможность для музеев или подобных организаций «сканировать» свои экспонаты и позволяет информационным панелям появляться над статуей. Это может сэкономить ценное пространство, устраняя физические информационные табло и позволяя быстро обновлять информацию.
Фигурки
Энтузиасты фигурок могут сканировать свою коллекцию, чтобы вводить информацию или воплощать свои фигурки в жизнь. На WWDC18 мы увидели приложение LEGO, позволяющее оживить наборы LEGO и обеспечить многопользовательский опыт.
4. Отслеживание лица
Конфигурация отслеживания лица обнаруживает лицо пользователя, если смотреть на фронтальную камеру устройства. При запуске этой конфигурации сеанс AR обнаруживает лицо пользователя (если оно видно на изображении с фронтальной камеры) и добавляет в свой список привязок объект ARFaceAnchor, представляющий лицо. Каждая привязка лица предоставляет информацию о положении лица и его ориентации, его топологии и функциях, которые описывают выражения лица. — Документация Apple
С представлением iPhone X мы впервые увидели Face ID и Animoji на платформах iOS, а во время WWDC18 Apple расширила эту возможность и добавила более базовую версию распознавания лиц, используя только камеру (Face ID использует ИК-точку проектор тоже).
В ARKit 2 можно определить положение лица в пространстве, форму и выражение лица. Эта информация может использоваться для создания «умных фильтров» или других приложений, которые используют лицо.
5. Формат файла USDZ
Apple представляет новый открытый формат файлов, usdz, который оптимизирован для совместного использования в таких приложениях, как «Сообщения», «Safari», «Почта», «Файлы и новости», сохраняя при этом мощные графические и анимационные функции. С помощью usdz Quick Look for AR также позволяет пользователям размещать трехмерные объекты в реальном мире, чтобы увидеть, как что-то будет работать в пространстве. — Документация Apple
В сотрудничестве с Pixar компания Apple представила новый формат файлов для 3D-объектов в ARKit 2. Это позволяет совместно использовать эти виртуальные объекты в одном открытом компактном формате с другими и даже может быть встроен в веб-страницы.
Беглый взгляд
На веб-сайтах, в текстовых сообщениях или электронных письмах файлы USDZ можно обмениваться и мгновенно размещать в реальном мире для предварительного просмотра и демонстрации 3D-объектов нажатием кнопки «Быстрый просмотр» в iOS 12.
Создание файлов
Эти файлы USDZ могут быть легко созданы с использованием популярных программ, таких как Adobe Creative Cloud, Autodesk и Sketchfab. Эти компании представили использование своего программного обеспечения с этим новым форматом файлов во время WWDC18.
Вывод
Как вы можете видеть, Apple внесла несколько улучшений в платформу ARKit, как внутри, так и на уровне пользовательских функций, которые могут понравиться разработчикам и пользователям.
Оставайтесь с нами на Envato Tuts +, чтобы узнать больше об этих темах. В то же время, проверьте ссылки на документацию для каждой из функций, упомянутых в этих статьях, и попробуйте сами!