Hva skal til for å lage en god VR-applikasjon? Hva er en god VR-applikasjon? Det er noen enkle designvalg som kan vise om en VR-applikasjon er laget på en god måte.
VR er en forkortelse for Viritual Reality som betyr kunstig virkelighet. Denne artikkelen vil gi deg tips til hvordan du kan lage en god VR-applikasjon.
Når man skal lage en applikasjon er det mye å ta stilling til:
Det samme gjelder når man skal lage en applikasjon som bruker VR. Men det er noen andre aspekter som er ekstra viktig å ta hensyn til for VR-applikasjoner:
La oss sammen gå gjennom hvordan man kan finne ut av disse.
Mange opplever å bli kvalme ved bruke av VR. Dette kan skyldes forskjellige faktorer. Den vanligste av disse er «motion sickness» eller bevegelsessyke. Dette er det samme som å være bilsyk. Det kommer av at kroppen opplever konflikt i sanseinntrykkene den opplever. F.eks. hvis man sitter i en bil og leser en bok, så kan man bli kvalm fordi øynene ikke ser noe bevegelse, men kroppen føler bevegelsene av bilen som svinger og akselererer. Det samme kan skje i VR ved at man ser bevegelser man ikke føler. Hvis en VR-applikasjon er ukomfortabel å bruke så er applikasjonen ubrukelig. Her er tre tips for hva man bør gjøre for å sørge for at en VR-applikasjon skal være så komfortabel som mulig å bruke.
1. Unngå kvalmende kamerabevegelser
De mest brukte demoene for VR for noen år tilbake var berg-og-dal-baner. Dette er den verste demoen man kan kjøre for folk. Folk blir bevegelsessyke av denne typen applikasjoner fordi kroppen får forskjellige sanseinntrykk, og den følelsen kan gjøre at enkelte aldri har lyst til å prøve VR igjen. Har du bare prøvd VR som berg-og-dal-bane så har du ikke prøvd god VR. For å unngå å bli kvalm må man aldri flytte på eller rotere spilleren, særlig uten spillerens tillatelse. Det er noen applikasjoner som likevel krever at brukeren forflytter seg rundt i det virtuelle landskapet. Det er derfor lurt å ha en komfortabel mulighet for å forflytte seg rundt i applikasjonen: teleportering.
2. Teleportering som bevegelsesalternativ
Teleportering er det bevegelsesalternativet som de fleste brukere tåler uten å bli bevegelsessyk. Teleportering er at brukeren blir flyttet til en plass de vil ved å bare plutselig stå der. Det er lurt å i det minste ha mulighet for å bruke teleportering for å flytte seg rundt. Dette hjelper spillere som lett blir bevegelsessyk. Det er fullt mulig å ha andre former for forflytning i applikasjonene. Det gå å ha en bevegelsesmetode i applikasjonen hvor brukeren selv bruker joysticken til å flytte på seg selv lineært, dvs. at de flytter seg i den retningen som joysticken tilsier. Noen tåler denne typen forflytning siden man selv har kontroll på hvor fort og hvilken retning man beveger seg. Dette minner litt om at man ikke så fort blir bilsyk hvis man kjører selv. Det er ikke alle som tåler denne måten å forflytte seg på uten å bli kvalm. Det er derfor lurt å legge opp til teleportering uansett, slik at flest mulig folk kan bruke applikasjonen.
3. Optimalisering
En av de største faktorene til bevegelsessyke er at applikasjonen ikke er optimalisert og at bildefrekvensen (FPS – Frames Per Second) faller under akseptable nivåer. Jo høyere FPS, jo mer komfortabel er applikasjonen å bruke. Bildefrekvensen faller når PC-en som kjører applikasjonen må gjøre flere oppgaver og kalkuleringer enn det den rekker på den tiden den har. Industristandarden for skjermene i VR-briller er på rundt 90 bilder i sekundet, hvor noen VR-briller har en del høyere og noen lavere FPS enn det. For at applikasjonen skal være så behagelig som mulig å bruke så bør applikasjonen kjøre på maksimal bildefrekvens som er mulig på de spesifikke VR-brillene applikasjonen skal kjøre på.
Det er 3 hovedkilder til at bildefrekvensen synker:
sanntidslys
tunge grafiske kalkuleringer
Dårlig optimalisert kode
Sanntidslys eller «Realtime lighting» er en form for belysning i applikasjoner som må kalkuleres hver gang noe skal vises på skjermen. I VR betyr dette at belysningen må kjøres oppimot 90 ganger i sekundet, og i tillegg kjøres to ganger (en gang for hvert øye). Dette kan kreve mye av applikasjonen. I den grad det er mulig så bør man prøve å bruke «Bakt belysning», dvs. at belysningen er regnet ut på forhånd og skyggene ‘’malt’’ på teksturene. Dette fungerer bare på objektene som ikke bytter posisjon mens applikasjonen kjører.
Grafikken i VR-applikasjonen må også regnes ut rundt 90 ganger i sekundet for hvert øye. Når denne kalkuleringen skal kjøres så må alle ting som er i synsfeltet til brukeren kalkuleres og vises for hvert øye. Det er to hovedting som kan gjøre at denne kalkuleringen blir krevende er hvis 3d modellene som blir brukt er veldig komplekse og hvis teksturene (mønsteret) er stort. Ved å redusere kompleksiteten på disse så vil applikasjonen kjøre bedre, og derfor bli mer behagelig å bruke for brukeren.
Til slutt så må man ta for seg kodebasen. Applikasjonen bør ikke ha kode som kjøres unødvendig, og bør ikke ha tunge kalkuleringer som ikke datamaskinen klarer å kjøre på under 10 ms. Dette er jo greit å prøve å unngå i de fleste applikasjoner, men i VR så vil det påvirke brukeren i større grad enn om det var en desktopapplikasjon.
Det er ikke alle applikasjoner som blir bedre av å bruke VR teknologi. I mange tilfeller er det mulig at det hadde vært bedre å ha applikasjonen på mobiltelefon, vanlig PC, eller bruke teknologien til AR (Augmented Reality).
Styrken til VR er at det simulerer virkeligheten. Dersom det ikke er et viktig aspekt av applikasjonen så er det ikke nødvendig å bruke VR. For at det skal gi mening å bruke VR, bør applikasjonen få til eller gjøre noe som den ikke hadde fått til uten å være i VR. La oss ta for oss to eksempler for visualisering i bygg bransjen:
VR passer bra til simuleringstrening og i scenarioer der man ikke har muligheten til å være der hvor arbeidsoppgaven skal utføres. Dersom applikasjonen skal brukes on-site på vanlige arbeidsdager så passer det nok bedre å bruke AR eller mobilapplikasjoner. For å finne ut om en VR-applikasjon er god så er det ofte lurt å tenke på om VR er det beste mediet å bruke og om applikasjonen utnytter styrkene av VR som teknologi. Hvis den ikke gjør det så kan det lønne seg å tenke på om man kunne hatt et annet design som passer bedre i VR eller å bruke andre typer teknologi som kan nå målet med applikasjonen bedre en VR.
Du kan lese mer om VR-satsningen vår her