如何在Unity Vuforia中丢失目标上的多个画布?

时间:2016-09-28 13:17:30

标签: canvas unity3d augmented-reality vuforia

我知道下面的代码在Vuforia丢失的跟踪中消失了画布。 在DefaultTrackableEvent.cs下,

Canvas[] canvasComponents = GetComponentsInChildren<Canvas>(true);

        // Disable canvas:
        foreach (Canvas component in canvasComponents)
        {
            component.enabled = false;
        }

现在我有3个画布,我希望2个画布元素在目标丢失时消失。以上不适用于此!你能帮我解决一下吗?

2 个答案:

答案 0 :(得分:0)

如果您知道要启用哪一项,可以使用jarexists语句跳过它。

if

现在将该特定画布的标记设置为Canvas[] canvasComponents = GetComponentsInChildren<Canvas>(true); // Disable canvas: foreach (Canvas component in canvasComponents) { if(component.gameObject.tag != "someTag") component.enabled = false; }

希望这有帮助

答案 1 :(得分:0)

我通过将画布保留在父GameObject中并将父GameObject放在Hierarchy中的ImageTarget中来使其工作。

BTW,始终确保要在TargetLost上隐藏的画布必须始终位于层次结构中的ImageTarget中!