Virtuell verklighet

Eye-tracking är en Game Changer för VR som går långt bortom Foveated Rendering

Eye-tracking är en Game Changer för VR som går långt bortom Foveated Rendering

Eye-tracking – möjligheten att snabbt och exakt mäta i vilken riktning en användare tittar inuti ett VR-headset – pratas ofta om inom ramen för foveated rendering, och hur det kan minska prestandakraven för VR. Och även om foveated rendering är ett spännande användningsfall för eyetracking i VR-headset, kan eyetracking-stativ tillföra mycket mer till bordet.

Eye-tracking har pratats om med hänsyn till VR som en avlägsen teknologi i många år, men hårdvaran blir äntligen allt mer tillgänglig för utvecklare och kunder. PSVR 2 och Quest Pro är de senaste exemplen på headset med inbyggd eyetracking, tillsammans med sådana som Varjo Aero, Vive Pro Eye och mer.

Med detta momentum kunde vi på bara några år se eyetracking bli en standarddel av VR-headset för konsumenter. När det händer finns det ett brett utbud av funktioner som tekniken kan möjliggöra som drastiskt förbättrar VR-upplevelsen.

Foveated Rendering

Låt oss först börja med den som många redan känner till. Foveated rendering syftar till att minska den beräkningskraft som krävs för att visa krävande VR-scener. Namnet kommer från "fovea" - en liten grop i mitten av den mänskliga näthinnan som är tätt packad med fotoreceptorer. Det är fovea som ger oss högupplöst syn i mitten av vårt synfält; Samtidigt är vårt perifera seende faktiskt väldigt dåligt på att fånga upp detaljer och färger, och är bättre inställt för att se rörelser och kontrast än att se detaljer. Du kan tänka på det som en kamera som har en stor sensor med bara några megapixlar, och en annan mindre sensor i mitten med massor av megapixlar.

Området i din syn där du kan se i hög detalj är faktiskt mycket mindre än de flesta tror – bara några grader tvärs över mitten av din syn. Skillnaden i upplösningsförmåga mellan fovea och resten av näthinnan är så drastisk att utan din fovea skulle du inte kunna urskilja texten på den här sidan. Du kan enkelt se detta själv: om du håller ögonen fokuserade på det här ordet och försöker läsa bara två meningar nedan, kommer du att upptäcka att det är nästan omöjligt att urskilja vad orden säger, även om du kan se något som liknar ord. Anledningen till att människor överskattar den foveala regionen av sin syn verkar vara för att hjärnan gör många omedvetna tolkningar och förutsägelser för att bygga en modell av hur vi tror att världen är.

Foveated rendering syftar till att utnyttja denna egenhet i vår vision genom att återge den virtuella scenen i hög upplösning endast i den region som fovean ser, och sedan drastiskt skära ner komplexiteten i scenen i vår perifera vision där detaljen inte kan lösas ändå. . Genom att göra det kan vi fokusera det mesta av processorkraften där den bidrar mest till detaljer, samtidigt som vi sparar bearbetningsresurser någon annanstans. Det kanske inte låter som en stor affär, men när skärmupplösningen för VR-headset och synfält ökar, växer kraften som behövs för att rendera komplexa scener i en nästan exponentiell hastighet.

Eye-tracking spelar förstås in eftersom vi behöver veta var centrum för användarens blick är hela tiden snabbt och med hög precision för att kunna få fram foveerad rendering. Man tror att denna illusion kan göras på ett sätt som är helt osynligt för användaren; Anekdotiskt sett har jag sett nyligen demos där detta var fallet.

Automatisk användaridentifiering och -justering

Förutom att upptäcka rörelser kan eyetracking även användas som en biometrisk identifierare. Det gör eyetracking till en utmärkt kandidat för flera användarprofiler över ett enda headset – när jag sätter på mig headsetet kan systemet omedelbart identifiera mig som en unik användare och kalla fram min anpassade miljö, innehållsbibliotek, spelframsteg och inställningar. När en vän tar på sig headsetet kan systemet läsa in deras inställningar och sparad data.

