返回开发者新闻

营造多人游戏 VR 体验:其他多人游戏 SDK 功能、行进的可靠性和最佳实践

2022年7月12日发布者:Navyata Bawa

我们的“营造多人游戏 VR 体验”系列博客和视频有四个部分,在这最后一部分中,我们会通过探究用 Unity 创建的开源 SharedSpaces 示例,讨论 Quest 中的平台 SDK 多人游戏功能,并说明如何用此示例构建自己的多人游戏应用程序。如果想通过视听学习,请通过 Meta Open Source YouTube 频道观看此视频

在今天的博文中,我们会再仔细讨一些多人游戏 SDK 功能,并了解行进的可靠性、最佳实践、必记要点和资源。如果没看到我们如何基于 SharedSpaces 示例制作简单的多人 VR 游戏,请通过我们的博文视频补补漏。

其他多人游戏功能

可调用的错误对话框和重新加入对话框

Quest 中的平台 SDK 多人游戏功能中,有可用于降低多人游戏体验门槛和处理意外情况的功能。例如,平台 SDK 中有一个 API 用于调用错误对话框,让玩家知道他们尚未完成加入群体所需学完的教程。

这有助于玩家了解错在何处,也有助于缩小不能按预期方式行进到目标位置的原因查找范围。对于有关此 API 用法的更多详细信息,以及可以显示的所有错误消息,请查看文献资料

通过平台 SDK,用户还可以通过“重新加入”对话框重新加入群体,以备用户连接中断(如下所示)时使用。

要注意,此功能仅可显示对话框,开发者负责处理连接中断检测,实际重新加入和深度链接相关事宜。还要记住,如果用户尝试重新加入时大家都已退出相应会话,则要由应用程序通过错误消息发出通知,告知用户因为所有参与者都已退出相应会话而不能加入相应会话。对于有关重新加入 API 用法的更多详细信息,示例用例和最佳实践,请查看文献资料

Webhook

对于可能与应用中的多人游戏体验有关的更改,通过 Webhook 可接收实时 HTTP 通知。例如,应用用户加入新大厅或会话时,Quest 可以发出通知,开发者不必查询更改。要详细了解如何配置及使用 Webhook,请查看文献资料

快速邀请

快速邀请是一种多人游戏功能,可用其将 Oculus 邀请融入应用体验,无须显示 Oculus 叠层。

实现应用使用邀请功能后即可使用快速邀请 API,应用还可以借此显示跨平台用户。

此 API 可列出可邀请的用户、直接邀请和已发出的邀请。要详细了解快速邀请 API 及其先决条件、限制条件,以及如何使用此 API,请查看文献资料

群体启动

群体启动是一种多人游戏功能,可使人们能够轻松合并目标位置,从而使用户可用深度链接 URL 在应用中同行。

通过群体启动,可直接按最佳应用体验创建链接,还可以通过任何平台与所属社区分享链接。可用这些链接推广新地图,通过开发者事件设置游戏方式或发放有限的奖励。

要详细了解如何使用这些方法,以及了解可从中使用群体启动的示例情形,请查看文献资料

最近的 Oculus 开发者中心 (ODH) 更新中有新功能和对现有功能的改进,可改善日常开发工作流程。其中包括多人游戏测试,借此可直接在 ODH 中对多个设备进行群体启动测试。多人游戏测试适用于已注册群体目标位置,并且至少有一个二进制文件已上传到版本通道中的应用。要在有特定目标位置和大厅会话 ID 的一台或多台设备中启动应用。要详细了解多人游戏测试,请查看文献资料

此功能可简化实施并提高群体目标位置的可靠性。要开始在工作流程中进行多人游戏测试,请查看我们的文献资料指南。

下面,为了确保多人游戏 VR 体验令人感到舒适友好,我们来讨论一些可以采取的措施。

行进的可靠性

行进的可靠性是指用户可靠而正确地成功到达其预定目标位置。确保行进的可靠性很高,以防破坏用户的沉浸感及发生恼人的意外,这至关重要。

务必仅显示用户可以前往的有效目标位置。如果某个目标位置并非所有用户都能前往,则不能前往该目标位置的用户试图前往该目标位置时,应该向其显示错误消息。

标出传送失败位置有助于处理错误,以及将发生的事情告知用户。为确保体验流畅、公平、舒适而设计多人游戏 VR 应用时,务必确保用户能可靠地前往其预定目标位置。用户行进时,应该努力尽量减少完成行进过程所需的用户输入操作。

