问题标签 [azure-spatial-anchors]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
140 浏览

azure-spatial-anchors - 什么是 FindObjectOfType参考?

我正在从示例中读取文件“InputInteractionBase”,并且有这段代码arRaycastManager = FindObjectOfType<ARRaycastManager>();。据我了解,AzureSpatialAnchors 使用 ARFoundation 的 ARRaycastManager 进行光线投射,但我在 Unity 场景中找不到这个游戏对象?

我目前正在尝试获取检测到的飞机,它应该来自 ARPlaneManager,但我找不到任何对它的引用。我该怎么做?

我认为我的主要问题是我不完全了解天蓝色空间锚如何与底层平台一起工作。如果有人能指出我正确的方向,我将不胜感激!

0 投票
1 回答
565 浏览

c# - 检测到 Azure 空间锚点后如何删除

我开发了一个统一应用程序,并且正在使用 azure 空间锚点。我发现无法删除检测到的 cloudAnchor。我试过这个:

我在控制台中得到了这个:

用于 SpatialAnchor 的 StoreAndWatcherTrackedState::TryRemoveAsync:6b77de6e-d8ba-44ce-b7cc-1f1d09bcc7a5

而这个错误:

OnError - 指定的空间锚点已与不同的商店关联

所以我有三个问题:

1. 错误是什么意思?

2. 是否可以从 azure 中删除检测到的锚点?

3. 如果是,正确的做法是什么?

0 投票
1 回答
261 浏览

azure-spatial-anchors - 使用自己的服务器存储 Azure 云锚点 ID

我想将 Cloud Anchor ID 存储/检索到我自己的服务器,而不是使用 Swagger。

我看了这篇文章,这位先生正在做的是创建自己的服务器,我不想这样做。我只是想将 Cloud Anchor ID 存储到我自己的服务器(我当然使用 Azure Cloud Anchor 服务帐户 ID 和服务本身的密钥)。

我有将从我的服务器上传和接收的脚本,但我不知道在 Azure Spatial Anchors 演示 (v1.3.2) 中的何处注入该代码以及在何处进行更改(我已删除 AzureSpatialAnchorsSharedAnchorDemoScript 中的 BaseSharingURL 检查。 CS)

更新1:

感谢 BroConnly,我设法在 AnchorExchnger.cs 中编辑了“ StoreAnchorKey 方法,并且可以成功存储锚键。

但是,现在,检索它是一个问题。据我所知,我已尝试对 RetrieveAnchorKey 和 RetrieveLastAnchorKey 进行更改。Here是脚本,请看一下并告诉我我错在哪里,因为我的调试控制台日志“无法检索最后一个锚键”

我还附加了AzureSpatialAnchorsSharedAnchorDemoScript.cs 脚本,我只做了一些小的更改,例如删除 BASEShare URL 检查并实例化我自己的服务器。

0 投票
1 回答
484 浏览

azure - 无法访问用于沉浸式 VR 的 Windows SpatialPerception

我正在 Unity 中为基于 UWP 构建的新 HP Reverb 进行开发。我想使用 Azure 空间锚在计算机之间共享这些锚。

由于 HP Reverb 是 InsideOut 跟踪耳机,因此 Spatial Anchors 工作正常,但我无法访问 SpatialAnchorExporter。使用Azure 示例项目从 Unity 连接到云会给我一个Access denied to spatial anchor exporter.错误。

在“功能”中,我启用了 SpatialPerception,我在 Unity 和 VS2019 中检查了它。

特别是以下几行告诉我我无权访问:

在没有 Azure 的情况下尝试做同样的事情会给我或多或少相同的错误,UnityEngine.XR.WSA.Sharing.WorldAnchorTransferBatch.ExportAsync()返回:

0 投票
1 回答
133 浏览

ios - Azure 空间锚创建观察程序导致断言错误

我想在我的 iOS 应用程序中使用 azure 空间锚点从云中定位锚点

我按照文档和示例项目来设置配置和功能,但是在运行时我遇到了崩溃

结果是

Assertion failed: (([NSString stringWithFormat: @"%@", [props objectForKey: key]].length < 125)), function LogTelemetryEvent, file /Users/vsts/agent/2.155.1/work/1/s/SpatialServices/Core/Telemetry/src/ios/Telemetry.mm, line 436.

0 投票
1 回答
429 浏览

c# - 当前 SDK 版本无法同时使用多个 CloudSpatialAnchorWatcher

当前问题

使用 Azure Spatial Anchors SDK for Unity 1.3.2 版我收到错误

在此 SDK 版本中不能同时运行多个观察程序。要求简历:。回复简历:。

这导致只有一个观察者运行我正在寻找的所有标识符的一小部分。

我做了什么

我正在使用面向 Android 移动平台的 Unity 版本 1.3.2 和 Unity3d 2019.2.5 的 Azure Spatial Anchors SDK。我最初遇到的问题是为“LocalShared”演示脚本中使用的 AnchorLocateCriteria 设置了太多标识符。

为了解决这个初始问题,我更改了示例,改为创建多个 CloudSpatialAnchorWatcher 实例,每个实例都分配了完整标识符列表的一小部分。我已将其设置为最大值 20,因为这将低于 35 左右的阈值,我通过使用该数量的标识符对其进行测试来确定该阈值,因为文档中没有给出固定数字。

在对此设置进行了一些测试之后,我认为它可以正常工作(由于缺少 try-catch 语句),但是在深入研究新锚点的创建时偶然发现了上述错误,这首先给了我不同的错误消息。

AnchorLocateCriteria 上设置的锚标识符无效。要求简历:。回复简历:。

语境

我现在处于评估状态,用例包括在公司大楼内对用户进行本地化,以进行消防和安全培训。这将要求我能够创建多个锚点以至少覆盖整个楼层(可能有 30 多个办公室),并允许用户在用户位于地板上的任何位置找到离他最近的锚点。

