2017-05-11 2 views
2

Ich versuche Papptasten-Klick mit Cardboard Unity SDK zu erkennen.So erkennen Sie die Pappe-Taste in Cardboard Unity SDK (Unity 5.6)

Ich verwende diesen

Google VR SDK for Unity v1.40 (April 2017), right now it's the latest 

Ich bin mit Unity 5.6.0f3, dies scheint auch neueste Zeit zu sein.

Ich bin nicht in der Lage auf den Button klicken mit

GvrViewer.Instance.Triggered 

Unity UI Ereignisse zu erkennen sind wie erwartet (Buttons und alle), jedoch muss ich ohne UI eine Aktion ausführen, wie auf Klick springen der Knopf im Karton.

In der neuesten Version Google VR SDK sagt, dass es die Unterstützung für die magnetische Schaltfläche entfernt hat. Allerdings verwende ich den Magnetknopf nicht. Meins hat Knopf, der mit Touch Screen arbeitet. (Veröffentlicht Version nach Google IO 2015)

Dies ist der Karton, die ich enter image description here

verwende ich kann einfach nicht herausfinden, wie der normalen Tastendruck zu erkennen.

Alle Informationen sind willkommen.

* Edit *

Es folgt die Linie von GvrViewer wo Triggered bevölkert ist.

private void DispatchEvents() { 
     // Update flags first by copying from device and other inputs. 
    Triggered = Input.GetMouseButtonDown(0); 
#if UNITY_HAS_GOOGLEVR && (UNITY_ANDROID || UNITY_EDITOR) 
    Triggered |= GvrController.ClickButtonDown; 
#endif // UNITY_HAS_GOOGLEVR && (UNITY_ANDROID || UNITY_EDITOR) 

Ich habe es in verschiedenen Kombinationen auf dem Handy überprüft es funktioniert nicht.

+0

Im Karton Taste ein Magnet ist, und wenn es das Telefon erkennt es als Bildschirm tippen gedrückt wird. Mit anderen Worten, in "Unity" sollte es ein linker Mausklick sein. – Hristo

+0

Magnetknopf war anders, es verwendete, um mit dem "Magnetometer" des Telefons zu interagieren. Es wurde in der ersten Version des Kartons verwendet, in der zweiten Version verwendet es Bildschirm Touch. Sie haben Recht, dass die Bildschirmberührung ein Linksklick sein sollte, so wird der Wert der Variablen "Triggered" für den betroffenen Rahmen aufgefüllt. Es funktioniert aber nicht, ich habe relevanten Code und Link hinzugefügt. – 11thdimension

+0

Haben Sie versucht [this] (https://github.com/CaseyB/UnityCardboardTrigger/blob/develop/MagnetSensor.cs) oder [this] (http://www.andrewnoske.com/wiki/Unity_-_Detecting_Google_Cardboard_Click#Detecting_Google_Cardboard_Magnetic_Button_Click_ -_Shorter_Version)? – Hristo

Antwort

2

Da ich nicht die Google VR-Methode zur Erkennung der Taste drücken konnte funktioniert (das ist GvrViewer.Instance.Triggered) Ich endete mit Berührungsereignisse von Unity auf Touch-Geräten bereitgestellt.

Gerade jetzt mein Zustand sieht wie folgt aus

Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Began 
Verwandte Themen