Unity 对 VisionOS 的支持已开始推出 - 以下是其工作原理

高尔夫球场的 3D 模型位于浮动 UI 窗口 e 旁边的桌子上放大 / What the Golf?,一款流行的 Apple Arcade 游戏,在与其他 VisionOS 应用程序共享的 3D 空间中运行。 单元

从今天开始,精选开发人员可以使用流行的 Unity 软件为 Apple 即将推出的 Vision Pro 耳机创建应用程序和游戏。

Unity 与 Apple 之间的合作伙伴关系是在上个月 Apple WWDC 2023 主题演讲期间首次宣布的,并在同一环节推出了 Vision Pro 和 VisionOS。当时,苹果公司指出,开发人员可以在该公司 Xcode IDE for Mac 的新测试版中使用 SwiftUI 立即开始构建 VisionOS 应用程序,但它还承诺 Unity 将在本月开始支持 Vision Pro。

它现已推出,但对于注册测试版的开发人员来说,推出速度缓慢且有限。 Unity 表示,它将在未来几周或几个月内逐步接纳广泛的开发者加入该计划,但没有详细说明其选择人员的标准,而不仅仅是关注 AAA 游戏制作者。

一旦开发人员开始使用它,工作流程就会很熟悉。这与他们之前在 iOS 上的工作方式非常相似。他们可以创建一个针对该平台的项目,从那里生成 Xcode 项目,并通过附加的 Vision Pro 开发套件或 VisionOS 应用程序的 Xcode 模拟器从 Unity 编辑器预览或快速播放他们的作品。

共享空间、RealityKit 和 PolySpatial

Unity 因创建 2D 和 3D 视频游戏的引擎而闻名,但该公司提供了一套工具,旨在使其成为开发交互式内容(无论是游戏还是其他内容)的一站式商店。该公司在苹果平台上拥有悠久的历史; iPhone 上的许多首批 2D 和 3D 游戏都是使用 Unity 制作的,这为公司的声誉做出了贡献。

从那时起,Unity 也被用来为 PC VR、PlayStation VR 和 VR2 以及 Meta Quest 平台创建流行的 VR 游戏和应用程序。

Unity 创建的应用程序可以出现在visionOS 上的一些特定环境中。在用户空间的平面窗口中运行的 2D 应用程序将是最容易实现的。假设相关项目使用 Unity 的通用渲染管道 (URP),将完全沉浸式 VR 应用程序移植到该平台也应该相对容易(尽管不一定微不足道)。如果没有,应用程序将无法访问中央凹渲染等功能,这是性能和保真度的关键功能。

不过,与其他两种环境相比,这就像在公园散步一样轻松。放置在用户可见物理环境中的 AR 应用程序将更加复杂,一些应用程序可能希望与其他 VisionOS 应用程序一起呈现交互式 3D 对象和空间,即它们希望支持多任务处理。

为了实现这一目标,Unity 推出了“PolySpatial”功能,该功能允许应用程序在 VisionOS 的共享空间中运行。共享空间中的一切都依赖于 RealityKit,因此 PolySpatial 可以转换材质、网格、着色器等。从 Unity 到 RealityKit。即使在这种情况下也存在一些限制,因此有时开发人员必须进行更改、创建新的着色器等。以便在 Vision Pro 上运行他们的应用程序。

这里应该指出的是,据称以隐私的名义,visionOS 不允许应用程序直接访问摄像头,并且没有办法绕过与 RealityKit 合作的需要。

到目前为止,大部分讨论都是关于调整现有应用程序,以便在明年产品发布时及时将其软件安装到 Vision Pro 上,但这也是开发人员开始为 VisionOS 开发全新应用程序的机会。使用 SwiftUI 和其他 Apple 工具包为 VisionOS 构建应用程序和游戏已经有大约一个月的时间了,但 Unity 拥有强大的工具、插件和其他资源库,特别是在构建游戏方面,与使用 SwiftUI 相比,这将减少大量工作,至少对于某些项目而言是如此。

