Quest 3和Quest 3S的开发路径

中国AI网 2024年10月17日)Meta相信Quest 3S的推出正在扩大混合现实市场,可以为人们提供价格合理的高质量体验。在日前一篇博文中,团队分享了Quest 3和Quest 3S的开发路径,以及如何开始为游戏,健身,娱乐等更广泛的领域构建丰富的应用程序。

Meta分享Meta Quest 3/3S的应用开发指南  第1张

探索支持的体验来定义你的愿景

当Meta Quest 2于2020年推出时,数百万人体验到了虚拟现实的沉浸式力量。自那时起,空间计算的进步及硬件和软件生态系统的投资帮助混合现实逐渐进入主流,并为开发者打开了创新的大门。根据开发目标,以下是你可以在Meta Horizon OS构建的内容:

完全沉浸式体验:将人们带入无所不包的虚拟环境。利用经过验证的VR功能套件,你可以制作几乎无穷无尽的沉浸式世。完全沉浸式的VR体验可以通过Unity,Unreal,WebXR, Meta Spatial SDK或你的本地引擎进行构建。混合体验:混合现实允许你以令人惊讶和愉快的方式混合物理和虚拟世界。Meta的混合现实功能套件支持你的应用程序动态地理解物理空间,并适应人,物,甚至宠物。要了解有关混合现实的更多信息,请访问开发者中心的新页面。2D面板和扩展应用程序:Meta Horizon OS支持2D应用程序,允许人们在新的空间平台上与自己最喜欢的体验保持联系。你可以将原生Android应用优化并以2D面板的形式推出。使用已知的工作流程和框架,如Android Studio、Java、Kotlin和Jetpack,你可以构建全新的2D应用程序,并吸引用户在混合现实中进行多任务、工作、娱乐、浏览等。要在2D应用程序中添加额外的空间功能,你可以利用Meta Spatial SDK。

选择你的开发路径

一旦你确定了你想要创造的体验类型,接下来就要选择开发路径。遵循一个明确的路径可以帮助了解哪些工具和资源可以帮助你实现目标。

Meta Horizon OS提供了多种引擎支持:

Unity,Unreal和Native:要遵循最明确和最流行的路径,你需要考虑使用强大的3D引擎-或者创建自己的引擎。Unity和Unreal引擎为新手和经验开发者提供了强大的成熟工具。Unity具有直观的工具和多功能选项来实现你的愿景。Unreal提供尖端的工具和协作功能来帮助你构建高保真体验,推动性能的极限。如果你想构建一个自定义引擎,Meta Horizon Developer Center提供了大量的本地文档,可以帮助你利用OpenXR并将最新的混合现实功能集成到你的应用中。一旦你在Unity或Unreal构建了你的愿景,你就可以将其分发到多个平台,以扩大你的用户群并取得更大的成功。要了解更多关于使用Unity, Unreal和Native构建的信息,请访问这个文档。Meta Spatial SDK:如果你正在寻找一种更简单、更快、移动友好的方式来为Meta Horizon OS开发沉浸式应用程序,Meta Spatial SDK就是你的首选开发路径。Meta Spatial SDK是一套基于Kotlin的API,允许你使用熟悉的Android开发语言、工具和库来构建全新的沉浸式应用程序,或者通过添加空间功能来增强现有的移动应用程序。为了进一步加速这一过程,Meta Spatial SDK同时提供了Meta Spatial Editor。这个空间组合工具允许你导入、组织和将asset转换为视觉组合。要了解有关Meta Spatial SDK的更多信息并找到可以使用它构建的示例,请访问这个文档。2D和Web: Meta Horizon OS支持丰富的2D体验,使你能够利用Quest的高级多任务处理功能,并像任何其他沉浸式应用程序一样在Meta Horizon Store分发体验。基于Web的体验可以在任何现代浏览器查看,为人们提供更多体验应用程序的方式。要构建2D体验,你可以利用WebXR或Progressive Web Apps (PWA)。PWA用Bubblewrap构建,这是一个将PWA打包到Android App Bundle中的工具。有了它,你就可以创建一个Android应用,并使用“Trusted Web Activity”启动PWA。另外,你可以立即将现有的2D应用移植到Meta Horizon Store。要了解更多关于设计2D和基于web的体验,请查看访问这个文档。

无论你选择哪条道路,你都可以访问Meta Horizon开发者中心以找到正确的指导。

入门:基础知识

一旦你决定了你想要创造何种类型的体验以及你如何创造它,你便可以遵循以下基本步骤去启动你的开发过程并巩固你的基础。

