Как начать разработку потрясающих приложений для Apple Vision Pro(visionOS)
Занимаясь iOS разработкой уже достаточно долгое время, обладая практическим опытом в разработке устройств виртуальной реальности (один из лучших прототипов VR-шлемов своё время в РФ), а также собственным инструментом фотограмметрии, на этот раз я был впечатлен новостью, которую так долго ждали — анонсом гарнитуры смешанной реальности Vision Pro от Apple на WWDC2023. Компания представила новую платформу, в основе которой лежат уже знакомые нам современные инструменты iOS-разработки: ARKit, RealityKit и SwiftUI.
Наконец-то все фрагменты AR-пазла сложились воедино и я готов поделиться ссылками на ресурсы и стартовые материалы. Перед тем как приступить к чтению, предлагаю немного представить будущие приложения, которые обязательно изменят мир и принесут из создателям хорошие гонорары. Приготовьтесь погрузиться или добавьте эту статью в закладки (хотя, возможно, вы так и не прочтёте их) .
Введение в пространственные вычисления Apple
Недавно Apple опубликовала подробные учебные материалы и видео для разработчиков устройств смешанной реальности (MR), использующих SDK, доступный с конца июня 2023 года. Теперь вы можете создавать несколько окон, добавлять трёхмерный контент и превращать его в полноценное 3D приложение в VR/AR/MR. Ваше приложение может быть показано рядом с другими объектами в общем пространстве или существовать отдельно в изолированном 3D-пространстве. VisionOS использует такие фреймворки, как SwiftUI, RealityKit и ARKit, чтобы расширить возможности пространственных вычислений и помочь разработчикам создавать погружающие и увлекательные приложения. Вы можете разрабатывать для Vision Pro, используя такие инструменты, как Xcode, Reality Composer Pro и Unity. В ближайшее время Apple выпустит SDK visionOS(xrOS), связанные инструменты и документацию, чтобы обеспечить всестороннюю техническую поддержку разработчикам.
На данный момент Apple предоставляет доступ к большому количеству качественных видеоуроков, например:
Обзор технологий пространственных вычислений
VisionOS(xrOS) предоставляет бесконечное 3D-пространство для создания новых интерактивных сцен и пользовательских опытов. Исследуйте новые инструменты от Apple, такие как Xcode 15 и новый Reality Composer Pro.
VisionOS(xrOS) придает большое значение дизайну доступности, обеспечивая комфорт и удобство взаимодействия для всех пользователей:
Дизайн в visionOS(xrOS)
Разработка приложений, игр и впечатлений для пространственных вычислений в xrOS требует понимания новых элементов и компонентов.
Узнайте, как можете создавать приложения, игры и MR сцены для устройств Vision Pro. Откройте для себя новые возможности ввода и компоненты. Вероятно это ваш первый опыт в создании пространственных впечатлений или вы уже много лет разрабатываете 3D-приложения, с помощью visionOS можно создавать впечатляющие моменты, звуковые пейзажи, человекоориентированный пользовательский интерфейс и многое другое:
Инструменты и среды разработки
Несмотря на то, что многие разработчики для платформы Apple испытывают нелюбовь к XCode (и не без причин) , вы все равно можете начать разрабатывать для visionOS(xrOS) с его помощью, пока не появятся альтернативы. Вам будут показаны способы добавления visionOS к существующим проектам или создания полностью нового приложения, прототипирования в предварительном просмотре Xcode и импортирование контента из Reality Composer Pro. Кроме того, вы можете использовать симулятор xrOS для оценки ваших экспериментов в различных симулированных сценах и условиях освещения. Узнайте, как создавать тесты и визуализации для изучения столкновений, затемнений и понимания сцены для пространственного контента, а также оптимизировать его производительность и эффективность.
SwiftUI и RealityKit
Чтобы извлечь максимум возможностей от visionOS, потребуется освоить SwiftUI и RealityKit. Эти инструменты позволят разработчикам создавать пространственные визуальные эффекты, такие как окна (windows), объемы (volumes) и пространства (spaces) в visionOS. От освоения API 3D-моделей до рендеринга 3D-контента с помощью RealityView, эти углубленные сессии помогут разработчикам создавать интересные визуальные опыты и 3D-сцены:
Reality Composer Pro
Reality Composer Pro — это новый инструмент, предназначенный для предварительного просмотра и подготовки трехмерного контента для приложений для visionOS(xrOS). Он доступен вместе с Xcode и предоставляет возможность импортировать и организовывать ресурсы, такие как трехмерные модели, материалы и звуки. Однако, главное его преимущество заключается в тесной интеграции с процессом сборки в Xcode, что позволяет осуществлять предварительный просмотр и оптимизацию ресурсов visionOS(xrOS).
Разработчики и 3D дизайнеры могут ознакомиться с использованием этого инструмента для создания контента, добавления материалов к объектам и активации контента Reality Composer Pro в Xcode.
Также стоит обратить внимание на последние обновления Universal Scene Description (USD) для платформы Apple. Эти обновления позволяют лучше работать с трехмерными сценами и упрощают взаимодействие с контентом visionOS:
Старт работы в visionOS(xrOS) c Unity
С помощью Unity разработчики могут создавать приложения для visionOS(xrOS) прямо в среде разработки Unity. Они могут использовать свои существующие 3D-сцены и ресурсы для создания приложений или игр для visionOS благодаря глубокой интеграции между Unity и фреймворками Apple. Unity предлагает все преимущества разработки для платформы Apple, включая доступ к нативному вводу и функциям смешанной реальности:
Кроме того, visionOS(xrOS) предоставляет платформу для создания интерактивных сцен в играх и медиа-приложениях. Разработчики могут использовать RealityKit для отображения 3D-контента, исследовать аспекты дизайна визуальных и движущихся элементов, а также научиться использовать Metal или Unity для создания иммерсивных погружающих сцен. Metal предоставляет разработчикам инструменты и возможности для создания впечатляющих визуальных эффектов и обеспечения высокой производительности приложений на платформе visionOS:
SharePlay и разработка приложений для совместного пользовательского опыта
Совместное использование и сотрудничество являются важной составляющей visionOS, предлагая опыт в приложениях и играх, который позволяет пользователям ощущать присутствие друг друга, будто они находятся в одном пространстве. По-умолчанию, пользователи могут делиться окном любого приложения с другими участниками видеозвонка в FaceTime, аналогично функционалу на Mac. C использованием фреймворка Group Activities, вы можете создавать коллаборативные опыты следующего поколения.
Для начала проектирования и разработки SharePlay на Apple Vision Pro рекомендуется изучить типы общих активностей, которые вы можете создавать в своем приложении. Узнайте, как установить общий контекст между участниками вашего опыта и как вы можете поддерживать еще более значимые взаимодействия в вашем приложении. Это позволит пользователям совместно использовать и наслаждаться приложением, обмениваться информацией и взаимодействовать друг с другом в реальном времени:
visionOS + Web
С visionOS веб-контент можно воспринимать совершенно новым образом. Узнайте, как оптимизировать свой веб-сайт для пространственных вычислений, понять модель ввода, применимую к этой платформе, а также использовать функции разработчика Safari для прототипирования и тестирования своих опытов.
Оптимизация веб-сайта для пространственных вычислений включает в себя использование сенсоров и датчиков устройства пользователя для создания интерактивных и захватывающих визуальных эффектов. Разработчики могут узнать, как использовать API пространственной ориентации и движения (Spatial Orientation and Motion API) для получения данных о положении и движении устройства, а также применять их для визуализации контента по ссылка ниже:
Также стоит отметить, что в visionOS(xrOS) появились изменения в функционале быстрого просмотра 3D-контента (QuickLook). Благодаря этим изменениям, пользователи могут быстро и удобно просматривать 3D-модели и объекты прямо в приложениях или на веб-сайтах, при этом необходимость в установке отдельных приложений или плагинов отпадает.
Более подробную информацию о новых возможностях быстрого просмотра 3D-контента (QuickLook) вы можете найти на официальном сайте или в документации visionOS(xrOS). Эти изменения позволяют создавать визуальные опыты, предоставляя пользователям простой и интуитивно понятный способ взаимодействия с 3D-контентом прямо из приложений или веб-сайтов:
Портирование iPhone и iPad приложений в visionOS(xrOS)
Существующие приложения для iOS и iPadOS могут быть запущены в visionOS(xrOS). Одной из ключевых задач для разработчиков будет обеспечение совместимости с visionOS и адаптация функциональности и интерфейса приложений под эту платформу. Разработчики должны учесть зависимости фреймворков и библиотек, используемых в их приложениях, и обеспечить их совместимость с visionOS(xrOS).
Вы можете оптимизировать визуальную составляющую приложений, включая использование эффектов и анимаций, создание адаптивных макетов и обеспечение плавного взаимодействия с пользователем.
В результате можно создавать приложения, которые будут эффективно работать и предоставлять отличный пользовательский опыт как на iPad, так и на iPhone под управлением visionOS(xrOS):
Заключение
Объединив разработку приложений, игр и 3D сцен с возможностями пространственных вычислений в visionOS(xrOS), вы можете создавать проекты, которые привлекут внимание и откроют новые возможности для Apple устройств. Даже если вы далеки от программирования, можно создавать увлекательные 3D-пространства и интерактивные сцены, освоив и используя, например, Reality Composer Pro. Присоединяйтесь к разработчикам, 3D-дизайнерам в мире пространственных вычислений и сделайте свои навыки и таланты заметными для большой аудитории пользователей устройств Apple.
В своем ТГ канале я периодически рассказываю о технологиях visionOS и продуктовых кейсах для устройств Vision Pro в сжатом формате, подписывайтесь чтобы не пропустить важные новости на эти темы.
Если у вас есть вопросы относительно современной разработки под iOS, macOS, watchOS, tvOS или visionOS(xrOS) приложений любой сложности, задавайте, постараюсь на них ответить!
Комментарий удален модератором
Комментарий удален модератором
Есть вопросы касаемо разработки приложения под visionOS. Где и как я могу с вами обсудить детали?