我正在使用Vuforia创建一个HoloLens应用程序,每个标记总共有9个标记和相关的GameObjects。我希望我的应用程序一次只显示一个对象:例如,我扫描第一个标记,显示第一个对象;当我扫描第二个标记时,我希望第一个对象消失,只有第二个要显示的对象,依此类推。
我尝试在每个GameObject中添加一个脚本来破坏场景中的GameObjects,但这样做不起作用。
我对C#知之甚少,所以请指出具体的代码。
全部谢谢!
答案 0 :(得分:0)
为了同时控制要检测的最大目标数量,您需要使用Vuforia的提示:
Vuforia::setHint(Vuforia::HINT_MAX_SIMULTANEOUS_IMAGE_TARGETS, <desired number>);
这就是你问的 - 然而,根据你在评论中写的内容,这并不是你真正需要的。如果您想对其他目标使用扩展跟踪,则意味着它们也必须被检测到。所以,你真正需要的是 - 一旦你有了一个目标,就知道它现在是否被扩展,并采取相应的行动。 这可以通过以下方式完成:
if ( result.getStatus() == Vuforia::TrackableResult::EXTENDED_TRACKED )
答案 1 :(得分:0)
这是Vuforia配置中的一个选项。
我看到您提到这并不适用于扩展跟踪。我自己没有注意到这种行为,但如果需要,您可以使用GameObject.SetActive()
手动切换对象的活动状态。