Håndsporing blev først tilgængelig på Oculus Quest tilbage i slutningen af 2019. Af entusiasme for denne nye inputmetode udgav jeg en demo af kubisme til SideQuest med eksperimentel håndsporingsunderstøttelse kun få dage senere. Det er overflødigt at sige, at denne indledende demo havde adskillige mangler og ikke rigtigt tog teknologiens begrænsninger i betragtning, hvorfor jeg besluttede i første omgang at udelade support for håndsporing fra den fulde udgivelse af kubisme på Oculus Store. Det krævede mere udvikling, at læne sig op af erfaringer fra andre udvikleres arbejde, at bygge noget, jeg var glad for at frigive i det seneste kubisme opdatering til håndsporing. Her er et indblik i designprocessen.
Gæsteartikel af Thomas Van Bouwel
Thomas er en belgisk-brasiliansk VR-udvikler, der i øjeblikket er baseret i Bruxelles. Selvom hans oprindelige baggrund er inden for arkitektur, spænder hans nuværende arbejde i VR fra indie-spil som f.eks kubisme til virksomhedssoftware til arkitekter og ingeniører som løse.
Denne opdatering bygger på erfaringer fra mange andre spil og udviklere, som har udforsket håndsporing i løbet af det sidste år (Den nysgerrige fortælling om de stjålne kæledyr, Ferie simulator, Luca Mefisto, Dennys Kuhnertog flere andre).
I denne artikel vil jeg gerne dele nogle ting, jeg har lært, når jeg tackler de specifikke udfordringer Kubismens håndinteraktioner.
Optimering til præcise interaktioner
Kubismens interaktioner drejer sig om at placere små uregelmæssige puslespilsbrikker i et puslespilsgitter. Dette betød, at hovedkravet til input fra håndsporing var præcision, både ved opsamling og placering af brikker på gitteret, såvel som præcist at udvælge brikker fra et gennemført puslespil. Dette informerede de fleste af designbeslutningerne vedrørende håndinput.
Spøgelseshænder
Jeg besluttede mig tidligt ikke gør hænderne fysikbaserede, men lad dem i stedet passere gennem brikker, indtil man aktivt gribes.
Dette undgik klodset at skubbe de flydende puslespilsbrikker væk, når du forsøger at gribe dem midt i luften, men endnu vigtigere, det gjorde det nemmere at plukke brikker midt i et fuldt puslespil, da du bare kan stikke fingrene ind og få fat i en brik i stedet for behov for at finde ud af, hvordan man fysisk lirker dem ud.
Signaleret af deres gennemsigtighed er hænder ikke fysiske, hvilket gør det lettere at udvælge brikker fra midten af et puslespil.
Kontakt Grabbing
Der er flere metoder til at detektere en brugers hensigt om at gribe og frigive objekter, som at fokusere på fingerklemmer eller total fingerledsrotation, mens man kontrollerer en generel interaktionszone i håndfladen.
Til Kubismens små og uregelmæssige puslespilsbrikker, men den tilgang, der så ud til at klare præcisionskravene bedst, var en kontaktbaseret tilgang, hvor en brik bliver grebet, så snart tommelfinger og indeks krydser den samme brik og bringes sammen over en lille afstand, uden at det kræves en hel knivspids.
Svarende til nærme sig Den nysgerrige fortælling om de stjålne kæledyr, låses fingrene på plads, så snart et greb starter, for at give indtryk af et mere stabilt greb. Stykket er parentes til roden af hånden (håndleddet), mens det gribes. Da dette ser ud til at være det mest stabile sporforbindelse, hjælper det med at producere et mere stabilt greb og garanterer, at stykket forbliver på linje med de låste fingre.
Stykket gribes, når tommelfinger og indeks skærer det og bringes lidt sammen. Rotation af indeks og tommelfinger låses derefter på plads for at give indtryk af et stabilt greb.
Så snart en brik er grebet, gemmes afstanden mellem tommelfinger og indeks, og en frigivelsesmargin beregnes ud fra denne afstand. Når tommelfinger og indeks bevæger sig fra hinanden ud over denne margen, frigives brikken.
Adskillige sikkerhedsforanstaltninger forsøger at forhindre utilsigtede udgivelser: Vi tjekker ikke for frigivelse, når sporingstilliden er under en vis tærskel, og efter sporingstilliden er genvundet, venter vi flere frames, indtil vi tjekker for frigivelse igen. Fingrene er også forpligtet til at være ud over udgivelsesmargenen i flere billeder, før de faktisk udløses.
Fejlfindingsvisualisering: under et greb gemmes den indledende gribeafstand mellem fingerspidserne (ydre rød cirkel). Brikken frigives, når fingerspidsernes reelle position bevæger sig ud over en vis margin (blå cirkel).
Der er også et system, der ligner Feriesimulatorens overgrebsmetode. På grund af manglen på haptisk feedback, når du griber et stykke, er det ikke ualmindeligt, at fingrene glider tættere på hinanden under et greb. Hvis de lukker ud over en vis tærskel, justeres frigivelsesmarginerne for at gøre det lettere at slippe stykket.
Prøv det selv: For at se disse fejlfindingsvisualiseringer i spillet skal du gå til 'Indstillinger > Håndsporing > Fejlfindingsvisualiseringer' og slå 'Interaktionswidgets' til.
Fejlfindingsvisualisering: Hvis fingrene glider til hinanden under et greb over en bestemt tærskel (indre rød cirkel), justeres udgivelsesmarginerne igen for at gøre frigivelsen af brikken mindre "klæbende".
En grænse for denne tilgang er, at den gør det lidt sværere at gribe med andre fingre end indekset. En tidligere implementering tillod også at gribe mellem langfinger og tommelfinger, men dette førte ofte til falske positiver, når man greb brikker ud af et fuldt puslespil, da det var svært at vurdere, hvilken finger spilleren havde til hensigt at gribe en specifik brik med.
Dette ville ikke have været et problem, hvis greb drejede sig om fulde fingerklemmer, da det resulterer i en mere klar input binær, hvorfra man kan bestemme brugerens hensigt (på bekostning af en mindre naturlig følelse af greb).
Midtpunktstjek
Udover at kontrollere, hvilket stykke pege- og tommelfingeren krydser, sker der en ekstra kontrol midt mellem pegefingerspids og tommelfingerspids.
Uanset hvilken brik dette midtpunkt svæver over vil blive prioriteret til at gribe, hvilket hjælper med at undgå falske positiver, når en spiller forsøger at gribe en brik i et fuldt gitter.
I eksemplet nedenfor, hvis spilleren har til hensigt at gribe den grønne brik ved dens højre kant, ville de utilsigtet gribe den gule brik, hvis vi ikke lavede denne midtpunktskontrol.
Venstre: tommelfinger, indeks og midtpunkt mellem fingerspidserne er i gult → greb gult. Højre: tommelfinger og indeks er i gult, midtpunkt er i grønt → grab grønt
Grib puslespillet
At gribe puslespillet fungerer på samme måde som at gribe puslespilsbrikker, bortset fra at det startes ved at udføre en hel pinch inden for gribezonen omkring puslespillet.
Størrelsen af denne zone øges dynamisk, når der skiftes fra controllere til hænder. Dette gør det en smule nemmere at få fat i, og hjælper med at reducere sandsynligheden for ved et uheld at få fat i et stykke i gitteret i stedet for selve gitteret.
Gribezonen omkring puslespillet udvides, når der skiftes fra controllere til hænder, hvilket gør det lettere at gribe. Selvom det kræver en hel knivspids, fungerer det at gribe puslespillet på samme måde som at gribe puslespilsbrikker.
Dynamisk håndudjævning
Håndsporingsdataene fra Oculus Quest kan stadig have en smule nervøsitet, selv når sporingssikkerheden er høj. Dette kan faktisk også påvirke spillet, da jitter kan være meget mere mærkbar, når du holder puslespilsgitteret eller en lang puslespilsbrik ved kanten, hvilket gør præcis placering af brikker på gitteret sværere.
Udjævning af sporingsdata kan gå langt for at producere mere stabilt udseende greb, men det skal ske med måde, da for meget udjævning vil resultere i en "laggy" følelse for hænderne. For at afbalancere dette skal du glatte hånden ind kubisme justeres dynamisk alt efter om din hånd holder noget eller ej.
Prøv det selv: For at se virkningen af håndudjævning, prøv at slå den fra under
'Indstillinger > Håndsporing > Håndudjævning'.
Forøgelse af udjævningen af håndpositioner, mens du holder genstande, hjælper med at producere et mere stabilt greb, hvilket gør præcis placering på gitteret en smule lettere.
Tryk på knapper
En ting lagde jeg mærke til Kubismens Den originale håndsporingsdemo var, at de fleste forsøgte at trykke på knapperne, selvom det ikke blev understøttet på det tidspunkt. Derfor var et af mine mål med denne nye version af håndsporing at gøre knapperne faktisk skubbebare.
Knapper kan svæves over, når en raycast fra pegefingerspidsen rammer en kolliderer bag på knappen. Hvis pegefingeren så skærer med kollideren, registreres et tryk. Hvis indekset skærer kollideren uden først at svæve den, registreres der ikke noget tryk. Dette hjælper med at forhindre falske positiver, når fingeren bevæger sig fra bund til top.
Der er et par flere kontroller på plads for at forhindre falske positiver: raycast er deaktiveret, når fingeren ikke vender mod knappen, eller når afspilleren ikke ser på fingeren, når han trykker.
Prøv det selv: For at se denne fejlfindingsvisualisering i spillet skal du gå til 'Indstillinger > Håndsporing > Fejlfindingsvisualiseringer' og slå 'Interaktionswidgets' til.
Fejlfindingsvisualisering: en raycast fra pegespidsen kontrollerer, om fingeren svæver over en knap. For at hjælpe med at forhindre falske positiver deaktiveres interaktion, når fingeren ikke vender mod knappen, eller når afspilleren ikke ser på fingeren.
Vejledende interaktioner
En af hovedudfordringerne ved at bygge enhver interaktion til håndsporing er, at i modsætning til knapper på en controller, der enten trykkes på eller ikke trykkes, er der mange forskellige måder, folk kan forsøge at nærme sig en interaktion med deres hænder, mens de forventer det samme resultat .
Playtesting med et forskelligartet sæt af mennesker kan hjælpe dig med at lære, hvordan folk nærmer sig de interaktioner, der præsenteres for dem, og kan hjælpe med at forfine de interaktionssignaler, der guider dem til de forventede gestus. Playtesting kan også hjælpe dig med at lære nogle af de outliers, du måske vil fange, ved at tilføje noget interaktionsredundans.
Interaktionssignaler
Der er flere signaler, mens du griber en brik. Når en bruger første gang svæver over et stykke, antager deres pegefinger og tommelfinger farven på det stykke, både for at angive, at det kan gribes, og for at signalere, hvilke fingre der kan gribe det (inspireret af tidligere arbejde af Luca Mefisto, Barrett Fox og Martin Schubert). Stykket er også fremhævet for at angive, at det kan gribes.
Flere signaler indikerer også, hvornår grebet lykkes: fingerspidserne bliver solide, højdepunkterne på stykket blinker, og en kort lydsignal afspilles.
Forskellige signaler både på hånden og puslespilsbrikken guider og bekræfter gribe-interaktionen.
Knapper har flere signaler, der hjælper med at indikere, at de kan skubbes. Ligesom med puslespilsbrikker er pegefingerspidsen fremhævet med hvidt, når du holder musemarkøren over en knap, hvilket indikerer, hvilken finger der kan interagere. Ligesom de gjorde med controllere, strækker knapperne sig udad, når de svæver, men denne gang kan den udvidede knap faktisk trykkes: Når indekset rører den, følger den fingeren, indtil den er trykket helt ned, hvorefter en lydsignal bekræfter klikket.
En subtil skygge på knapoverfladen angiver, hvor indeksets position og afstand til knappen er, og hjælper med at styre presseinteraktionen.
Forskellige signaler guider interaktioner med knapper: knapper strækker sig udad, når de svæver, pegefingerspidsen er fremhævet, en skygge viser, hvor spidsen vil interagere, og knappen følger fingeren, når den trykkes.
Interaktionsredundans
Da nogle mennesker kan nærme sig nogle interaktioner på utilsigtede måder, kan det være godt at prøve at redegøre for dette, hvor det er muligt, ved at tilføje noget redundans til de måder, folk kan bruge deres hænder til at interagere på. Interaktionssignaler kan stadig guide dem til den tilsigtede interaktion, men redundans kan hjælpe med at undgå, at de hænger unødigt fast.
Når det kommer til at gribe brikker, ville et par legetestere prøve at gribe brikker ved først at lave en knytnæve i stedet for at bruge deres fingerspidser. Ved at lade kollidererne dække hele fingeren i stedet for kun fingerspidsen, vil en anstændig mængde af disse første greb stadig blive registreret.
Jeg bør bemærke, at denne tilgang stadig trænger til nogle forbedringer, da den også introducerer nogle problemer, der producerer utilsigtede greb i tilfælde, hvor der er mange brikker, der flyder rundt på legeområdet. En bedre tilgang i fremtiden kan være at også udføre en kontrol af den samlede fingerrotation for at tage højde for knytnævegreb i stedet.
Selvom grebet er designet omkring fingerspidserne, dækker kollidere på pege- og tommelfingeren hele fingeren for at hjælpe med at fange forskellige former for greb.
Med knapper var der et par playtestere, der ville prøve at knibe dem i stedet for at trykke på dem. Til dels syntes dette at ske, da de tidligere lærte at knibe knapper på Oculus-hjemmeskærmen, lige før de startede spillet.
Af denne grund kan knapper også klikkes ved at knibe, når de er svævet, og forhåbentlig vil signaler som det fremhævede indeks og skygge i sidste ende guide dem til at trykke på knapperne i stedet for.
Knibning, mens du svæver over knapper, registreres også som et klik.
Den første knap, som spillere støder på, når de bruger hænder, angiver også eksplicit "Push to Start", for at hjælpe med at skifte folk fra at knibe til at trykke efter at komme fra Oculus Home-menuen.
Undervisningens begrænsninger
Selvom kvaliteten af Quests håndsporing er blevet forbedret i løbet af det sidste år, har den stadig sine begrænsninger - og en spillers bevidsthed om disse begrænsninger kan have stor indflydelse på, hvor god de opfatter deres oplevelse som værende.
kubisme implementerer et par måder at lære spillere om de nuværende begrænsninger af håndsporing på Quest.
Når spilleren først skifter til håndsporing (enten ved lancering eller midt i spillet), informerer en modal dem om nogle bedste praksisser, såsom at spille i et godt oplyst rum og undgå at krydse hænder.
Når en bruger skifter til håndsporing, informerer en modal dem om begrænsninger og bedste praksis. "Push to Start"-instruktionen hjælper med at lære nye brugere, at knapper naturligt kan trykkes i dette spil.
Det er vigtigt at erkende, at de fleste mennesker sandsynligvis straks afviser modals som denne eller hurtigt glemmer dens retningslinjer, så det er også vigtigt at signalere, hvorfor ting kan gå galt under oplevelsen.
In kubisme, vil viserne blive røde for at signalere, når sporingen var tabt. I nogle playtests ville folk holde den ene hånd på skødet og lege med den anden og undre sig over, hvorfor deres skødehånd ville virke frossen. For at hjælpe med at informere om tilfælde som dette, vises en meddelelse på hånden for tydeligt at angive, hvorfor hånden er frosset, hvis sporingstab fortsætter. Hvis sporingen går tabt, specifikt fordi spilleren krydser deres hænder, ændres beskeden for at informere dem om ikke at gøre det.
Venstre: hænderne bliver røde, når sporing først mistes. midt: når sporingstab fortsætter, informerer en meddelelse spilleren om, hvad der foregår. Højre: hvis sporingen går tabt på grund af tilstoppede hænder, er dette også angivet
For mere erfarne spillere, eller spillere, der foretrækker at spille med én hånd, kan denne funktion erstattes i indstillingerne ved at få hænderne til at fade ud, når de mister sporing i stedet, hvilket mere ligner adfærden i Oculus-hjemmemenuen.
De røde visere og advarselsmeddelelser kan erstattes i indstillingerne med falmende hænder.
Future Work
Håndsporing på Quest har stadig sine begrænsninger, og selvom Kubismens support til det er allerede i sin anden version, der er stadig masser af plads til forbedringer.
Uanset hvad er jeg spændt på at begynde at udforske og understøtte disse nye inputmetoder. På kort sigt tror jeg, de kan være med til at gøre oplevelser som denne mere tilgængelige og nemmere at dele med nye VR-brugere.
Mixed reality-optagelser optaget på en iPhone med Fabio Dela Antonios app Reality Mixer giver en idé om, hvordan det kan være at spille kubisme på et AR-headset i fremtiden.
På lang sigt ser der ud til at være en god chance for, at håndsporing vil være det vigtigste input for fremtidige selvstændige AR-enheder, så forhåbentlig kan denne opdatering være et første lille skridt mod en AR-version af kubisme.
Hvis du kunne lide dette kig på håndsporingsdesignet i kubisme, så sørg for at tjekke ud Thomas' tidligere gæsteartikel, som giver en oversigt over designet af det bredere spil.
Stillingen Casestudie: Designet bag 'kubismens' håndsporing dukkede først på Vejen til VR.
- '
- "
- &
- 2019
- Om
- absolutte
- Konto
- Yderligere
- allerede
- Skønt
- beløb
- En anden
- app
- tilgang
- AR
- arkitektur
- OMRÅDE
- omkring
- artikel
- lyd
- til rådighed
- bevidsthed
- baggrund
- bliver
- BEDSTE
- bedste praksis
- Bit
- Bruxelles
- bygge
- Bygning
- bygger
- casestudie
- tilfælde
- brydning
- udfordringer
- kontrol
- Kontrol
- Circle
- tættere
- kommer
- tillid
- controller
- Nuværende
- data
- Design
- Udvikler
- udviklere
- Udvikling
- Enheder
- DID
- forskellige
- afstand
- ned
- Drop
- Tidligt
- Edge
- Ingeniører
- Enterprise
- virksomhedssoftware
- eksempel
- Undtagen
- udvider
- forventet
- erfaring
- Oplevelser
- udvide
- vender
- fade
- Feature
- tilbagemeldinger
- Figur
- Fornavn
- Blink
- fejl
- formularer
- fuld
- fremtiden
- spil
- Spil
- Generelt
- få
- Mål
- gå
- godt
- grab
- Grøn
- Grid
- Gæst
- vejlede
- retningslinjer
- Gem
- have
- hjælpe
- hjælper
- Høj
- Fremhævet
- Home
- Hvordan
- How To
- HTTPS
- idé
- KIMOs Succeshistorier
- implementering
- vigtigt
- øget
- indeks
- inspirerede
- Hensigter
- hensigt
- interaktion
- iPhone
- spørgsmål
- spørgsmål
- IT
- selv
- lancere
- lancering
- LÆR
- lærte
- Led
- Erfaringer
- låst
- Lang
- leder
- maerker
- Making
- mere
- mest
- bevæge sig
- Natural
- Andet
- Mennesker
- fysisk
- stykke
- Leg
- spiller
- spillere
- Masser
- mulig
- trykke
- behandle
- producere
- kvalitet
- Quest
- hurtigt
- Reality
- reducere
- registreret
- frigive
- Udgivelser
- udskiftes
- påkrævet
- Krav
- Resultater
- Skærm
- krydret
- sæt
- Shadow
- Del
- Kort
- lignende
- Størrelse
- lille
- So
- Software
- noget
- Space
- specifikt
- standalone
- starte
- starter
- Tilstand
- Stater
- stjålet
- butik
- Studere
- vellykket
- support
- Understøttet
- Støtte
- overflade
- systemet
- Undervisning
- Teknologier
- Gennem
- tid
- tips
- sammen
- top
- Sporing
- Gennemsigtighed
- Opdatering
- brug
- brugere
- visualisering
- vr
- vente
- Hvad
- Hvad er
- hvorvidt
- WHO
- inden for
- uden
- Arbejde
- virker
- år
- youtube