练习 - 集成 Azure 空间定位点

已完成

在此模块中,你将了解如何使用“Azure 空间定位点”。 将跟踪对象的位置存储为 Azure 空间定位点。 查询定位点后,将显示一个箭头引导你前往该位置。

了解 Azure 空间定位点

Azure 空间定位点是 Azure 云服务系列的一部分,用于保存定位点位置。 可以根据定位点 ID 从云中检索保存的定位点位置。HoloLens、iOS 和 Android 等多平台设备均可共享和访问此定位点位置。

详细了解 Azure 空间定位点

准备 Azure 空间定位点

在开始之前,需要在 Azure 门户中创建空间定位点资源。 了解如何创建空间定位点资源

准备场景

本部分将介绍如何配置场景并进行必要的更改。

  1. 在“层次结构”窗口中选择 MRTK XR Rig> 相机偏移对象,然后使用“检查器”窗口中的“添加组件”按钮添加AR 定位点管理器(脚本)

    Screenshot of Unity with AR AnchorManager script selected.

  2. 在“项目”窗口中,导航到“资产”>“MRTK.Tutorials.AzureCloudServices”>“预制件”>“管理器”。

    Screenshot of Unity with AnchorManager prefab selected.

  3. 在“管理器”文件夹中,将预制件“定位点管理器”拖放到场景层次结构中 。

  4. 选择“层次结构”中的“定位点管理器”GameObject,然后在“检查器”部分中查找空间定位点管理器(脚本)。 找到“空间定位点帐户 ID”和“空间定位点帐户密钥”字段,并添加在上一课中创建的凭据。

    Screenshot of Unity with newly added AnchorManager prefab still selected.

  5. 现在,在场景层次结构中找到 Scene Controller 对象并选择它。 会显示“场景控制器”检查器。

    Screenshot of Unity with SceneController script component configured.

  6. “场景控制器”组件中的“定位点管理器”字段为空。 将“定位点管理器”从场景的“层次结构”拖放到该字段,然后保存场景。

生成应用并将其部署到 HoloLens 2

注意

在 HoloLens 2 上生成和测试不是强制性的。 如果你没有 HoloLens 设备,还可以在 HoloLens 2 仿真器上进行测试。 你可以在 HoloLens.com 购买设备。

Azure 空间定位点无法在 Unity 中运行,因此,若要测试 Azure 空间定位点的功能,需要将项目部署到设备。

提示

如需回顾如何生成 Unity 项目并将其部署到 HoloLens 2,请查看本教程的生成和部署应用程序部分的说明。

在 HoloLens 2 上运行该应用,并按照应用中的说明进行操作

创建一个用于存储位置的定位点

在本部分中,你将保存对象位置。

  1. 运行应用程序,并选择主菜单中的“设置对象”。

  2. 输入要保存的对象的“名称”,然后选择“设置对象”以继续接下来的步骤。 若要添加有关对象的详细信息,请选择“图像”,然后描述对象。

  3. 若要保存位置,请选择“保存位置”

  4. 会显示一个可在要保存的位置上移动和放置的定位点指针。 之后,你将看到一个“确认”弹出窗口。 若要确认并保存位置,请选择“是”,或者也可以通过选择“否”来更改位置,然后选择另一个位置

  5. 通过选择“是”来确认位置后,位置和定位点 ID 将保存在 Azure 云存储中。 保存后,定位点中会显示对象标记和该对象的名称。

用于查找定位点位置的查询

  1. 成功保存定位点位置后,可通过在主菜单中选择“搜索对象”查找定位点位置

  2. 选择“搜索对象”后,在弹出窗口中输入要搜索的对象的名称。

  3. 选择“搜索对象”。 如果以前保存过该对象,并且在数据库中找到了该对象,则会获得包含此对象所有详细信息的对象卡。

  4. 选择“显示位置”以查找对象。 系统将从云存储查询对象地址。

  5. 成功检索到位置后,可通过出现的箭头定向到对象位置。 跟随此箭头,直到找到对象。

  6. 找到对象后,对象名称将出现在顶部,并且箭头标记将会消失。 选择“对象标记”以查看对象的详细信息