Översikt över exempel på ögonspårning – MRTK2

Det här avsnittet beskriver hur du snabbt kommer igång med ögonspårning i MRTK genom att bygga vidare på MRTK-exempel för ögonspårning (Assets/MRTK/Examples/Demos/EyeTracking). Med de här exemplen kan du uppleva en av våra nya magiska indatafunktioner: Ögonspårning! Demonstrationen innehåller olika användningsfall, allt från implicita ögonbaserade aktiveringar till hur du sömlöst kombinerar information om vad du tittar på med röst - och handinmatning . På så sätt kan användarna snabbt och enkelt välja och flytta holografiskt innehåll i vyn genom att bara titta på ett mål och säga "Välj" eller utföra en handgest. Demonstrationerna innehåller också ett exempel på ögonriktad rullning, panorering och zoomning av text och bilder på en skiffer. Slutligen tillhandahålls ett exempel för att registrera och visualisera användarens visuella uppmärksamhet på en 2D-skiffer. I följande avsnitt hittar du mer information om vad vart och ett av de olika exemplen i MRTK-exempelpaketet för ögonspårning (Assets/MRTK/Examples/Demos/EyeTracking) innehåller:

Lista över ögonspårningsscener

Följande avsnitt är en snabb översikt över vad de enskilda demoscenerna för ögonspårning handlar om. MRTK-demoscenerna för ögonspårning laddas additivt, som vi kommer att förklara nedan hur du konfigurerar.

Översikt över demoexempel för ögonspårning

Målval som stöds av ögon

Den här självstudien visar hur enkelt det är att komma åt ögonögadata för att välja mål. Den innehåller ett exempel på subtil men kraftfull feedback för att ge användaren förtroende för att ett mål är fokuserat utan att vara överväldigande. Dessutom finns det ett enkelt exempel på smarta meddelanden som försvinner automatiskt när de har lästs.

Sammanfattning: Snabba och enkla målval med hjälp av en kombination av ögon, röst och handinmatning.

Navigering med ögonstöd

Tänk dig att du läser viss information på en avlägsen skärm eller e-läsare och när du når slutet av den visade texten rullar texten automatiskt uppåt för att visa mer innehåll. Eller vad sägs om att magiskt zooma direkt mot där du tittade på? Det här är några av exemplen som visas i den här självstudien om navigering med ögonstöd. Dessutom finns det ett exempel på handsfree-rotation av 3D-hologram genom att göra så att de roteras automatiskt baserat på ditt nuvarande fokus.

Sammanfattning: Bläddra, panorera, zooma, 3D-rotation med hjälp av en kombination av ögon, röst och handinmatning.

Positionering med ögonstöd

Den här självstudien visar ett indatascenario med namnet Put-That-There som går tillbaka till forskning från MIT Media Lab i början av 1980-talet med ögon-, hand- och röstinmatning. Idén är enkel: Dra nytta av dina ögon för snabbt målval och positionering. Titta bara på ett hologram och säg "put this", titta över var du vill placera det och säga "där!". Om du vill placera hologrammet mer exakt kan du använda ytterligare indata från händer, röstenheter eller styrenheter.

Sammanfattning: Placera hologram med ögon, röst och handinmatning (dra och släpp). Skjutreglage som stöds med ögon + händer.

Visualisering av visuell uppmärksamhet

Data som baseras på var användarna tittar gör ett oerhört kraftfullt verktyg för att utvärdera användbarheten av en design och identifiera problem i effektiva arbetsströmmar. I den här självstudien beskrivs olika visualiseringar för ögonspårning och hur de passar olika behov. Vi tillhandahåller grundläggande exempel för loggning och inläsning av ögonspårningsdata och exempel på hur du visualiserar dem.

Sammanfattning: Tvådimensionell uppmärksamhetskarta (heatmaps) på skiffer. Spela in & spela upp ögonspårningsdata igen.

Konfigurera MRTK-ögonspårningsexemplen

Förutsättningar

Observera att användning av ögonspårningsexemplen på enheten kräver en HoloLens 2 och ett exempelapppaket som har skapats med funktionen "Gaze Input" på paketets AppXManifest.

Om du vill använda dessa ögonspårningsexempel på enheten måste du följa de här stegen innan du skapar appen i Visual Studio.

1. Läs in EyeTrackingDemo-00-RootScene.unity

