Freigeben über


Kopfblick in Unity

Gaze ist die primäre Möglichkeit für Benutzer, Hologramme zu verwenden, die Ihre App in Mixed Reality erstellt.

Implementieren von Head-Gaze

Konzeptionell bestimmen Sie den Kopfblick , indem Sie einen Strahl vom Headset des Benutzers nach vorne projizieren, um zu sehen, was er trifft. In Unity werden die Kopfposition und -richtung des Benutzers über die Kamera, insbesondere UnityEngine.Camera.Standard, angezeigt. transform.forward und UnityEngine.Camera.Standard. transform.position.

Beim Aufrufen von Physics.RayCast erhalten Sie einen RaycastHit , der Informationen über die Kollision enthält, einschließlich des 3D-Kollisionspunkts und des anderen GameObject den Kopf-Blick-Ray-Treffer.

Beispiel: Implementieren von Head-Gaze

void Update()
{
       RaycastHit hitInfo;
       if (Physics.Raycast(
               Camera.main.transform.position,
               Camera.main.transform.forward,
               out hitInfo,
               20.0f,
               Physics.DefaultRaycastLayers))
       {
           // If the Raycast has succeeded and hit a hologram
           // hitInfo's point represents the position being gazed at
           // hitInfo's collider GameObject represents the hologram being gazed at
       }
}

Bewährte Methoden

Während im obigen Beispiel ein einzelner Raycast aus der Updateschleife ausgelöst wird, um das Ziel zu finden, auf das der Hauptpunkt des Benutzers verweist, wird empfohlen, ein einzelnes Objekt zum Verwalten aller Head-Gaze-Prozesse zu verwenden. Die Kombination Ihrer Kopf-Blick-Logik spart Ihrer App wertvolle Verarbeitungsleistung und begrenzt Ihr Raycasting auf eins pro Frame.

Visualisieren des Kopf-Blicks

Genau wie bei einem Mauszeiger auf einem Computer sollten Sie einen Cursor implementieren, der den Kopfblick des Benutzers darstellt. Zu wissen, auf welche Inhalte ein Benutzer abzielt, erhöht das Vertrauen in die Interaktion.

Kopfblick im Mixed Reality Toolkit

Sie können über den Eingabe-Manager in MRTK auf head-gaze zugreifen.

Nächster Entwicklungsprüfpunkt

Wenn Sie die Unity-Entwicklungsreise verfolgen, die wir uns vorgenommen haben, befinden Sie sich mitten in der Erkundung der MRTK-Kernbausteine. Von hier aus können Sie mit dem nächsten Baustein fortfahren:

Oder fahren Sie mit den Funktionen und APIs der Mixed Reality-Plattform fort:

Sie können jederzeit zu den Prüfpunkten für die Unity-Entwicklung zurückkehren.

Siehe auch