visionOS开发简介:探索visionOS

1,630 阅读6分钟

visionOS开发简介:探索visionOS

本文翻译自Apple官方文档。翻译版权所有,搬运请注明来源。

visionOS是一个全新的平台。开发者可以使用熟悉的工具和框架进行开发。本文将介绍visionOS的基本开发模式,以帮助开发者开发全新的应用和游戏。

沉浸世界

Apple Vision Pro为用户和开发者在视觉空间内提供了一个无限的“画布”。用户可以在画布中自由地探索和玩耍。

在使用应用程序的同时,用户仍然可以保持与周围环境的互动,也可以通过旋钮切换为沉浸模式。

空间计算是visionOS的重要特性。应用程序从一个窗口出发,转化为一个3D物体,也可以转化为沉浸的场景(全屏幕)。用户可以在这些应用形态之间自由切换。下面将介绍visionOS应用程序的基本呈现样式。

窗口 Windows

开发者可以在visionOS中创建一个或多个窗口(类似iPadOS)。窗口由SwiftUI构建,可以包含UIKit组件。开发者可以通过添加3D内容以增强应用体验。

体 Volumes

向一个平面窗口添加维度(向屏幕后方增加),即为体。体是由SwiftUI的Scenes创建的,可以用于展示由RealityKit或Unity创建的3D内容。在共享空间(Shared Space,类似桌面)或应用的全空间(Full Space)中,用户可以通过任意角度观看这些3D内容。

空间 Spaces

默认情况下,App在启动后会显示在共享空间(Shared Space)中。在这里,应用会围绕用户排列,就像在macos桌面上处理多任务时一样。App可以通过窗口和体展示内容,用户可以随意排布应用的位置。如果需要一个更加沉浸式的体验,App可以开启其自己的“全空间”(Full Space),在全空间中,只会出现这个App的内容。在全空间内,应用可以使用窗口和体,创建无边界的3D内容,或者将用户带入沉浸的体验中。

为空间计算扩展的框架

SwiftUI

在创建窗口、体、空间时,SwiftUI是最佳途径。同时,也可以将已有的iOS、iPadOS应用带到visionOS中。SwiftUI现支持全新的3D能力,并且支持深度、手势操作、特效及沉浸式场景。SwiftUI能够帮助开发者为Vision Pro构建漂亮的、吸引人的App。RealityKit同时与SwiftUI深度融合,以帮助开发者构建可以互动的、具有体积感的交互界面。UIKit也可以和SwiftUI协作以构建visionOS的App。

RealityKit

开发者可以在App中使用Apple的3D引擎:RealityKit来构建并展示3D内容、动画以及视觉动效。RealityKit可以在交互界面中自动处理来自现实世界的光照条件,投射阴影,构建炫目的视觉特效,并为用户打开新世界的大门。RealityKit使用MaterialX,为开发者提供材质的制作。MaterialX是由领先的影视、特效、娱乐和游戏公司共同使用的开放标准,可以指定物体表面和几何着色器。

ARKit

在Vision Pro中,ARKit可以自动感知用户所处的环境,以便开发者为App提供与现实世界交互的新途径。默认情况下,ARKit驱动核心系统的能力,以使得您的App能够自动适应共享空间——当您的App切换到全空间中并获得权限后,开发者可以利用ARKit强大的API,实现平面估计、场景重建、图像锚定、现实跟踪和手部骨架跟踪,可以实现往墙上泼水、向地面丢球这样的效果。开发者可以通过将内容与现实世界融合来震撼您的用户。

无障碍

visionOS的设计考虑到了无障碍,适用于希望完全用眼睛、声音或两者的组合与设备进行交互的人。对于喜欢以不同方式浏览内容的人来说,指针操控(Pointer Control)允许用户选择食指、手腕或头部作为替代指针。已经在其他Apple平台上使用的技术和工具,也可以为visionOS创建无障碍的应用程序,使Vision Pro为每位用户创造绝佳体验。

您所需要的工具

Xcode

visionOS的开发由包含visionOS SDK的Xcode驱动。您可以向已有的项目中添加一个visionOS的target,或者构建一个全新的App。您可以在Xcode预览中完善您的App,也可以通过全新的visionOS Simulator与您的App互动,或者切换不同的房间布局与光照条件。您也可以为您的空间物体进行测试和虚拟化,以探索碰撞、遮挡和场景理解。

Reality Composer Pro

探索全新的Reality Composer Pro,旨在轻松预览您的visionOS应用程序并为其准备3D内容。Reality Composer Pro随Xcode提供,可以帮助您导入和组织Assets,例如3D模型、材料和音频。最重要的是,它与Xcode构建过程紧密集成,以预览和优化您的visionOS内容。

Unity

现在,您可以使用Unity强大、熟悉的创作工具来创建新的应用程序和游戏,或者将您现有的Unity项目重新构建为visionOS的项目。除了熟悉的Unity功能(如AR Foundation)之外,您的应用程序还可以获得visionOS的所有优势,如透传(Passthrough)和动态凹陷渲染(Dynamically Foveated Rendering)。通过将Unity的创作和仿真功能与RealityKit管理的应用程序渲染相结合,使用Unity创建的内容在visionOS上能够如鱼得水。

开启您的visionOS之旅

visionOS SDK将于本月晚些时候与Xcode、visionOS Simulator、Reality Composer Pro、文档、示例代码、设计指南等一起推出。

为visionOS准备

无论您是否已经在App Store上架过应用,还是这是您第一次为Apple平台开发,现在都可以做很多事情来为visionOS SDK的到来做好准备。了解如何在更新您的App,并探索现有框架,使您更容易开始使用visionOS。为visionOS准备

学习visionOS

凭借一流的框架和工具,visionOS是帮助您创造令人难以置信的空间体验的完美平台。无论您是在构思游戏、构建媒体体验、设计通过SharePlay进行的连接和协作、为企业创建应用程序,还是更新您的网站以支持visionOS,我们都有会议和信息来帮助您制定计划。准备好visionOS SDK,其中包含46个WWDC23会议,可帮助您了解平台开发、空间体验设计以及测试和工具。学习visionOS