Unity 对 VisionOS 的支持已开始推出 - 以下是其工作原理
高尔夫球场的 3D 模型位于浮动 UI 窗口 e 旁边的桌子上放大 / What the Golf?,一款流行的 Apple Arcade 游戏,在与其他 VisionOS 应用程序共享的 3D 空间中运行。 单元

从今天开始,精选开发人员可以使用流行的 Unity 软件为 Apple 即将推出的 Vision Pro 耳机创建应用程序和游戏。

Unity 与 Apple 之间的合作伙伴关系是在上个月 Apple WWDC 2023 主题演讲期间首次宣布的,并在同一环节推出了 Vision Pro 和 VisionOS。当时,苹果公司指出,开发人员可以在该公司 Xcode IDE for Mac 的新测试版中使用 SwiftUI 立即开始构建 VisionOS 应用程序,但它还承诺 Unity 将在本月开始支持 Vision Pro。

它现已推出,但对于注册测试版的开发人员来说,推出速度缓慢且有限。 Unity 表示,它将在未来几周或几个月内逐步接纳广泛的开发者加入该计划,但没有详细说明其选择人员的标准,而不仅仅是关注 AAA 游戏制作者。

一旦开发人员开始使用它,工作流程就会很熟悉。这与他们之前在 iOS 上的工作方式非常相似。他们可以创建一个针对该平台的项目,从那里生成 Xcode 项目,并通过附加的 Vision Pro 开发套件或 VisionOS 应用程序的 Xcode 模拟器从 Unity 编辑器预览或快速播放他们的作品。

共享空间、RealityKit 和 PolySpatial

Unity 因创建 2D 和 3D 视频游戏的引擎而闻名,但该公司提供了一套工具,旨在使其成为开发交互式内容(无论是游戏还是其他内容)的一站式商店。该公司在苹果平台上拥有悠久的历史; iPhone 上的许多首批 2D 和 3D 游戏都是使用 Unity 制作的,这为公司的声誉做出了贡献。

从那时起,Unity 也被用来为 PC VR、PlayStation VR 和 VR2 以及 Meta Quest 平台创建流行的 VR 游戏和应用程序。

Unity 创建的应用程序可以出现在visionOS 上的一些特定环境中。在用户空间的平面窗口中运行的 2D 应用程序将是最容易实现的。假设相关项目使用 Unity 的通用渲染管道 (URP),将完全沉浸式 VR 应用程序移植到该平台也应该相对容易(尽管不一定微不足道)。如果没有,应用程序将无法访问中央凹渲染等功能,这是性能和保真度的关键功能。

不过,与其他两种环境相比,这就像在公园散步一样轻松。放置在用户可见物理环境中的 AR 应用程序将更加复杂,一些应用程序可能希望与其他 VisionOS 应用程序一起呈现交互式 3D 对象和空间,即它们希望支持多任务处理。

为了实现这一目标,Unity 推出了“PolySpatial”功能,该功能允许应用程序在 VisionOS 的共享空间中运行。共享空间中的一切都依赖于 RealityKit,因此 PolySpatial 可以转换材质、网格、着色器等。从 Unity 到 RealityKit。即使在这种情况下也存在一些限制,因此有时开发人员必须进行更改、创建新的着色器等。以便在 Vision Pro 上运行他们的应用程序。

这里应该指出的是,据称以隐私的名义,visionOS 不允许应用程序直接访问摄像头,并且没有办法绕过与 RealityKit 合作的需要。

到目前为止,大部分讨论都是关于调整现有应用程序,以便在明年产品发布时及时将其软件安装到 Vision Pro 上,但这也是开发人员开始为 VisionOS 开发全新应用程序的机会。使用 SwiftUI 和其他 Apple 工具包为 VisionOS 构建应用程序和游戏已经有大约一个月的时间了,但 Unity 拥有强大的工具、插件和其他资源库,特别是在构建游戏方面,与使用 SwiftUI 相比,这将减少大量工作,至少对于某些项目而言是如此。

What's Your Reaction?

like

dislike

love

funny

angry

sad

wow