Eye-tracking kan också användas för att exakt mäta IPD, avståndet mellan ens ögon. Att känna till din IPD är viktigt i VR eftersom det krävs för att flytta linserna och bildskärmarna till den optimala positionen för både komfort och visuell kvalitet. Tyvärr vet många inte vad deras IPD är (du kan få ett grovt mått om du ber någon att hålla en linjal upp till dina ögon, eller fråga din ögonläkare).

Med eye-tracking skulle det vara enkelt att omedelbart mäta varje användares IPD och sedan låta headsetets programvara hjälpa användaren att justera headsetets IPD-matchning, eller varna användare att deras IPD ligger utanför det intervall som stöds av headsetet.

I mer avancerade headset kan denna process vara osynlig och automatisk – IPD kan mätas osynligt, och headsetet kan ha en motoriserad IPD-justering som automatiskt flyttar linserna till rätt position utan att användaren behöver vara medveten om något av det .

Varifokala skärmar

feature-varifocal-concept-headset-640x365

De optiska systemen som används i dagens VR-headset fungerar ganska bra men de är faktiskt ganska enkla och stöder inte en viktig funktion av mänskligt syn: dynamiskt fokus. Detta beror på att displayen i ett VR-headset alltid är på samma avstånd från våra ögon, även när det stereoskopiska djupet antyder något annat. Detta leder till en fråga som kallas vergens-boendekonflikt. Om du vill lära dig lite mer på djupet, kolla in vår primer nedan:

Primer: Vergence-Accommodation Conflict (klicka för att expandera)

boende

boende-öga-diagram-559x500

I den verkliga världen, för att fokusera på ett nära föremål, böjs linsen i ditt öga så att ljuset från föremålet träffar rätt plats på din näthinna, vilket ger dig en skarp bild av föremålet. För ett objekt som är längre bort rör sig ljuset i olika vinklar in i ditt öga och linsen måste återigen böjas för att säkerställa att ljuset fokuseras på din näthinna. Det är därför, om du blundar ena ögat och fokuserar på fingret några centimeter från ditt ansikte, är världen bakom ditt finger suddig. Omvänt, om du fokuserar på världen bakom fingret, blir ditt finger suddigt. Detta kallas boende.

Vergens

vergensdiagram-504x500

Sedan finns det vergens, vilket är när vart och ett av dina ögon roterar inåt för att "konvergera" de separata vyerna från varje öga till en överlappande bild. För mycket avlägsna föremål är dina ögon nästan parallella, eftersom avståndet mellan dem är så litet i jämförelse med föremålets avstånd (vilket innebär att varje öga ser en nästan identisk del av föremålet). För mycket nära föremål måste dina ögon rotera inåt för att få varje ögas perspektiv i linje. Du kan också se detta med vårt lillfingertrick enligt ovan: den här gången, med båda ögonen, håll fingret några centimeter från ansiktet och titta på det. Lägg märke till att du ser dubbla bilder av objekt långt bakom fingret. När du sedan fokuserar på de där objekten bakom fingret, ser du nu en dubbelfingerbild.

Konflikten

Med tillräckligt exakta instrument kan du använda antingen vergens eller boende för att veta hur långt bort ett föremål är som en person tittar på. Men grejen är att både boende och vergens händer i ditt öga tillsammans, automatiskt. Och de händer inte bara samtidigt – det finns en direkt korrelation mellan vergens och ackommodation, så att det för varje given mätning av vergens finns en direkt motsvarande nivå av ackommodation (och vice versa). Sedan du var en liten bebis har din hjärna och dina ögon bildat muskelminne för att få dessa två saker att hända tillsammans, utan att tänka, när du tittar på någonting.

Men när det kommer till de flesta av dagens AR- och VR-headset är vergens och boende inte synkroniserade på grund av inneboende begränsningar i den optiska designen.

