Apie Virtualią Realybę Kūrėjams. 3 dalis: Uždelsimas bei Įvestis ir Žaismo Dizainas

Tai trečia ir paskutinė dalis trijų dalių įrašų serijos apie virtualios realybės žaidimų kūrimo subtilybes. Pirmoje dalyje buvo pateikiamas iššūkių suskirstymas bei kalbama apie suvokimą ir naudotojo interfeisą, o antroje dalyje – apie pykinimą dėl simuliacijos ir kaip tai sumažinti bei apie žaismo ir turinio dizainą.

Uždelsimas

Uždelsimas yra įsitraukimo priešas. Tad tikslas – idealiai simuliuoti žaidėjo realius judesius.

Uždelsimas susideda iš:

  • Sekimo uždelsimo.
  • USB uždelsimo.
  • Operacinės sistemos uždelsimo.
  • Žaidimo ir žaidimo variklio uždelsimo.
  • Monitoriaus techninės įrangos uždelsimo.
VR pipeline

Iš ko susideda uždelsimas? Skaidrė iš P. Luckey ir N. Mitchell prezentacijos „Virtual Reality Gaming and Game Development“.

P. S. Viena iš priežasčių, kodėl yra gerai, kad Google Cardboard laikomas ranka – tai sumažina greitus galvos judesius ir taip mažiau jaučiasi uždelsimas!

Dauguma šių dalykų yra techninė įranga ir mes, žaidimų kūrėjai nelabai ką galime padaryti. Tad mums lieka koncentruotis į ketvirtąjį punktą. Tad ko reikia? Ogi patikimo nuolatinio stabilaus kadrų kaitos skaičiaus (angl. frames per second, FPS), v-sync ir nenaudoti kadrų buferio (t. y. kadrus kuo greičiau siųsti į monitorių). Kalbant apie kadrų kaitą, tai 30 FPS yra mažai; 60 – turėtų būti minimumas, tačiau 90-120 būtų žymiai geriau.

Šiuo metu manoma, kad reikia siekti, kad uždelsimas būtų mažiau nei 20 ms. Taip pat rekomenduojama paaukoti vizualą dėl didesnio FPS.

Verta paminėti, kad kai kuriais atvejais pasirenkant tinkamą žaismo dizainą ar įvestį irgi galima sumažinti didelio uždelsimo pojūtį. Pavyzdžiui, jeigu žaidėjas turi šokinėti realybėje, tai sukels smarkiai pastebimą uždelsimą virtualiame pasaulyje.

Įvestis ir žaismo dizainas

Virtualiosios realybės žaidimams reikia pergalvoti ne tik žaismo dizainą, bet ir įvestį. Žinoma, šie dalykai smarkiai susiję, tačiau kad būtų lengviau suprasti, verta įvestį panagrinėti ir šiek tiek atskirai.

Input streams in VR

Kaip reikėtų atskirti skirtingą įvestį. Iš Y. Malaika prezentacijos „Interaction Design in VR: The Rules Have Changed (Again)“.

VR įvesties taksonomija:

  • 6 DOF manipuliacijos – objektas turi būti netoli, pasiekiamas per rankos atstumą. Pavyzdys: rankos ištiesimas ir paėmimas.
  • Taško nurodymas (angl. pointing) – gali būti ir pasiekiamas, ir toliau. Teleportacija nurodant tašką, pavyzdžiui, su virtualiu „lazeriuku“.
  • Valdymas rankomis – įvairūs gestai.
  • Foniniai iškvietimai (angl. ambient invocation) – turi būti nedažni ir netiesioginiai. Pavyzdžiui, balso komandos (tačiau jos turi problemų, nes ne visada tinkamai ir pakankamai greitai atpažįstamos).
  • Pasąmoninis (angl. subconscious) – visiškai netiesioginiai. Pavyzdžiui, žaidimas gali išnaudoti žinojimą, kur erdvėje yra žaidėjas ir į ką jis žiūri.