第一步是购买设备:在发行应用之前,你需要确保应用运行顺畅。尽管Meta XR模拟器等工具允许你在没有物理设备的情况下迭代和测试体验,但在实际用户环境中进行最终测试将确保在将应用提供给Meta Quest用户之前进行质量控制。第二步是创建开发者帐户和开发者组织:所有在Meta Horizon Store分发应用的开发者都需要通过开发者中心创建一个开发者账户和组织。创建一个开发者账户可以允许你访问Developer Dashboard。这里包含大量盈利工具、分析见解和平台服务,可以增强你的开发过程并帮助你发展业务。从Developer Dashboard,你可以输入财务信息来接收付款,创建测试用户帐户,并管理组织成员。要创建开发者帐户,请单击开发者中心右上角的“登录”按钮。有关创建开发者组织的更多信息,请访问这个文档。第三步是下载MQDH:Meta Quest Developer Hub (MQDH)是一个重要的桌面配套应用,旨在通过简化迭代,测试,调试,设备管理以及下载包和访问代码示例等开发方面来加速你的开发过程。MQDH可用于Windows和Mac,它提供了将应用程序直接提交到Developer Dashboard进行分发的功能。要查看有关开始使用MQDH的说明,请访问这个文档。第四步是熟悉Meta Quest Link:Meta Quest Link是一个核心的开发功能和桌面应用程序,可允许你通过USB-C或WiFi将头显连接到Windows电脑,从而加速开发和迭代。利用Link,你可以直接在Quest中查看Unity和Unreal等开发环境所做的更改,无需编译。Link通过120Hz的刷新率为Quest 3的PC VR游戏提供令人惊叹的视觉质量,并提供颗粒化的开发者设置,如移除边界的能力。要开始使用Link,请访问这个文档。

Unity入门教程

Unity为希望为混合现实构建复杂和动态3D应用的开发者提供了一个强大、通用和直观的引擎。团队致力于提供特定于Meta Horizon的功能,以帮助你更快地设置,快速实现各种功能,并更有效地进行迭代。在开始之前,所有在Unity中为Meta Horizon OS构建内容的开发者都应该通过以下检查:

通过Unity Package Manager下载All-in-One SDK。All-in-One包将数个Meta SDK捆绑在一起,其中包括一系列提供高级渲染、社交和社区构建以及构建沉浸式体验的功能。要下载All-in-One SDK,请访问Unity Asset Store。在Unity中使用Meta Build Target。Meta Quest设备的目标平台是Android,最终输出是一个.apk文件(Android可执行文件)。在开发之前,你需要将Unity构建目标设置为头显,你可以在这个文档找到相关说明。在Unity中启用项目设置工具。项目设置工具可以帮助你通过测试一个名为Configuration Tasks的规则注册表来快速配置Meta Quest设备的项目,并且可以直接在Unity编辑器中启用。尽管项目设置工具提供了一组默认规则来让你的应用程序准备好Meta任务,但你同时可以添加自定义规则来满足你的项目需求。要查看有关项目设置工具的详细说明和其他信息,请访问这个文档。尝试构Building Blocks。Building Blocks是一个Unity扩展,可以帮助你发现并快速集成功能,如手部追踪和Passthrough。将功能块放入项目后,所有依赖项都会自动安装,这样你就可以开始在Build利用所述功能。要了解有更多信息,请访问这个文档。下载Meta XR模拟器。Meta XR模拟器是为开发者构建的轻量级XR运行时,可以在API Level模拟Meta Quest头显和功能。以这种方式,你无需戴上或摘下头显就可以测试和调试应用,从而令日常开发变得更加容易。它同时通过简化测试环境的设置来帮助扩展自动化。要开始使用Meta XR模拟器,请访问开发者中心的Windows和Mac下载页面,或直接从 Unity Package Manager.下载。要了解有关Meta XR模拟器的更多信息,请访问这个文档。

现在你已经掌握了Unity的基本步骤和功能,我们建议你深入了解如何构建身临其境的体验。为Meta Quest开发应用程序不需要丰富的经验,但如果你是混合现实的新手,建议你回顾我们的MR设计指南,涵盖混合现实概述,设计最佳实践,混合虚拟对象与物理世界,让虚拟对象与物理世界交互,在现实中保留虚拟对象并建立共享体验,以及健康与安全指引。

延伸阅读:Meta分享:Quest 3 MR开发入门和性能提升指南

基于Meta Horizon OS构建的混合现实应用有三个主要功能:Passthrough、Scene和Spatial Anchors。你可以在下面找到概述以及有助于集成的技术文档的链接。