I ett grundläggande AR- eller VR-headset finns det en skärm (som är, låt oss säga, 3 tum från ditt öga) som visar den virtuella scenen, och en lins som fokuserar ljuset från skärmen på ditt öga (precis som linsen i ditt öga skulle normalt fokusera ljuset från världen på din näthinna). Men eftersom skärmen är ett statiskt avstånd från ditt öga och linsens form är statisk, kommer ljuset från alla objekt som visas på den skärmen från samma avstånd. Så även om det finns ett virtuellt berg fem mil bort och en kaffekopp på ett bord fem tum bort, kommer ljuset från båda föremålen in i ögat i samma vinkel (vilket innebär att ditt boende – linsens böjning i ögat – aldrig förändras ).

Det kommer i konflikt med vergensen i sådana headset som – eftersom vi kan visa olika bilder för varje öga – är variabel. Att kunna justera föreställningen oberoende för varje öga, så att våra ögon behöver konvergera mot objekt på olika djup, är i grunden det som ger dagens AR- och VR-headset stereoskopi.

Men den mest realistiska (och utan tvekan mest bekväma) displayen vi kunde skapa skulle eliminera problemet med gränsöverskridande boende och låta de två fungera i synka, precis som vi är vana vid i den verkliga världen.

Varifokala skärmar – de som dynamiskt kan ändra sitt brännvidd – föreslås som en lösning på detta problem. Det finns ett antal tillvägagångssätt för varifokala skärmar, varav den kanske enklaste är ett optiskt system där skärmen fysiskt flyttas fram och tillbaka från linsen för att ändra bränndjupet i farten.

Att uppnå en sådan aktiverad varifokal display kräver eye-tracking eftersom systemet behöver veta exakt var i scenen användaren tittar. Genom att spåra en väg in i den virtuella scenen från var och en av användarens ögon, kan systemet hitta punkten där dessa vägar korsar varandra, vilket etablerar det korrekta fokalplanet som användaren tittar på. Denna information skickas sedan till displayen för att justera därefter och ställa in bränndjupet för att matcha det virtuella avståndet från användarens öga till objektet.

En väl implementerad varifokal skärm skulle inte bara kunna eliminera konflikten mellan gränsöverskridande boende, utan också tillåta användare att fokusera på virtuella objekt mycket närmare dem än i befintliga headset.

Och långt innan vi lägger in varifokala skärmar i VR-headset, kan eye-tracking användas för simulerat skärpedjup, vilket kan approximera suddigheten av objekt utanför fokusplanet för användarens ögon.

Foveated Displayer

Medan foveated rendering syftar till att bättre fördela renderingskraften mellan den del av vår vision där vi kan se skarpt och vår perifera vision med låga detaljer, kan något liknande uppnås för det faktiska pixelantalet.

Istället för att bara ändra detaljerna i renderingen på vissa delar av skärmen jämfört med andra, är foveerade skärmar de som fysiskt flyttas för att hålla sig framför användarens blick oavsett var de tittar.

Foveated skärmar öppnar dörren för att uppnå mycket högre upplösning i VR-headset utan att brute-force problemet genom att försöka fånga pixlar med högre upplösning över hela vårt synfält. Att göra det skulle inte bara bli kostsamt, utan också stöta på utmanande kraftbegränsningar när antalet pixlar närmar sig näthinneupplösning. Istället skulle foveated skärmar flytta en mindre, pixeltät skärm till vart användaren än tittar baserat på eyetracking-data. Detta tillvägagångssätt kan till och med leda till högre synfält än vad som annars skulle kunna uppnås med en enda platt display.

varjo-exempel-640x386

Varjo är ett företag som arbetar med ett foveat displaysystem. De använder en typisk skärm som täcker ett brett synfält (men är inte särskilt pixeltät) och lägger sedan en mikroskärm som är mycket mer pixeltät ovanpå den. Kombinationen av de två innebär att användaren får både ett brett synfält för sin perifera syn och ett område med mycket hög upplösning för sin foveala syn.

Varjos senaste prototyper flyttar för närvarande inte den mindre skärmen (den hänger bara ut i mitten av linsen), men företaget har övervägt ett antal metoder för att flytta skärmen för att säkerställa att området med hög upplösning alltid är i mitten av din blick.

Fortsättning på sida 2 »