1

我正在尝试使用 Unity 为 Hololens 1 开发应用程序。我想要归档的是为特定房间(如博物馆中的特定房间)的用户提供预先设计的体验。

我的想法是,我用 Hololens 扫描房间,使用 Unity 中的扫描网格放置虚拟内容(使用扫描网格将内容放置在房间中的正确位置),然后构建应用程序并将其部署到设备。目标是,我可以给博物馆的参观者 Hololens,他可以去这个房间,在房间里(房间里的任何地方)启动应用程序,并在正确的地方看到虚拟对象(例如特定的展览,隔壁房间的门,在房间的中间或....)。我不希望访客自己放置物品,也不希望工作人员提前(在分发耳机之前)这样做。我想为一个特定的房间设计完整的 Unity 体验。

每次我搜索这样的用例时,我都没有真正找到起点。不知何故,应用程序必须识别房间中耳机的位置(或找到预设的锚点或类似的东西)。

我真的认为这可能是 hololens 的一个非常基本的用例。

有没有办法实现这个目标?后来我想为博物馆的所有房间设计多种体验(也许每个房间都有一个单独的应用程序)。

我想我必须在这个房间里找到预设的锚点,然后将内容与它相关。但是如何定义这个锚点并确保每个访问者都能找到它,从而使虚拟内容出现在相应的现实世界对象上呢?

4

1 回答 1

0

您应该从空间锚技术开始。Spatial Anchor 可以帮助您根据系统的理解将 GameObject 锁定在现实世界中的某个位置。请参阅此链接以获取更多信息:空间锚点。然后,您需要在现实世界中持久化本地空间锚,本文档展示了如何使用 WorldAnchorStore 类在会话中持久化 WorldAnchor 的位置:Unity中的持久性。如果您还想与多个客户分享经验,以共同查看位于空间固定点的同一个全息图或与之交互。您需要从一台设备导出锚点并通过第二台 HoloLens 设备导入,请遵循本指南:Unity 中的本地锚点传输

此外,在您可以使用Azure 空间锚点的情况下,我们强烈建议您使用它。Azure Spatial Anchors 为跨会话和设备共享体验提供了便利,您可以快速入门:How to create and locate anchors using Azure Spatial Anchors in Unity

于 2020-09-24T07:11:32.700 回答