Anvisieren und Bestätigen
Gaze and Commit ist ein grundlegendes Eingabemodell, das eng mit der Art und Weise zusammenhängt, wie wir mit unseren Computern mit der Maus interagieren: Zeige & Klick. Auf dieser Seite stellen wir zwei Arten von Blickeingaben (Kopf- und Augenaugen) und verschiedene Arten von Commitaktionen vor. Gaze and Commit wird als weit entferntes Eingabemodell mit indirekter Manipulation betrachtet. Es wird am besten für die Interaktion mit holografischen Inhalten verwendet, die außerhalb der Reichweite sind.
Mixed Reality-Headsets können die Position und Ausrichtung des Kopfes des Benutzers verwenden, um ihren Kopfrichtungsvektor zu bestimmen. Stellen Sie sich den Blick als einen Laser vor, der direkt zwischen den Augen des Benutzers geradeaus zeigt. Dies ist eine ziemlich grobe Annäherung hinsichtlich der Position, die der Benutzer betrachtet. Ihre Anwendung kann diesen Ray mit virtuellen oder realen Objekten überschneiden und einen Cursor an dieser Stelle zeichnen, um den Benutzer darüber zu informieren, was er anvisiert.
Zusätzlich zum Kopfaugen enthalten einige Mixed Reality-Headsets, wie z. B. HoloLens 2, Eye Tracking-Systeme, die einen Augen-Blick-Vektor erzeugen. Dies ermöglicht eine präzisere Messung der Position, die der Benutzer betrachtet. In beiden Fällen stellt der Blick ein wichtiges Signal für die Absicht des Benutzers dar. Je besser das System die beabsichtigten Aktionen des Benutzers interpretieren und vorhersagen kann, desto besser wird die Benutzerzufriedenheit und Leistung verbessert.
Im Folgenden finden Sie einige Beispiele dafür, wie Sie als Mixed Reality-Entwickler von Kopf- oder Blick profitieren können:
- Ihre App kann den Blick mit den Hologrammen in Ihrer Szene überschneiden, um zu bestimmen, wo die Aufmerksamkeit des Benutzers ist (genauer mit Blick).
- Ihre App kann Gesten und Controllerdrücke basierend auf dem Blick des Benutzers kanalisieren, wodurch der Benutzer nahtlos auswählen, aktivieren, greifen, scrollen oder anderweitig mit seinen Hologrammen interagieren kann.
- Ihre App kann es dem Benutzer ermöglichen, Hologramme auf realen Oberflächen zu platzieren, indem er seinen Blickstrahl mit dem Räumlichen Zuordnungsgitter überschneiden.
- Ihre App kann erkennen, wenn der Benutzer nicht in die Richtung eines wichtigen Objekts schaut. Dies kann dazu führen, dass Ihre App visuelle und audiorelevante Hinweise gibt, um sich diesem Objekt zuzuwenden.
Geräteunterstützung
Eingabemodell | HoloLens (1. Generation) | HoloLens 2 | Immersive Headsets |
Anvisieren mit dem Kopf und Ausführen | ✔️ Empfohlen | ✔️ Empfohlen (dritte Auswahl – Siehe andere Optionen) | ➕ Alternative Option |
Anvisieren mit den Augen und Ausführen | ❌ Nicht verfügbar | ✔️ Empfohlen (dritte Auswahl – Siehe andere Optionen) | ❌ Nicht verfügbar |
Demo der Entwurfskonzepte für Kopf- und Eyetracking
Wenn Sie die Entwurfskonzepte für Kopf- und Eyetracking in Aktion sehen möchten, sehen Sie sich unten unsere Videodemo Entwerfen von Hologrammen: Kopf- und Eyetracking an. Wenn Sie fertig sind, fahren Sie mit einem ausführlicheren Einblick in bestimmte Themen fort.
Dieses Video stammt aus der HoloLens 2-App "Entwerfen von Hologrammen". Sie können das vollständige Erlebnis hier herunterladen und genießen.
Anvisieren
Blick oder Kopf?
Bei der Frage, ob Sie das Eingabemodell "Eye-Gaze and Commit" oder "Head-gaze and commit" verwenden sollten, gibt es mehrere Überlegungen. Wenn Sie für ein immersives Headset oder für HoloLens (1. Generation) entwickeln, ist die Wahl einfach: Head-Gaze und Commit. Wenn Sie für HoloLens 2 entwickeln, wird die Wahl etwas schwieriger. Es ist wichtig, die Vorteile und Herausforderungen zu verstehen, die mit jedem von ihnen verbunden sind. In der folgenden Tabelle haben wir einige allgemeine Pro's und Con's zusammengestellt, um das Ziel von Kopf- und Augenaugen zu kontrastieren. Dies ist noch lange nicht abgeschlossen, und wir empfehlen, hier mehr über das Targeting der Blicke in Mixed Reality zu erfahren:
- Eye Tracking auf HoloLens 2: Allgemeine Einführung unserer neuen Eye-Tracking-Funktion auf HoloLens 2 einschließlich einiger Entwickleranleitungen.
- Interaktion mit Blick: Entwurfsüberlegungen und Empfehlungen bei der Planung der Verwendung von Eye Tracking als Eingabe.
Targeting auf den Blick | Anvisieren mit dem Kopf |
Schnell! | Langsamer |
Geringer Aufwand (kaum Körperbewegungen erforderlich) | Kann ergründend sein - Mögliche Beschwerden (z. B. Nackenzerrung) |
Erfordert keinen Cursor, aber subtiles Feedback wird empfohlen. | Erfordert die Anzeige eines Cursors |
Keine glatten Augenbewegungen – z. B. nicht gut zum Zeichnen | Kontrollierter und expliziter |
Schwierig für kleine Ziele (z. B. winzige Schaltflächen oder Weblinks) | Zuverlässige! Tolles Fallback! |
... | ... |
Unabhängig davon, ob Sie head-gaze oder eye-gaze für Ihr Eingabemodell mit Blick und Commit verwenden, verfügt jedes über unterschiedliche Entwurfseinschränkungen. Diese werden separat in den Artikeln "Eye-Gaze" und "Commit" und "Head-Gaze" und "Commit" behandelt.
Cursor
Für den Kopfblick sollten die meisten Apps einen Cursor oder eine andere akustische/visuelle Anzeige verwenden, um dem Benutzer Vertrauen in die Interaktion zu geben.
Normalerweise positionieren Sie diesen Cursor in der Welt, in der ihr Kopfblickstrahl zuerst ein Objekt schneidet, das ein Hologramm oder eine reale Oberfläche sein kann.
Für den Blick empfehlen wir generell, keinen Cursor zu zeigen, da dies für den Benutzer schnell ablenkend und lästig werden kann.
Heben Sie stattdessen visuelle Ziele auf subtile Weise hervor, oder verwenden Sie einen schwachen Cursor, um vertrauen zu können, mit was der Benutzer interagieren wird. Weitere Informationen finden Sie in unserem Designleitfaden für augenbasierte Eingaben zu HoloLens 2.
Abbildung: Ein visueller Beispielcursor zum Anzeigen des Blicks
Commit
Nachdem wir über verschiedene Möglichkeiten gesprochen haben, ein Ziel zu betrachten , lassen Sie uns ein wenig mehr über den Commit-Teil in Gaze and Commit sprechen. Nach dem Ziel eines Objekts oder UI-Elements kann der Benutzer mithilfe einer sekundären Eingabe interagieren oder darauf klicken. Dies wird als Bestätigungsschritt (Commit) des Eingabemodells bezeichnet.
Die folgenden Methoden zum Ausführen werden unterstützt:
- Handbewegung mit Luft tippen (d. h., heben Sie Ihre Hand vor Ihnen und bringen Sie Ihren Zeigefinger und Daumen zusammen)
- Sagen Sie "Auswählen" oder einen der Sprachbefehle für die Zielsprache
- Drücken einer einzelnen Schaltfläche auf einem HoloLens Clicker
- Drücken Sie die Schaltfläche "A" auf einem Xbox Gamepad
- Drücken Sie die Schaltfläche "A" auf einem adaptiven Xbox-Controller.
Geste "Blick" und "Luft tippen"
„In die Luft tippen“ ist eine Tippbewegung mit aufrecht gehaltener Hand Um einen Lufttipp zu verwenden, heben Sie den Zeigefinger an die bereite Position, drücken Sie dann mit dem Daumen, und heben Sie Den Zeigefinger wieder hoch, um loszulassen. Bei HoloLens (1. Generation) ist der Luft tippen die am häufigsten verwendete sekundäre Eingabe.
Finger in der bereiten Position
Drücken Sie den Finger nach unten, um zu tippen oder zu klicken
Lufthahn ist auch auf HoloLens 2 verfügbar. Es wurde von der ursprünglichen Version gelockert. Fast alle Arten von Pinches werden jetzt unterstützt, solange die Hand aufrecht ist und still hält. Dies erleichtert es Benutzern, die Geste zu erlernen und zu verwenden. Dieser neue Lufthahn ersetzt den alten durch dieselbe API, sodass vorhandene Anwendungen nach der erneuten Kompilierung für HoloLens 2 automatisch das neue Verhalten aufweisen.
Sprachbefehl "Blick" und "Auswählen"
Sprachbefehle sind eine der wichtigsten Interaktionsmethoden in Mixed Reality. Es bietet einen leistungsstarken Freihandmechanismus, um das System zu steuern. Es gibt verschiedene Arten von Sprachinteraktionsmodellen:
- Der generische "Select"-Befehl, der eine Klicksteuerung oder einen Commit als sekundäre Eingabe verwendet.
- Objektbefehle (z. B. "Close" oder "Make it bigger") führen eine Aktion als sekundäre Eingabe aus und binden sie zu einer Aktion.
- Für globale Befehle (z. B. "Start starten") ist kein Ziel erforderlich.
- Unterhaltungsbenutzeroberflächen oder Entitäten wie Cortana verfügen über eine KI-Funktion für natürliche Sprache.
- Benutzerdefinierte Sprachbefehle
Weitere Informationen zu Details und einer umfassenden Liste der verfügbaren Sprachbefehle und deren Verwendung finden Sie in unserer Anleitung zum Sprachbefehl .
Blick und HoloLens Clicker
Der HoloLens Clicker ist das erste Peripheriegerät, das speziell für HoloLens entwickelt wurde. Es ist in der HoloLens Development Edition (1. Generation) enthalten. Mit dem HoloLens Clicker kann ein Benutzer mit minimaler Handbewegung klicken und als sekundäre Eingabe commiten. Der HoloLens Clicker stellt mithilfe von Bluetooth Low Energy (BTLE) eine Verbindung mit HoloLens (1. Generation) oder HoloLens 2 bereit.
Weitere Informationen und Anweisungen zum Koppeln des Geräts
Bild: HoloLens Clicker
Blick und Xbox Wireless Controller
Die Xbox Wireless Controller führt mithilfe der Schaltfläche "A" eine Klicksteuerung als sekundäre Eingabe aus. Das Gerät ist einem Standardsatz von Aktionen zugeordnet, die beim Navigieren und Steuern des Systems helfen. Wenn Sie den Controller anpassen möchten, verwenden Sie die Xbox-Zubehöranwendung, um Ihre Xbox Wireless Controller zu konfigurieren.
Koppeln eines Xbox-Controllers mit Ihrem PC
Bild: Xbox Wireless Controller
Blick und xbox adaptiver Controller
Der Xbox Adaptive Controller wurde in erster Linie für die Bedürfnisse von Spielern mit eingeschränkter Mobilität entwickelt und ist ein einheitlicher Hub für Geräte, der Mixed Reality zugänglicher macht.
Der adaptive Xbox Controller führt eine Klicksteuerung als sekundäre Eingabe durch, indem die Schaltfläche "A" verwendet wird. Das Gerät ist einem Standardsatz von Aktionen zugeordnet, die beim Navigieren und Steuern des Systems helfen. Wenn Sie den Controller anpassen möchten, verwenden Sie die Xbox Zubehör-Anwendung, um Ihren adaptiven Xbox Controller zu konfigurieren.
Xbox Adaptive Controller
Schließen Sie externe Geräte wie Schalter, Tasten, Halterungen und Joysticks an, um ein benutzerdefiniertes Controllererlebnis zu erstellen, das einzigartig für Sie ist. Tasten-, Fingerabdruck- und Triggereingaben werden mit Hilfsgeräten gesteuert, die über 3,5-mm-Buchsen und USB-Ports verbunden sind.
Xbox Adaptive Controller-Anschlüsse
Anweisungen zum Koppeln des Geräts
Weitere Informationen, die auf der Xbox-Website verfügbar sind
Zusammengesetzte Gesten
In die Luft tippen
Die Luft tippen-Geste (und die anderen Gesten unten) reagieren nur auf ein bestimmtes Tippen. Um andere Tippen zu erkennen, z. B. Menü oder Griff, muss Ihre Anwendung direkt die Interaktionen auf niedrigerer Ebene verwenden, die oben im Abschnitt zwei Gesten der wichtigsten Komponenten beschrieben sind.
Tippen und halten Sie
„Halten“ bedeutet einfach, die Position mit dem Finger nach unten beim „In die Luft tippen“ beizubehalten. Die Kombination aus Luft tippen und halten ermöglicht verschiedene komplexere "Klick-und-Ziehen"-Interaktionen, wenn sie mit armer Bewegung kombiniert werden, z. B. das Aufnehmen eines Objekts, anstatt es zu aktivieren, oder sekundäre Interaktionen mit dem Mousedown, z. B. das Anzeigen eines Kontextmenüs. Beim Entwerfen dieser Geste ist jedoch Vorsicht geboten, da Benutzer während einer erweiterten Geste dazu neigen können, ihre Handhaltungen zu entspannen.
Manipulation
Manipulationsgesten können verwendet werden, um ein Hologramm zu verschieben, die Größe zu ändern oder zu drehen, wenn das Hologramm 1:1 auf die Handbewegungen des Benutzers reagiert. Eine Verwendungsmöglichkeit für solche 1:1-Bewegungen ist es, den Benutzer in der Umgebung zeichnen oder malen zu lassen. Die anfängliche Zielbestimmung für eine Manipulationsgeste sollte durch Anvisieren oder Zeigen erfolgen. Sobald das Tippen und Halten beginnt, wird jede Objektmanipulation durch Handbewegungen verarbeitet, sodass sich der Benutzer während der Bearbeitung umsehen kann.
Navigation
Navigationsgesten funktionieren wie ein virtueller Joystick und können zur Navigation in Widgets der Benutzeroberfläche, z. B. Radialmenüs, verwendet werden. Sie tippen und halten, um die Geste zu starten, und bewegen dann Ihre Hand in einem normalisierten 3D-Würfel, der um die erste Betätigung herum angeordnet ist. Sie können Ihre Hand entlang der X-, Y- oder Z-Achse von einem Wert von -1 auf 1 bewegen, wobei 0 der Startpunkt ist. Mithilfe der Navigation können geschwindigkeitsbasierte kontinuierliche Gesten zum Scrollen oder Zoomen erstellt werden, ähnlich dem Scrollen bei einer 2D-Benutzeroberfläche durch Klicken mit der mittleren Maustaste und anschließendes Bewegen der Maus nach oben und unten.
Navigation mit Schienen bezieht sich auf die Fähigkeit, Bewegungen in einer bestimmten Achse zu erkennen, bis ein bestimmter Schwellenwert auf dieser Achse erreicht ist. Dies ist nur nützlich, wenn die Bewegung in mehr als einer Achse vom Entwickler in einer Anwendung aktiviert wird, z. B. wenn eine Anwendung so konfiguriert ist, dass Navigationsgesten über die X-, Y-Achse, aber auch die angegebene X-Achse mit Schienen erkannt werden. In diesem Fall erkennt das System Handbewegungen über die X-Achse, solange sie in einer imaginären Schiene (Führung) auf der X-Achse verbleiben, wenn die Handbewegung auch auf der Y-Achse erfolgt.
Innerhalb von 2D-Apps können Benutzer mit vertikalen Navigationsgesten innerhalb der App scrollen, zoomen oder ziehen. Dadurch werden virtuelle Fingerberührungen in der App eingeführt, um Gesten für die Toucheingabe desselben Typs zu simulieren. Benutzer können auswählen, welche dieser Aktionen ausgeführt werden, indem Sie zwischen den Tools auf der Leiste über der Anwendung umschalten, indem Sie entweder die Schaltfläche auswählen oder "Scroll/Drag/Zoom> Tool"< sagen.
Weitere Informationen zu zusammengesetzten Gesten
Gestenerkennung
Ein Vorteil der Gestenerkennung ist, dass Sie eine Gestenerkennung nur für die Gesten konfigurieren können, die das derzeit zielorientierte Hologramm akzeptieren kann. Die Plattform führt nur bei Bedarf Mehrdeutigkeiten durch, um diese speziellen unterstützten Gesten zu unterscheiden. Auf diese Weise kann ein Hologramm, das nur den Luftzapf unterstützt, eine beliebige Dauer zwischen Press und Release akzeptieren, während ein Hologramm, das sowohl das Tippen als auch das Halten unterstützt, den Tippen auf einen Haltewert nach dem Haltezeitschwellenwert heraufstufen kann.
Handerkennung
HoloLens erkennt Handgesten, indem die Position einer oder beider Hände, die für das Gerät sichtbar sind, verfolgt wird. HoloLens erkennt Hände, wenn sie sich entweder im Bereitschaftszustand (Handrücken mit nach oben gerichtetem Zeigefinger zu Ihnen gewandt) oder im gedrückten Zustand (Handrücken mit nach unten gerichtetem Zeigefinger zu Ihnen gewandt) befinden. Wenn sich die Hände in anderen Posen befinden, ignoriert HoloLens diese. Für jede Hand, die HoloLens erkennt, können Sie auf ihre Position ohne Orientierung und ihren gedrückten Zustand zugreifen. Wenn sich die Hand dem Rand des Gestenrahmens nähert, erhalten Sie auch einen Richtungsvektor, den Sie dem Benutzer zeigen können, damit er weiß, wie er seine Hand bewegen muss, um sie dorthin zurückzubringen, wo sie von HoloLens erkannt werden kann.
Gestenrahmen
Für Gesten auf HoloLens muss sich die Hand innerhalb eines Gestenrahmens befinden, in einem Bereich, den die Gestenerkennungskameras angemessen sehen können, von der Nase bis zur Taille und zwischen den Schultern. Die Nutzer müssen in diesem Bereich der Anerkennung sowohl für den Erfolg des Handelns als auch für ihren eigenen Komfort geschult werden. Viele Benutzer gehen zunächst davon aus, dass sich der Gestenrahmen über HoloLens in ihrer Sicht befinden muss, und halten ihre Arme unangenehm hoch, um zu interagieren. Bei Verwendung des HoloLens Clickers ist es nicht erforderlich, dass sich hände innerhalb des Gestenrahmens befindet.
Insbesondere bei kontinuierlichen Gesten besteht ein gewisses Risiko, dass Benutzer ihre Hände außerhalb des Gestenrahmens bewegen, während sie in der Mitte der Geste z. B. ein holografisches Objekt bewegen und ihr beabsichtigtes Ergebnis verlieren.
Sie sollten die folgenden drei Aspekte berücksichtigen:
Benutzerschulungen zur Existenz des Gestenrahmens und zu ungefähren Grenzen. Dies wird während der HoloLens-Einrichtung gelehrt.
Benachrichtigen von Benutzern, wenn sich ihre Gesten nähern oder die Grenzen des Gestenrahmens innerhalb einer Anwendung in dem Maße durchbrechen, dass eine verlorene Geste zu unerwünschten Ergebnissen führt. Die Forschung hat die wichtigsten Qualitäten eines solchen Benachrichtigungssystems gezeigt. Die HoloLens-Shell bietet ein gutes Beispiel für diese Art von Benachrichtigung - visual auf dem zentralen Cursor, der die Richtung angibt, in der die Grenzüberquerung stattfindet.
Die Folgen des Überschreitens der Begrenzungen des Gestenrahmens sollten minimiert werden. Im Allgemeinen bedeutet dies, dass das Ergebnis einer Geste an der Grenze beendet und nicht umgekehrt werden sollte. Wenn ein Benutzer beispielsweise ein holografisches Objekt über einen Raum verschiebt, sollte die Bewegung beendet werden, wenn der Gestenrahmen verletzt ist, und nicht zum Ausgangspunkt zurückkehren. Der Benutzer kann eine gewisse Frustration haben, aber möglicherweise schneller die Grenzen verstehen und nicht jedes Mal seine vollständigen beabsichtigten Aktionen neu starten.