期望

该文档没有说明对单个观察者使用的标识符数量的任何限制,也没有说明一次只能激活一个观察者的任何内容,因此我最初希望能够将尽可能多的标识符放入观察者中希望或第二次能够将较小的标识符集分发给多个观察者。上面提到的错误消息表明这可能会在未来的 SDK 版本中发生变化,并且不是不可更改的限制。

我的主要问题是:我如何定位或检测多个标识符(100 个或更多),或者我是否必须考虑目前 Azure Spatial Anchors SDK 无法做到这一点。

其他问题(或我想知道的事情)将是 Azure Spatial Anchors 是否有任何关于此问题的公共路线图,或者我是否可以期待在不久的将来某个时候对此进行更改。

0 投票
1 回答
116 浏览

azure-spatial-anchors - 在哪里保存 ASA 共享 pin 文件

我已经按照这个 ASA 教程进行操作,但是有一件事对我来说不是很清楚。 https://docs.microsoft.com/en-us/windows/mixed-reality/mrlearning-asa-ch1

我的应用程序已经可以创建/共享和查找锚点,并且我已经对其进行了更改,因此它可以使用多个锚点,但是我不太清楚文件应该存储在哪里。

我的印象是演示使用的是 azure API 或其他东西,但它只显示了这个 url:

这似乎只是某种演示 url,然后演示中提供的类具有创建/共享/查找锚点的功能,但没有 get 功能?

所以我的问题是我们应该建立自己的文件服务器来保存和获取这些文件吗?我的印象是这将通过天蓝色工作。

我已经将大部分演示代码蚕食到我自己的 AnchorManager 脚本中,但是似乎有两个演示是我链接的一个,还有这个 github 存储库。 https://github.com/Azure/azure-spatial-anchors-samples

此处显示的代码太多:https ://pastebin.com/z5Pq94h2 获取共享锚的功能应该在第 379 行。

我的预期结果是 200,但这样显然会返回 404,因为文件不存在并且我无法上传。

0 投票
0 回答
177 浏览

unity3d - Unity3D:尝试通过 Hololens 观看时只出现一个立方体

我使用 Azure 空间锚点作为我的空间对齐策略。

如果我做错了什么,请告诉我

因此,如果用户端 Hololens 观看全息图,我希望观众也能看到相同的全息图。

我有一个主要场景,其中有一个全息图,它可以在我的用户端 Hololens 中正常工作。

现在我SpectatorView在这个场景中添加了一个预制件,将角色设置为User,并添加了 Hololens 的用户端 IP 地址。

按照这些步骤https://github.com/microsoft/MixedReality-SpectatorView#basic-unity-setup后(正确添加了密钥,更新了所有资产缓存)

我打开SpectatorView.HoloLens场景,现在我也有 SpectatorView 预制件,但是角色设置为Spectator并再次添加了用户端的 IP 地址。

在为用户端 Hololens 构建时,我生成了一个只有主场景存在的构建

对于旁观者的 Hololens,我生成了一个只有SpectatorView.HoloLens场景的构建。

全息图出现在用户端的 Hololens 中。但在旁观者侧的 Hololens 中什么也没有出现。

我哪里做错了?谢谢。

0 投票
0 回答
1101 浏览

c# - Unity3D:值不能为空。参数名称:obj:Microsoft.MixedReality.SpatialAlignment.SpatialAnchorsCoordinateService.RequestSessionStart()

我正在尝试在 Unity3D 和 Hololens 中使用旁观者视图。所以,我使用另一个 Hololens 作为旁观者。

我遵循了这些步骤 https://github.com/microsoft/MixedReality-SpectatorView#basic-unity-setup,但它不适用于我的 HoloLens (无法观看任何东西,什么都没有出现)。因此,我打开了同一应用程序的两个 Unity 实例来测试和调试问题。我在一个实例中打开了主场景,在另一个实例中打开了观众场景,并将用户 ip 设置为127.0.0.1

所以这些是我在用户端实例中得到的日志

在此处输入图像描述

我不确定这个问题是什么。是因为我使用的是 Unity 编辑器吗?或者这也是它没有出现在 Hololens 中的原因。我怎样才能解决这个问题?请帮忙!谢谢!

0 投票
1 回答
302 浏览

unity3d - 在远程应用中使用 hololens 空间锚来渲染空间映射

通过在 Unity 2018.4.12f 中使用 MRTK_V2,我尝试使用第一代 hololens 对多层建筑进行空间映射。hololens 提供了我希望在远程位置(在扫描的建筑物外运行统一应用程序的计算机)近乎实时(大约 10 秒)呈现的空间映射数据。这样做的想法是,远程位置的人可以跟踪扫描过程并在他/她的眼前看到建筑物的 3D 模型,同时也可以在 3D 模型中跟踪 hololens 用户。

我已经拥有映射和跟踪功能,并且能够通过套接字发送序列化网格并在另一端反序列化它们。但是,我无法在接收端的正确位置渲染网格。

在发送网格之前,我尝试将单个网格的顶点从本地空间转换到世界空间,但这不起作用,因为网格的位置由连接到它的世界锚点控制。断开锚点似乎不利,因为这会导致数据出现大量漂移。我想将所有网格连接到空间中的一个点,将它们转换为世界空间,但在我目前对空间映射概念的理解中,这是不可能的。

现在我想知道我是否可以在接收端渲染相对于世界锚点的网格,例如通过使用天蓝色的空间锚点。我可以想象这是不可能的,因为锚点可能需要与现实世界建立联系。此外,锚点在运行时确实会改变它们的位置,因此需要不断更新,使得锚点的使用不太理想。

任何帮助将不胜感激!