EyeTrackingDemo-00-RootScene är basscenen (rot) som innehåller alla MRTK-kärnkomponenter. Det här är scenen som du måste läsa in först och från vilken du kommer att köra eye tracking demos. Den har en grafisk scenmeny som gör att du enkelt kan växla mellan de olika ögonspårningsexemplen som kommer att laddas additivt.

Scenmeny i ögonspårningsexempel

Rotscenen innehåller några kärnkomponenter som bevaras i de additivt inlästa scenerna, till exempel de MRTK-konfigurerade profilerna och scenkameran. MixedRealityBasicSceneSetup (se skärmbilden nedan) innehåller ett skript som automatiskt läser in den refererade scenen vid start. Som standard är detta EyeTrackingDemo-02-TargetSelection.

Exempel för Skriptet OnLoadStartScene

2. Lägga till scener i byggmenyn

Om du vill läsa in additiva scener under körning måste du först lägga till de här scenerna i build-inställningarna –> scener på build-menyn . Det är viktigt att rotscenen visas som den första scenen i listan:

Scenmeny för build-inställningar för ögonspårningsexempel

3. Spela upp ögonspårningsexemplen i Unity-redigeraren

När du har lagt till ögonspårningsscenerna i build-inställningarna och läst in EyeTrackingDemo-00-RootScene, finns det en sista sak som du kanske vill kontrollera: Är skriptet "OnLoadStartScene" som är kopplat till MixedRealityBasicSceneSetup GameObject aktiverat? Det här är för att låta rotscenen veta vilken demoscen som ska läsas in först.

Exempel för skriptet OnLoad_StartScene

Låt oss rulla! Tryck på "Play"! Du bör se flera pärlor visas och scenmenyn högst upp.

Exempel på skärmbild från ET-målvalsscenen

Du bör också se en liten halvtransparent cirkel i mitten av din spelvy. Detta fungerar som en indikator (markör) för den simulerade blicken: Tryck bara ned höger musknapp och flytta musen för att ändra dess position. När markören hovrar över ädelstenarna kommer du att märka att den fästs mot mitten av den aktuella gemen. Det här är ett bra sätt att testa om händelser utlöses som förväntat när du "tittar" på ett mål. Tänk på att den simulerade blicken via muskontroll är ett ganska dåligt komplement till våra snabba och oavsiktliga ögonrörelser. Det är dock bra för att testa de grundläggande funktionerna innan du itererar designen genom att distribuera den till HoloLens 2 enheten. Återgår till vår ögonspårning exempelscen: Pärlan roterar så länge som den ses på och kan förstöras genom att "titta" på den och ...

  • Trycka på Retur (som simulerar "select")
  • Säger "välj" i mikrofonen
  • När du trycker på Blanksteg för att visa den simulerade handinmatningen klickar du på den vänstra musknappen för att utföra en simulerad nypa

Vi beskriver mer detaljerat hur du kan uppnå dessa interaktioner i vår självstudiekurs om målval som stöds av ögon .

När du flyttar markören upp till den översta menyraden i scenen ser du att det hovrade objektet markeras subtilt. Du kan välja det markerade objektet med någon av ovanstående beskrivna incheckningsmetoder (t.ex. genom att trycka på Retur). På så sätt kan du växla mellan olika ögonspårningsexempelscener.

4. Så här testar du specifika underscener

När du arbetar med ett specifikt scenario kanske du inte vill gå igenom scenmenyn varje gång. I stället kanske du vill börja direkt från scenen som du arbetar med när du trycker på knappen Spela upp . Inga problem! Här är vad du kan göra:

  1. Läs in rotscenen

  2. Inaktivera skriptet OnLoadStartScene i rotscenen

  3. Dra och släpp en av de testscener för ögonspårning som beskrivs nedan (eller någon annan scen) i hierarkivyn enligt skärmbilden nedan.

    Exempel för additiv scen

  4. Tryck på Spela upp

Observera att inläsningen av underscenen så här inte är beständig: Det innebär att om du distribuerar din app till den HoloLens 2 enheten läses rotscenen bara in (förutsatt att den visas överst i dina bygginställningar). När du delar projektet med andra läses inte underscenerna in automatiskt.


Nu när du vet hur du får MRTK-exempelscener för ögonspårning att fungera ska vi fortsätta med att fördjupa oss i hur du väljer hologram med dina ögon: Målval som stöds av ögon.


Tillbaka till "Ögonspårning i MixedRealityToolkit"