wake-up-neo.com

Erstellen Sie Objekte mit Bodenebenenerkennung nur einmal mit Vuforia und Unity

Ich versuche, eine AR-App mit Unity & Vuforia zu erstellen. Ich habe ein 3D-Modell, das erstellt werden muss, wenn die Bodenebene erkannt wird. Dies muss jedoch nur einmal geschehen. Die Art und Weise, in der Vuforia arbeitet, erzeugt immer Objekte, wenn eine neue Ebene entdeckt wird. Was ich also tun muss, ist, entweder die Ebene nur einmal zu erkennen oder das Objekt nur einmal zu erzeugen. Da ich neu bei Unity bin, brauche ich Hilfe dabei. Toll, wenn mir jemand sagen könnte, was ich tun muss, um das zu erreichen.

4
Anup G Prasad

In Ihrer App sollten Sie ein Plane Finder-Objekt mit den folgenden Eigenschaften haben, die standardmäßig festgelegt sind
 enter image description here

Dem Plane Finder-Objekt ist eine Verhaltenskomponente zugeordnet, die eine Position Content-Methode aufruft, wenn eine Ebene gefunden wurde. Diese Methode gehört zu Content Positioning Behaviour und macht eine Instanz (Clone) Ihres Ground Plane Stage. Um mehr als eine Instanz zu vermeiden, sollten Sie das vuforia-Deploy Stage Once-Skript hier importieren: https://library.vuforia.com/articles/Solution/ground-plane-guide.html und Sie sollten den Plane Finder Behaviour ändern folgende:  enter image description here

3
Hristo

Vuforia wurde aktualisiert. Es gibt kein DeploymentStageOnce-Skript. Um das Duplizieren zu stoppen, während wir berühren, müssen wir die Option „Bühne duplizieren“ im Verhalten zur Inhaltspositionierung (Skript) deaktivieren. Überprüfen Sie den Inspektor, wenn Sie auf Ebenen-Finder klicken. enter image description here

4
zyonneo

Ich kämpfte lange damit, kurz gesagt, wir mussten AnchorInputListenerBehaviour nach Treffer deaktivieren . 1.- Ich habe ein neues Skript bei PlaneFinder mit folgendem Code angehängt:

<!-- language-all: c# -->
public void OnInteractiveHitTest(HitTestResult result)
{
    var listenerBehaviour = GetComponent<AnchorInputListenerBehaviour>();
    if (listenerBehaviour != null)
    {
        listenerBehaviour.enabled = false;
    }
}

2.- Ich habe ein Ereignis zum Plane Finder Behavior hinzugefügt

 enter image description here

Das ist alles, ich hoffe es wird nützlich sein

Für aktualisierte Versionen:

 enter image description here

gehen Sie zur Einstellung "Erweitert" und zum Skript "On Interactive Hit Test" -> Wählen Sie für das Skript die Option "Aus". 

1
Daddy