Passthrough透视:这个功能提供了物理世界的实时3D可视化。Passthrough API允许你将可视化与体验集成,并为用户提供一种全新的方式来体验他们的物理环境。要了解更多信息,请访问这个文档。Scene场景:这个功能允许你在用户的物理环境中通过丰富的交互快速构建复杂的场景感知体验。Scene提供了用户空间的几何和语义表示,这样你就可以构建涉及精确物理,静态遮挡和针对物理世界导航的用例。要了解更多信息,请访问这个文档。Spatial Anchors空间锚:这个功能允许你在用户环境中支持持久对象,从而实现跨会话更熟悉和一致的体验。空间锚提供了一个世界锁定的参考框架,为物理世界中的虚拟对象提供了位置和方向,确保用户下次进入你的应用程序时对象处于相同的位置。更多信息请访问这个文档。

为了在设置和导航混合现实开发方面为你提供更大的支持,Meta构建了混合现实实用工具工具包MRUK。这套丰富的实用程序和工具可以在构建空间感知应用程序时执行常见操作。MRUK提供了包括场景查询、图形辅助程序和开发工具在内的实用程序,可帮助你更容易针对物理世界进行编程,从而允许你专注于令应用程序与众不同的地方。

上述步骤和资源为你提供了一个最佳的起点。其中一系列的功能和特性同样适用于Unreal和Native,你可以在各自的文档页面(Unreal | Native)中找到更多信息。

开始使用Meta Spatial SDK

Meta Spatial SDK允许你利用现有的技能和开发知识来构建增强的移动应用程序,并用于完全沉浸式,混合或2D面板环境。通过移植现有的移动应用程序或在广阔的3D空间中使用独特的Meta空间功能来增强现有应用程序,你可以提供既新奇又熟悉的创新体验。

无论是想为Meta Horizon生态系统构建一个新的应用程序还是丰富现有的应用程序,你都要先下载。这个空间构图工具可允许你导入、组织和转换你的asset为视觉构图,并将它们导出到Spatial SDK项目中。

Meta Spatial Editor提供了一系列功能来支持您的愿景,包括无需编写代码即可布局2D和3D对象的能力,直接在编辑器中为对象分配逻辑,以及利用3D美术和设计师熟悉的工具。

如果你想构建一个完全沉浸式或混合现实应用程序,这个教程为你提供了构建第一个空间SDK项目的介绍。利用相关资源将帮助你熟悉关键功能和流程,例如修改UI和布局、向场景添加模型、显示视频、添加和修改多维数据集等等。

如果你想将现有的应用程序带到Meta Horizon,这个教程将引导你完成将Spatial SDK集成到模板Android手机应用的步骤。你可以使用自己的应用程序,或通过GitHub使用提供的模板。Meta同时为你提供了将沉浸式活动与手机应用中的2D Android活动相结合的步骤,使其更容易将沉浸感带入你的项目。

无论你想用Spatial SDK构建哪种类型的体验,下面的演示应用都能为你提供帮助:

Focus这个混合现实应用程序向你展示如何构建一个生产力应用程序和扩展空间屏幕。Focus演示了面板和对象管理,支持在不同环境中创建、重用和销毁交互元素。Geo Voyage这个混合现实应用展示了如何创建增强用户学习体验的应用。所述应用程序将引导你完成将Llama 3与其他工具集成的过程,从而开发人工智能学习代理,使用ECS将面板与虚拟对象集成,并使用来自Google Maps API的物理世界数据将用户从虚拟对象的pin转换为物理世界的完全沉浸式视图。Media View 这个混合现实应用向你展示了如何构建一个空间化的媒体查看体验。你可以参考这个应用程序来理解可视化组织媒体内容所需的概念和代码,同时在空间中显示各种格式的内容等等。

2D和基于Web的体验

Meta Connect最重要的公告之一是为Meta Horizon Store增加了2D应用支持,这为开发者提供了更多发行选择。2D应用可以使用WebXR、pwa或Android Native来构建。

如果你想构建一个2D应用程序,WebXR可以帮助你实现你的想法。Meta建议在深入学习WebXR入门教程之前,先查看WebXR工作流程,熟悉基本概念和工具。在将WebXR应用程序带到Meta Horizon Store之前,你同时需要查看关于WebXR性能优化的综合指南,以更好地了解最佳实践,瓶颈原因,增强视觉效果的简单技巧,如固定焦点渲染等等。

如果你想把现有的2D应用带到Meta Horizon生态系统中,你可以了解更多关于PWA如何在Meta Quest提供与混合现实应用类似的体验。另外,使用Android Studio、Java、Kotlin和Jetpack等熟悉的框架,2D应用可以作为原生Android应用在2D面板呈现。Meta已经构建了一个关于将2D应用程序迁移到Meta Horizon的指南。

展望未来

Quest 3S和Meta Horizon OS为你提供了比以往更多的选择,并能够将你的想法变成有趣,引人入胜和高质量的体验。Meta表示,接下来将继续扩大平台支持,加强开发路径,并与开发者社区合作,了解如何更好地为你服务。