在下面这些常见情况中,对设计决策的简单更改可能有助于提高行进可靠性,并使用户的行进体验更加愉快:

  • 用户尚未学完教程,必须先学完教程,然后才能行进。在这种情况下,建议开发者允许他们略过教程直接前往目标位置。
  • 要求用户在行进之前完成游戏虚拟形象的设置,但他们尚未完成。避免出现此类情况的最佳方式是向其提供默认虚拟形象,以使其可以继续体验。
  • 要求用户完成必须从中填入凭据(电子邮件地址/密码)的登录屏幕中的步骤。如有可能则让他们在未看到登录屏幕的情况下继续操作,这样会使这种体验可靠得多。
  • 用户由于游戏相关原因(例如级别不够高,现金不够多,尚未解除目标位置的锁定,等等)而不能到达目标位置,并且在未发出任何消息的情况下转而显示主菜单。这种情况的最佳处理方式是告知用户为何其未能到达想去的目标位置。
  • 在某些情况下,用户已在开始行进后打开应用程序,但应用程序未将其送到目标位置。在这种情况下,最好在应用打开后测试向目标位置行进的方式,并确保其与尚未打开应用时的方式一致。对于用户不能离开当前位置或此举会引起问题的情况,如果有游戏相关原因,则最好向用户发出相应消息,告诉他们为何其目前不能前往新目标位置。

下面我们来看要在逐步营造多人游戏 VR 体验时记住的一些最佳实践。

最佳实践和资源

通过将平台 SDK 多人游戏功能融入应用,可以让人们更轻松地在应用中相聚,这有助于提高参与度和留存率。将平台多人游戏功能融入多人游戏 VR 应用有助于减少矛盾。应用相互一致有助于新玩家快速了解如何在无须了解自定义系统的情况下组队并开始一起玩。我们建议先添加目标位置和群体状态,然后添加名单、应用使用邀请功能和邀请链接。融入邀请功能的最佳做法是使应用中有易于找到的邀请按钮,用于开始执行应用使用邀请流程。

务必启用错误对话框Webhook,因为这二者可以提高多人游戏的可靠性,也可用于进行故障排除,还可使出错和有待改进之处更容易查明。

可用于了解平台 SDK 多人游戏功能及其相关 API 的最佳资源之一是多人游戏功能文献资料。可在这里找到我们讨论过的所有 SDK 功能,在应用程序中使用这些功能的最佳方式,示例用例和有助于入门的示例。

Connect 2021 会议构建和完善适用于 Quest 的多人游戏应用仔细研究了多人游戏功能,并讨论了如何将这些功能融入 Echo VR 游戏。会上还逐步详细说明了 SharedSpaces 示例。

如果想详细了解 Ready At Dawn 如何用 Oculus 平台多人游戏功能改善了 Echo VR 体验,请查看我们的博文,文中介绍了我们会见 Ready At Dawn 项目负责人 David Neubelt 时的情况,此次会面的目的是详细了解他们融入这些功能后,他们社区的发展受到了什么样的影响。

要详细了解 SharedSpaces 示例,请查看博文 SharedSpaces 多人游戏展示,文中讨论的是如何邀请朋友参加比赛,意外情况和 API 参考资料。博文怎样才能在 VR 中使人们快速聚集起来详细说明的是用于打造 SharedSpaces 应用程序的底层技术。

一定要查看我们以前的“营造多人游戏 VR 体验”系列博文,以详细了解 Quest 中的平台 SDK 多人游戏功能有什么用,可用其构建什么应用,以及怎样才能也将 SharedSpaces 示例用于开始工作:


系列简介

在此系列中,我们通过探究用 Unity 制作的开源 SharedSpaces 示例,讨论 Quest 中的平台 SDK 多人游戏功能“营造多人游戏 VR 体验”系列视频配有一系列博文,共有四个部分,此博文是第四部分。

如需了解有关平台 SDK 多人游戏功能以及 SharedSpaces 示例运行原理的更多信息,请参阅此 Connect 会话,其中介绍了如何为 Quest 构建和开发多人游戏应用。要试用 Unity SharedSpaces 示例,请访问 App Lab,并在自己的头戴设备上运行此示例。如需了解有关如何在自己的应用中使用平台 SDK 多人游戏功能的更多信息,请参阅有关多人游戏功能的文档。

如需了解有关 Meta Quest 的更多信息,请访问我们的网站、订阅我们的 YouTube 频道,或在 TwitterFacebook 上关注我们。如果您有任何问题、建议或反馈,请在开发者论坛中告诉我们。

如需了解有关 Meta Open Source 的更多信息,请访问我们的 Open Source 网站、订阅我们的 YouTube 频道,或在 TwitterFacebook 上关注我们。