Nors dabar daug kur VR žaidimuose naudojama, bet interakcija naudojant galvą nėra natūralu ir neoptimalu. Reikia ieškoti kitokių būdų, tinkamų interakcijai. Pavyzdžiui, jau minėta teleportacija. Tačiau vėlgi, Valve rekomenduoja vietai nurodyti naudoti ne galvą ir žvilgsnį, o kokį nors rankinį valdiklį (pvz., PlayStation Move). Naudojant teleportaciją žmogus jaučiasi pakankamai natūraliai, taip pat jam pavyksta judėti tiek į priekį, tiek į šonus, tiek atgal. Kartu keli patarimai:

  • Vengti pasukimo teleportuojant.
  • Naudoti atskaitos taškus, kad žaidėjas pajustų, kiek ir į kur nusiteleportavo.
  • Vengti greitėjimo.
  • Leisti teleportuotis ir ne į matymo lauke esančius taškus.
  • Rodyti kintančio dydžio žymeklį teleportacijos taške, kad žaidėjas lengviau suprastų atstumus.

Žiūrint iš panašios perspektyvos kaip ir suvokimo skyriuje, tai žaidėjo vykdomi veiksmai ir gestai turi būti paprasti, bet kartu suprantami ir logiški. Taip pat žaidėjas turėtų galėti atlikti veiksmus, kurie yra ypač įprasti realiame pasaulyje, jeigu vizualūs elementai skatina ar indikuoja, kad tie veiksmai egzistuoja ir virtualiame.

Žinoma, verta atkreipti dėmesį į jau 2D interfeisuose taikomas taisykles. Vienas iš tokių yra Fitso dėsnis (https://en.wikipedia.org/wiki/Fitts’s_law), kuri teigia, kad elemento nurodymo laikas priklauso nuo atstumo ir objekto dydžio – kuo toliau ir kuo mažesnis objektas, tuo didesnis parinkimo laikas. Šitas pat (tik sudėtingesnė versija, kuri, deja, nėra dar išsamiai ištirta, nors 2013 m. Y. Cha ir R. Myung publikavo straipsnį apie tai (http://www.sciencedirect.com/science/article/pii/S0169814113000723)) galioja ir 3D virtualiuose pasauliuose. Pavyzdys, kur tai gali būti tiesiogiai aktualu, yra „Tilt Brush“ VR paišymo žaidimas (https://www.youtube.com/watch?v=uFWw6hGIKmc). Iš jo matome, kad papildomas sudėtingumas atsiranda dėl:

  • papildomos dimensijos;
  • dėl to, kad juda ir tikslas, ir rodytojas;
  • be viso to – judėjimo erdvė niekaip neapribota.

Taip pat mąstant apie Fitso dėsnį, atsiranda skirtumai tarp artimo atstumo pasirinkimo rankomis ar pan. ir taško nurodymo iš toli.

Dar svarbu suprasti, kad virtualiojoje realybėje įvestis tampa labiau apribota lyginant su klaviatūros ir pelės suteikiamomis galimybėmis, be to verta turėti omeny, kad ne visiems žmonėms gali pavykti vienodai gerai atlikti tam tikrus veiksmus ar gestus, tad interakcijas ir valdymą reikia testuoti ir šlifuoti.

Be viso to, reikia nepamiršti, kad žaidėjai gali būti įvairių ūgių, įvairios fizinės sudėties ir gali žaisti įvairiose aplinkose, tad ne visi gestai gali būti tinkami visiems.

„Job Simulator“

„Job Simulator“. Gerai: paprastos virtualios rankos, taip pat aplinka ir rankos vienodo stiliaus.

Vibracijos ir fizinė išvestis

Fizinė liečiamoji išvestis (angl. haptic feedback):

  • Gali būti naudojama vietoje vizualių elementų, pavyzdžiui, kaip indikatorius užėjus žymekliui ant reikiamo taško, mygtuko ar kt. elemento (angl. mouse over).
  • Gali būti naudojama perteikti tekstūrą, pavyzdžiui, jeigu žaidėjas įtempinėja lanką, tai vibracijos ar pan. intensyvumas gali būti tiesiogiai susietas su lanko įtempimo stiprumu.
  • Galima atkreipti žaidėjo dėmesį į svarbius dalykus, kurie tuo metu nėra jo matymo lauke, taip indikuojant, kad jam reikia apsisukti ar apsidairyti.

Vietoje pabaigos…

…noriu visiems perskaičiusiems šį tekstą palinkėti eksperimentuoti! Ir paliksiu jus su šia John Carmack citata:

„Now is a special time. I believe that VR will have a huge impact in the coming years, but everyone working today is a pioneer. The paradigms that everyone will take for granted in the future are being figured out today; probably by people reading this message.“

Su manimi galite susisiekti per Facebook: facebook.com/zilvinas.ledas arba Twitter: @zledas

Komentarai

Atsakyk

El. pašto adresas nebus skelbiamas. Būtini laukeliai pažymėti *