【最速 Vision Pro 开发传说】Vision Pro 要来了!开发者如何一键搬移 iOS App?
Apple MR 装置 Vision Pro 浩浩荡荡在今年 WWDC 上宣布即将推出 ,从宣布到上市的时间之所以拉得这麽久,也很有可能是要让开发者们有更多时间来一起开拓这块新市场。对於想要先在 visionOS 占地的开发者来说,其实 Apple 提供了非常多学习资源,在 Xcode 的转换也相当方便。
那麽,该怎麽开始呢?
Vison Pro 的特色
首先,要了解 Vision Pro 到底特别在哪里。不同於其他既有的 VR 显示装置用摄影机即时侦测外部实景环境,再用演算法去减少虚实物件之间位置误差而造成的晃动,Vision Pro 是先扫描外部环境後,复制一份虚拟环境,直接显示在 visionOS 里面。
也就是说 visionOS 里看到的房间和物件通通都是虚拟的,自然不会有虚实结合时候的飘移,可以大大降低使用者的违和感。这靠的是 Vision Pro 摄影机与显示器的超高解析度,以及快速的即时运算能力,才能持续复制实体房间的画面,并复制一份虚拟版本,甚至使用者对实体环境互动都能无延迟地即时反应。
另外,如果想要直接将 iOS app 搬移到 visionOS,还要注意 iOS14 以前已不支援的 app,虽然有的在後续的 iOS 上仍然能执行,但搬到 visionOS 上是不支援的。
iOS 一键搬到 visionOS
如果是本来在 iOS 上的 app 要转换到 visionOS,首先需要准备好 Xcode 15 ,就会看到模拟器多了一个 Vision Pro 的选项,只要打开专案,选择 Vision Pro 模拟器,稍做等待就可以看到 iOS app 转换成了 visionOS app,真的是「一键」做好转换。
透过这个方式转换的 app 会以 window(视窗)的形式出现在 visionOS 中,使用者会看到一个漂浮在半空的视窗,里面就是原本的 iOS app。
Photo Credit:Apple
当然,app 转换过来还是有很多细节需要修改,至少因为在 MR 的世界里面,显示空间比手机大得多,在排版上就有许多差异,另外 visionOS 也有一些特殊的元件和互动方式,这些都需要微调。
比如首先要注意的就是 Ornament 物件。在 iOS 里的一些选单或工具,到了 visionOS 就会以一条挂在视窗角落的 Ornament 显示。
互动则有「hover」,在 visionOS 里面指的是视线聚焦的选项会被 highlight 起来,app 在转换後会自动预设样式,但一些像是圆角角度等细节都可以再微调。
手势部分,像 iPad 里面有四指手势,但到了 Vision Pro 最多就支援两指,如果 app 有用到相关手势就得跟着修改。
另外颜色、字体大小、字型、材质等设计,只要一开始写的 app 是用 semantic(语意)方式表示,而非采用色码或点数表示,那 SwiftUI 就会自动根据不同装置去调整成最适合的显示颜色,不用再另行调整。
当然,app 一转换完毕,在 Xcode 里面就可以看到错误被标示出来,这部分可以优先调整,进一步的调整则可以参考 WWDC 的 session 影片存档,入门建议可以先看:
- Meet UIKit for spatial computing
- Run your iPad and iPhone apps in the shared space
- Develop your immersive app (这段影片类似简介目录,可以由此延伸去找需要的教学影片)
visionOS 的原生元件
App 除了可以用 Windows 的形式在 visionOS 里显示,visionOS 还有 Volumes 和 Spaces。Volumes 可以看做是在 MR 空间里面的 3D 物件,而 Spaces 则是整个互动空间,就像电脑画面一样,可以放不只一个 app。
如果想要了解更多 visionOS app 的基础设计逻辑,可以参考 Apple 官方的这些影片:
- Design for spatial user interfaces
- Principles of spatial design
核稿编辑:Chris