VisionOS:开启全新空间计算体验的操作系统
VisionOS是专为Apple的"空间计算"而设计的操作系统,为用户提供了全新的计算体验。与传统的桌面计算和移动计算不同,空间计算将您的工作环境悬浮在眼前。
在VisionOS的"共享空间"中,应用程序以并排浮动的方式展现。您可以将其想象为多个并列的窗口,但它们不是出现在桌面上,而是悬浮在半空中。
用户可以打开一个或多个作为平面存在的窗口,并享受传统2D视图和控件的同时,也可以体验到3D内容的展示。这些3D内容可以存在于具有2D内容的窗口中。例如,在CAD程序中,对象可能是3D的,但工具栏可能是2D的。
除了窗口,应用程序还可以创建三维空间,其中包含对象和场景。与2D窗口不同,这些空间中的对象可以在三维空间中移动,并且可以从不同角度观察,就像绕着汽车走动并透过前窗、后窗和侧窗窥视一样。
对于那些追求完全沉浸式体验的开发人员,他们可以创建一个完整的专用空间。这类似于游戏占据整个屏幕,但在VisionOS中,该屏幕是完全沉浸式的。在这个环境中,应用程序、窗口和空间以完全沉浸式的方式运行。
现在,让我们一起了解开发VisionOS应用程序时需要了解的17个关键点。
1.使用熟悉的开发工具和库
对于许多Apple开发人员来说,为VisionOS开发应用程序所使用的开发工具和库已经非常熟悉。开发人员可以使用SwiftUI、RealityKit和ARKit进行开发,这些是已经存在一段时间的现有API。Apple为VisionOS扩展了这些框架,增加了对新硬件和全空间范例的支持。
2.VisionOS从根本上是iOS和iPad OS开发的延伸
开发者将使用SwiftUI和UIKit构建用户界面。RealityKit用于显示3D内容、动画和视觉效果。ARKit为应用程序提供对用户周围真实世界空间的理解,并使该理解在应用程序中的代码中可用。
3.、所有应用程序都需要存在于3D空间中
即使是从iOS或iPad OS移植过来的基本2D应用程序也会漂浮在空间中。无论该空间是用户使用Vision Pro环境的房间视图,还是一些模拟环境屏蔽了真实世界,甚至传统应用程序都会在3D空间中“漂浮”。
4、VisionOS为构建应用程序提供了一个新的目标位置
以前,Xcode开发者可以选择iPhone、iPad和Mac作为目标位置(即应用程序运行的位置)。现在,开发者可以将VisionOS作为一个目标位置添加进来。一旦应用程序重新构建,新的目标位置将添加VisionOS功能,包括可调整大小的窗口和VisionOS的自适应半透明特性。
5.旧的UIKit应用程序(未使用Swift和SwiftUI构建)可以重新编译为VisionOS
当这样做时,它们将从VisionOS获得一些突出显示和3D存在特性。因此,虽然基于UIKit和Objective-C的应用程序可能无法提供完全沉浸式的3D体验,但它们将获得本机的VisionOS外观和感觉,并能够与更现代的基于SwiftUI的应用程序相对无缝地共存。
6.传统的UI元素(如控件)获得了新的Z偏移选项
这使开发者可以将面板和控件推入3D空间,使特定的界面元素浮在其他元素的前面或后面。这可以使开发者注意到特定的元素。
7.VisionOS使用眼动追踪来实现动态视觉聚焦
视觉聚焦描述了一种图像处理技术,其中图像的某些区域比其他区域具有更多细节。在VisionOS中,Vision Pro使用眼动追踪来以非常高的分辨率渲染正在观察的场景区域,但在外围视觉中降低分辨率。这减少了用户不完全关注的区域的处理时间。开发者无需为此编写代码,因为它已经内置在操作系统中。
8.对象的光照效果根据当前的空间条件进行推导
默认情况下,漂浮在3D空间中的对象会获得佩戴头戴设备的用户所在空间的光照和阴影特性。开发者可以提供基于图像的照明资产,如果他们想要自定义虚拟空间中对象的照明效果。
9.ARKit为应用程序提供了关于使用设备的真实世界房间的可用模型
它使用平面估计来识别真实房间中的平面表面。场景重建构建了一个动态的3D模型,应用程序可以与之交互的空间。图像定位允许将2D图形锁定在3D空间中的位置,使其看起来是真实世界的一部分。
10.VisionOS上的ARKit增加了骨骼手部追踪和辅助功能功能
这为应用程序提供了位置数据和关节映射,使手势能更充分地控制虚拟体验。辅助功能功能允许用户通过眼动、语音和头部运动与手势动作交互。
11.Unity已在RealityKit之上进行了层叠
苹果与Unity合作,使Unity开发者可以直接从Unity中针对VisionOS进行目标定位,允许所有基于Unity的内容在不需要进行太多转换工作的情况下迁移到基于VisionOS的应用程序中。这实际上非常重要,因为它使具有丰富Unity经验的开发者能够同时创建基于Unity的应用程序和VisionOS应用程序。
12.Reality Composer Pro是一种新的开发工具,用于预览和准备3D内容
它本质上是一个用于3D和虚拟内容的资产管理器。这还允许开发者创建自定义材料、测试着色器、将这些资产集成到Xcode开发流程中,并在Vision Pro上进行预览。
13.共享空间处理在设备上进行
这意味着房间的可视化和映射是保持私密的。不使用云处理进行3D映射。所有个人信息和房间空间动态完全在Vision Pro设备内部管理。
14.对于没有设备的开发者,Xcode提供预览和模拟器
这使您可以了解您的应用程序的外观并测试您的应用程序。预览模式可让您在Xcode中查看布局,而模拟器则是用于测试整体应用程序行为的专用屏幕环境。您可以使用键盘、触控板或游戏控制器模拟手势。
15.对于拥有Vision Pro的开发者,可以完全在虚拟空间中进行编码
Vision Pro将Mac桌面扩展到虚拟空间,这意味着您可以将Xcode开发环境与Vision Pro应用程序并排放置。
16.将有一个专门的Vision Pro应用商店
应用程序,包括应用内购买,将可以从Vision Pro的专门应用商店中下载和购买。此外,Test Flight与Xcode和Vision OS一样正常运行,因此开发者将能够以与iPhone和iPad相同的方式分发应用程序的测试版。
17.Apple正在准备一些编码支持资源
VisionOS SDK、更新的Xcode、模拟器和Reality Composer Pro将于本月晚些时候提供。苹果还正在设置苹果Vision Pro开发者实验室。这些实验室位于伦敦、慕尼黑、上海、新加坡、东京和库比蒂诺,开发者将能够访问和测试应用程序。对于那些不前往苹果站点的开发者,他们可以提交请求给苹果评估和测试应用构建,并提供反馈。苹果没有提及这些请求的回应时间。
写在最后
作为一名开发者,你是否计划为Vision Pro开发应用程序?
公司是否应该采用低代码来推动业务运营?
作为一名用户,你认为他有即时的用途,还是对于3500美元的价格和类似护目镜的使用体验持观望态度?
请在下方的评论中与我们分享您的想法。
关于如何开发Vision Pro和VisionOS的更多信息,请访问Apple的开发者网站developer.apple.com...