Разработка
Первый взгляд на разработку для visionOS
Когда SDK появится в конце этого месяца, разработчики по всему миру смогут загрузить Xcode и начать создавать свои собственные приложения и игры для visionOS.
Каково это — разрабатывать под visionOS? Для Карима Морси, генерального директора и соучредителя компании Algoriddim, «это было похоже на объединение всей нашей многолетней работы».
Приложение djay от Algoriddim, получившее награду Apple Design Award, уже давно предлагает любителям музыки и профессиональным диджеям новые способы микширования композиций на платформах Apple. В 2020 году команда даже использовала функции определения позы руки для создания ранней формы управления пространственными жестами на iPad. На Apple Vision Pro они смогли полностью использовать пространственный ввод, создав версию djay, управляемую исключительно глазами и руками.
«Я занимаюсь диджеингом уже более двадцати лет, в самых разных местах и с использованием самых разных технологий, но это, честно говоря, просто снесло мне крышу», — говорит Морси. «Это очень естественный способ взаимодействия с музыкой, и чем больше мы используем устройства ввода, которые позволяют освободиться от всех этих кнопок, ручек и всяких мелочей — тем больше мы освобождаемся».
«Это эмоционально — это кажется реальным»
Это мнение разделяет Райан Маклеод, создатель головоломки Blackbox, получившей награду Apple Design Award. «У вас наступает момент осознания — дело даже не в том, что взаимодействие стало естественным. В этом нет ничего, что могло бы «стать естественным». Оно просто есть!» — говорит он. «Я очень ярко помню, как смеялся над этим, потому что мне просто нужно было остановиться на мгновение и оценить это — ты полностью забываешь, что сама концепция дикая».
Blackbox известен на iOS тем, что, по выражению Маклеода, «ломает четвертую стеклянную стену», используя датчики и ввод на iPhone необычным образом для создания коварных заданий, в которых требуется сделать почти все, кроме прикосновения к экрану. Однако прежде чем перенести этот опыт в visionOS, Маклеоду пришлось решить свою собственную головоломку: как переосмыслить игру, чтобы воспользоваться безграничными возможностями Vision Pro.
«Вам действительно придется вернуться к основным принципам. Что будет казаться нативным и естественным на visionOS и в мире человека?» — говорит он. «Чего люди будут ожидать, а чего нет? Как можно комфортно существовать, а затем подстроить их ожидания, чтобы создать загадку, удивить и удовлетворить?».
После создания первых прототипов пространственных задач, аудио быстро стало основной частью истории Blackbox. Хотя Маклеод и звуковой дизайнер Гас Каллахан ранее уже создавали звуковые интерфейсы для приложения iOS, Spatial Audio привносит новое измерение в головоломки в visionOS. «Это очень забавная, невыразительная вещь, которая полностью меняет уровень погружения», — говорит он. «Когда звуки проносятся мимо вас — это дикий эффект, потому что он вызывает эмоции — он кажется реальным».
«Вам потребуются считанные минуты, чтобы заставить свой собственный продукт работать в пространстве»
Как человек, который почти десять лет разрабатывал исключительно для iOS и iPadOS — и не имел практически никакого опыта работы ни с 3D-моделированием, ни с RealityKit — Маклеод поначалу с трепетом относился к попытке создать приложение для пространственных вычислений. «Я действительно не занимался подобной сменой платформы», — говорит он. Но как только он начал работать в Xcode, «наступил дикий, мощный момент осознания того, как все это настроить».
visionOS создана для поддержки знакомых фреймворков, таких как SwiftUI, UIKit, RealityKit и ARKit, что помогает таким приложениям, как Blackbox, перенести большую часть существующей кодовой базы без необходимости переписывать ее с нуля. «Что меня радует, когда я рассказываю об этом другим разработчикам, так это то, что вы можете создавать приложения очень легко», — говорит Маклеод. «Вам потребуются считанные минуты, чтобы заставить свой собственный материал работать в пространстве».
Даже для разработчиков, работающих с более сложным набором фреймворков, таких как команда, создавшая приложение дополненной реальности JigSpace, история похожа. «В течение трех дней у нас уже было что-то готово к работе», — говорит генеральный директор и соучредитель Зак Дафф, ставя в заслугу мастерство своей команды в создании быстрого прототипа.
Одним из членов этой команды является соучредитель JigSpace Нума Бертрон, который провел несколько дней в начале процесса разработки, знакомясь со SwiftUI. “Он просто был там, изучал все, что мог, играл со Swift Playgrounds, а потом возвращался на следующий день и говорил: ‘О, Боже, вы не поверите, какая это мощная штука’», — говорит Дафф.
Хотя команда JigSpace — новичок в SwiftUI, она не чужда фреймворку дополненной реальности Apple, уже много лет используя его в своих приложениях, помогающих людям познавать мир с помощью 3D-объектов. В Vision Pro команда использует возможности ARKit для размещения 3D-объектов в мире и создания пользовательских жестов для масштабирования — при этом основной интерфейс приложения остается в окне и легко доступен.
JigSpace также изучает возможности совместной работы людей с помощью SharePlay и Spatial Personas. «Это фундаментальное переосмысление того, как люди взаимодействуют друг с другом вокруг знаний», — говорит Дафф. «Теперь мы можем просто предложить вам испытать что-то прямо перед вами. И не только это — вы можете привлечь других людей к этому опыту, и это становится гораздо более важным для того, чтобы все нужные люди были с вами в комнате».
«Вы хотите чувствовать себя как дома»
Совместный опыт может быть полезен для образования и сотрудничества, но для Ксави Х. Ороми, главного инженера компании XRHealth, речь также идет о поиске новых и мощных способов помочь людям. Хотя Ороми и его команда являются новичками в работе с платформами Apple, у них есть значительный опыт в создании полностью захватывающих впечатлений. Еще в 2012 году они создавали приложения для VR-гарнитур, чтобы помочь людям в распознавании фобий, физической реабилитации, улучшения психического здоровья и других терапевтических услугах.
Vision Pro сразу же приглянулась Ороми и команде, особенно плавность погружения, которую обеспечивает visionOS. «Предлагая некое постепенное воздействие и позволяя человеку самому решать, как это должно выглядеть — это то, что естественным образом очень интегрируется в терапию», — говорит Ороми.
Опираясь на этот принцип, команда разработала опыт для помощи людям с акрофобией (боязнью высоты), построенный полностью на фреймворках Apple. Несмотря на отсутствие опыта работы со Swift или Xcode, команда смогла создать прототип, которым гордится, всего за месяц.
В их приложении для visionOS человек может открыть портал в своем текущем пространстве, который дает ему ощущение нахождения на значительной высоте без полного погружения в среду приложения. Для Ороми это открывает новые возможности для общения с пациентами и помогает им почувствовать себя на земле, не превышая уровень комфорта. «Вы хотите чувствовать себя как дома», — говорит Ороми, — «Раньше [при полном погружении] мне нужно было снять гарнитуру, и тогда я полностью нарушал погружение».
Это также дает дополнительное преимущество, поскольку предоставляет людям возможность оставаться верными самим себе. В некоторых предыдущих опытах погружения на других платформах, отмечает Ороми, руки и тела пациентов были представлены в пространстве с помощью виртуальных аватаров. Но это имело свои проблемы: «У нас было много пациентов, которые говорили, что чувствуют, что их тело не принадлежит им», — говорит он. «В нашем обществе, которое так разнообразно, очень трудно создать представления аватаров, которые соответствовали бы каждому человеку в мире… [В Vision Pro], где вы можете видеть собственное тело через passthrough, нам не нужно создавать виртуальное представление».
В сочетании с SharePlay люди могут оставаться на связи и получать поддержку от своих виртуальных терапевтов, одновременно расширяя свои границы и бросая вызов обычным страхам. «Спустя годы, оглядываясь назад, — говорит Ороми, — мы сможем сказать, что все началось с запуска Vision Pro — именно здесь мы сделали реальную виртуальную терапию».
«Вы в гонке»
Когда SDK появится в конце этого месяца, разработчики по всему миру смогут загрузить Xcode и начать создавать свои собственные приложения и игры для visionOS. На WWDC состоятся 46 сессий, посвященных Apple Vision Pro, поэтому можно получить много новых знаний — но у Даффа и Маклеода есть несколько дополнительных рекомендаций.
«Возьмите SwiftUI, если вы еще этого не сделали», — говорит Маклеод, отмечая, что знакомство с этим фреймворком может помочь разработчикам добавить основную функциональность платформы в существующее приложение. Он также советует освоить основы моделирования и Reality Composer Pro. «В какой-то момент вам захочется оторваться от плоскости», — говорит он. Но, отмечает он с улыбкой, для создания приложений для этой платформы не нужно становиться экспертом в области 3D-графики. «Вы можете далеко продвинуться с простой моделью и шейдерами [Reality Composer Pro]».
Дафф повторяет эти рекомендации, добавляя в список последний фреймворк — RealityKit. «Если вы переходите с [других рендереров], есть некоторые фундаментальные изменения, с которыми вам придется познакомиться», — говорит он. «Но с этими тремя вещами вы можете приступать к работе».
Узнайте больше о разработке под visionOS и о том, что вы можете сделать, чтобы подготовиться к SDK, на сайте developer.apple.com: