Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя
Глава разработки и Co-Ceo Black VR/ Эксперт   · 24 дек 2021

Особенности разработки AR-приложений на iOS

Друзья, всем привет! Не так давно мы говорили о том, с чего вообще начинать разработку AR-приложений новичку, коротко прошлись по характеристикам Android и iOS в качестве платформ для разработки приложений в дополненной реальности, а также обсудили преимущества и недостатки каждой.
Сегодня мы продолжаем эту тему, а именно: углубимся в разработку дополненной реальности на платформе iOS. Почему мы решили разобрать эту тему? Ответ простой: по нашему мнению, разработки Apple всегда клиентоориентированы, и, если на первый взгляд, разработка на этой платформе сложнее, мы уверены в том, что работа приложения не была бы такой стабильной без этих сложностей.
ARKit и RealityKit - что это?
Важно отметить, что разработка приложений происходит не столько на iOS, сколько на специальной платформе - ARKit. Набор инструментов платформы позволяет распознавать габариты окружающего пространства и учитывает характер освещения, чтобы максимально точно вписать AR-контент в реальную жизнь. Кроме этого, на платформе можно работать совместно - это помогает командам разработчиков вносить коллективные решения, а также дает возможность подключить к разработке клиента в режиме зрителя: заказчик может посмотреть, как идет работа и внести свои рекомендации и замечания в режиме реального времени.
Apple также добавила возможность автоматического сохранения прогресса: работа над проектом останется на том этапе, на каком ее закончили. Это экономит время, разработчику не нужно переживать о том, что все придется начинать заново.
Конечно, Apple позаботились и об WebAR: было выпущено специальное расширение Quick Look, которое позволяет просматривать AR-контент вне приложений: эта технология использует 3D-модели в особом формате - он позволяет объединять несколько объектов, например, изображение, текст и 3D-модель в единый файл. Формат файла представляет собой незашифрованный ZIP-файл, который можно создать с помощью инструментов платформе на языке Phyton. Файл открывается через браузер Safari, а также через почту, заметки или сообщения. Всего за 1 клик пользователь получает доступ к AR-контенту, и задействовать отдельное приложение в этом случае нет необходимости.
Если дать общую оценку, то компания Apple всеми усилиями расширяет возможности платформы ARKit, чтобы сделать дополненную реальность максимально доступной и удобной для использования. Объекты дополненной реальности калибруются под реальную среду, приобретая черты осязаемого объекта - накладывание теней и бликов от расположенных рядом реальных предметов дает эффект смешения реального и виртуального миров.
На первый взгляд кажется, что разработка в ARKit очень проста. И, тем не менее, важно отметить, что платформа никак не отвечает за загрузку и рендеринг загружаемых 3D-моделей. Ранее эти две функции выполнял SceneKit, но на данный момент он уже не справляется с требованиями нынешних AR-приложений.
Apple выпустила RealityKit, и именно о нем мы сейчас поговорим. Этот фреймворк позволяет реализовывать высокопроизводительные трехмерные симуляции и их физическую визуализацию для плавной интеграции виртуальных объектов в реальный мир. Он отлично интегрируется для Swift и Metal, кроме этого, есть ряд других преимуществ, благодаря которым данный фреймворк “вытеснил” своего предшественника.
Преимущества RealityKit
  • Полная интеграция с приложением для прототипирования - Reality Composer. Фреймворк поддерживает оба формата .rcproject и .reality, а также .usdz, который используется для AR-контента в вебе.
  • Фреймворк использует значительно меньше шаблонного кода для построения динамики и анимации, чем SceneKit.
  • Поддержка LiDAR-сканнера реализована с помощью ARView - класса RealityKit.
  • RealityKit включает в себя “все необходимое” для AR-приложений нового поколения - Occlusion и Video материалы, якоря AnchorEntity, эффекты камеры, например, Motion Blur, Grain, Raytraced-тени, пространственный звук и множество других элементов.
Конечно, у фреймворка есть и свои недостатки, вроде отсутствия системы частиц, неспособности создавать модели из вершин и других нюансов, но его развитие также не стоит на месте, и Apple делает все, чтобы дать пользователю максимум возможностей.
ARKit тесно взаимосвязан с RealityKit, так как модуль значительно упрощает опыт дополненной реальности, беря на себя тяжелую работу по сети, например, поддержание согласованного состояния, оптимизацию трафика, обработку потерь пакетов или передачу прав собственности.
В дальнейшем мы расскажем, как ARKit реализует себя в бизнесе, но уже в следующей статье вас ждут особенности разработки на Android, и почему многие начинают путь разработчика AR-приложений именно с этой платформы.
Apple+4