Sei sulla pagina 1di 7

Dispensa sulla Realtà Virtuale - Prof.

Davide Strumendo

Realtà Virtuale

Con realtà virtuale (o VR, da Virtual Reality) intendiamo quelle simulazioni immersive fatte,
attualmente, indossando dei visori. Utilizzando un visore il nostro campo visivo viene
totalmente riempito dall’ambiente virtuale, trasportandoci effettivamente in un altro
mondo.

I visori

Esistono numerose tipologie di visori. Essi non cambiano solo per la marca ma anche, e
soprattutto, per tante caratteristiche che li rendono più o meno adatti ad esperienze diverse.
Banalizzando le caratteristiche tecniche di un qualsiasi visore per descriverlo, potremmo dire
che di base un visore è formato semplicemente da due lenti tramite le quali vediamo due
schermi (o due metà di uno stesso schermo come nel caso di un Carboard o GearVR), con un
giroscopio che registra la rotazione della nostra testa per poterci permettere di “guardarci
attorno” quando lo abbiamo addosso.

La prima cosa valutabile, comune a tutti i visori, è quindi la risoluzione


in pixel degli schermi. Essendo gli schermi molto vicini agli occhi,
meno pixel hanno più è probabile vederli. Una risoluzione più alta
permette di avere un’esperienza, dal punto di vista visivo,
decisamente migliore.

Se parliamo di visori “portatili” (cioè senza cavo), un altro fattore da tenere in


considerazione è la capacità della batteria e, quindi, in quanto tempo questa si esaurirà con
l’applicazione in esecuzione. Questo problema è comunque facilmente risolvibile, nel caso di
un evento pubblico, avendo più visori da usare a rotazione e tenendone sempre qualcuno
sotto carica.

IAAD - Corso di VREngine - Unity3d


Dispensa sulla Realtà Virtuale - Prof.Davide Strumendo

Stereoscopia

I due schermi utilizzano la tecnica della stereoscopia per dare l’illusione della profondità
all’immagine che viene vista dai nostri occhi. Per percepire la profondità, le immagini
presenti nei due schermi non possono essere infatti uguali. I due occhi dovranno vedere due
immagini leggermente “sfalsate” ed il nostro cervello le metterà insieme dandoci la
sensazione di profondità così come fa naturalmente (basta chiudere prima un occhio e poi
l’altro per vedere come la posizione di questo stesso testo cambia a seconda dell’occhio con
cui la stiamo guardando).
Un’esperienza in VR sviluppata con Unity è di base stereoscopica, i due schermi all’interno
del visore renderizzano di fatto due immagini diverse, all’interno di Unity la camera
principale viene divisa in Occhio Sinistro e Occhio Destro, spostate leggermente a sinistra e a
destra rispetto a quella principale.
Per poter aver l’effetto di profondità in foto e video 360° bisogna quindi prima accertarsi che
siano essi stessi ad essere stereoscopici (cioè ci serviranno il doppio delle immagini/video).

Foto/Video Equirettangolari

Per potere avere una foto (o un video) da guardare all’interno di un visore, ruotando la testa,
essa dev’essere in formato equirettangolare. Questo vuol dire che, applicando la foto
all’interno di una sfera, questa potrà vedersi correttamente tramite il visore.

Per scattare foto a 360° o girare video a 360° di buona qualità, servono attrezzature
particolari e fatte appositamente.

IAAD - Corso di VREngine - Unity3d


Dispensa sulla Realtà Virtuale - Prof.Davide Strumendo

Cavo o senza?

Possiamo dividere i visori in due grandi famiglie: quelli con il cavo e quelli senza.
Attualmente i visori con cavo sono da collegare ad un pc (Windows, di fascia medio/alta) che
si occupa di renderizzare i vari frame e fare i dovuti calcoli; quelli senza, definiti standalone,
hanno invece al loro interno anche i componenti per l’elaborazione.
Essendo collegati ad un pc, i visori con cavo permettono di sviluppare esperienze più ricche e
visivamente migliori (più il computer è potente, più si può osare a livello grafico), a discapito
della comodità di avere un cavo in cui gli utenti rischiano di inciampare muovendosi.
La distinzione è destinata, sperabilmente, a scomparire (almeno per quanto riguarda la
comodità dell’aver o no il cavo, non per il discorso di qualità), stanno infatti sviluppando
alcuni dispositivi per poter togliere il cavo dai visori che ne fanno utilizzo inviando i vari
segnali via Wifi al computer a cui il visore è collegato.
I visori senza cavo sono di due tipi: quelli con i componenti già integrati (come ad esempio
l’Oculus Quest o l’Oculus GO) e quelli in cui inserire un cellulare (come il Cardboard o il
GearVR). Tendenzialmente, togliendo il Cardboard in cui si può inserire anche un iPhone,
questi dispositivi hanno un sistema operativo Android (importante da sapere in fase di
sviluppo su Unity per definire quali limitazioni questo possa avere).

Tracking

Rotational Tracking
Ogni visore ha almeno un giroscopio che serve a capire la sua rotazione e permettere quindi
all’utente di guardarsi attorno all’interno dell’esperienza VR. (NB: per questo motivo gli
smartphone senza giroscopio non possono essere inseriti dentro un Cardboard)

Positional Tracking
Con il giroscopio possiamo capire solo la rotazione del visore (e quindi della testa
dell’utente), alcuni visori permettono anche di capire la posizione della testa all’interno dello
spazio. In questo modo, ad esempio, quando l’utente si abbasserà, succederà lo stesso
anche all’interno della simulazione, dando come risultato un’esperienza molto più
immersiva.
Per effettuare il positional tracking ci sono
diverse tecnologie, diverse da visore a
visore. L’HTC Vive Pro, ad esempio usa le
lighthouse, 2/3 telecamere fisse posizionate
agli angoli dell’area in cui svolgere
l’esperienza VR, eseguendo un positional
tracking definito Outside-In.

IAAD - Corso di VREngine - Unity3d


Dispensa sulla Realtà Virtuale - Prof.Davide Strumendo

L’Oculus Quest (ma anche l’HTC Vive Cosmos e l’Oculus Rift S) utilizza invece un sistema che
si chiama Inside-Out in cui le camere che servono per tracciare la posizione dell’utente sono
posizionate sul visore e non nello spazio.
Il tracking Outside-In è più preciso perchè le tre telecamere devono solo trovare il visore (e
gli eventuali controller) e calcolarne la posizione tramite triangolazione. Nel tracking
Inside-Out, invece, le camere sul visore devono “mappare” costantemente l’ambiente
circostante per capire la posizione dell’utente in relazione ad esso.
E’ importante da ricordare che le varie camere (che siano fisse o nel visore) sono,
generalmente, a raggi infrarossi. I raggi solari disturbano le camere infrarosse quindi
entrambi i sistemi non sono affidabili in condizioni di forte luce solare (ad esempio, all’aperto
di giorno).
Entrambe le tipologie di tracking permettono di sviluppare esperienze “room-scale”, in cui
l’utente può muoversi all’interno di uno spazio delimitato. Nel caso di tracking Outside-In, le
dimensioni dello spazio sono date da dove sono state posizionate le telecamere, nel caso
delle lighthouse dell’HTC Vive, la dimensione della zona dovrebbe essere al massimo un
quadrato di circa 7x7m. Anche nel caso di tracking Inside-Out esiste un massimo indicativo di
dimensioni della zona che, nel caso di Oculus Quest, è anche esso 7x7m.

Chaperone/Guardian
Quando un utente con indosso il visore si
avvicina ai limiti reali dell’area di gioco, vedrà
apparire una parete virtuale fatta apposta
per evitare che si faccia del male (o che
spacchi un controller contro una parete). Per
HTC Vive si chiama Chaperone, per Oculus si
chiama Guardian.

Motion Sickness

Pensando ad un’esperienza in VR bisogna tener conto di una cosa molto importante: la


motion sickness. Essa, definibile volgarmente come “mal di VR”, è molto simile al mal d’auto
e ne condivide le cause.
All’interno del visore gli occhi, e quindi il cervello, percepiscono il movimento e se questi non
è percepito anche dal corpo, l’utente proverà un senso di nausea (più o meno forte in base
alla sensibilità personale). Come su un’auto: vedendo il panorama e la strada scorrere il
nostro cervello sa che ci stiamo muovendo ma, rimanendo il nostro corpo immobile, viene
confuso tanto da provocarci la nausea. Ancora di più quando ci sono cambi di movimento
(un tornante in montagna, ad esempio) e, nel caso in cui non fossimo noi a guidare, non
possiamo neanche prevedere come ci muoveremo.
In una simulazione in room-scale in cui l’unico movimento dell’utente è dato dal
camminare/abbassarsi/alzarsi fisicamente all’interno dello spazio delimitato, è molto difficile

IAAD - Corso di VREngine - Unity3d


Dispensa sulla Realtà Virtuale - Prof.Davide Strumendo

che l’utente provi la motion sickness. Se, invece, l’utente può muoversi utilizzando un
controller, e stando quindi fisicamente immobile, è molto più probabile.
Per questo motivo in un’esperienza in VR non ci può essere una vera e propria “regia” delle
camere: il movimento della camera del giocatore non può essere bloccato e comandato se
non per cambiare la posizione della camera. Bloccare la rotazione della camera dà un effetto
orribile di immagine “congelata” che si muove quindi solidamente a chi guarda, perdendo
quindi qualsiasi immedesimazione. Per ovviare a questo problema bisogna trovare altri
accorgimenti (di design però, non tecnici) per “convincere” il giocatore a guardare nella
direzione in cui vogliamo che guardi senza che vaghi troppo con lo sguardo.

Alcuni fattori che incidono sulla motion sickness sono:


- risoluzioni degli schermi del visore;
- “reattività” del visore (quando l’utente gira la testa ci dev’essere il minor ritardo
possibile nel vedere la scena ruotare con lui), data dalla componentistica e dal
software;
- framerate dell’applicazione (più è basso più l’applicazione va “a scatti”. Il framerate
ottimale dovrebbe essere di circa 60fps);
- velocità di movimento (in caso di movimento dato dal controller, e non dal
movimento dell’utente in roomscale), una corsa a velocità costante può dare meno
problemi di una a velocità crescente;
- variazione della linea dell’orizzonte (sempre solo in caso di movimento dato dal
controller, far abbassare/alzare/saltare l’utente può provocargli la nausea).

Prese le dovute precauzioni durante lo sviluppo, l’unico modo sicuro per sapere se
l’applicazione provocherà motion sickness o no, è quella di farla provare ad un pubblico
variegato di persone.

Il costo della VR

Valutando l’impiego della VR all’interno di un progetto bisogna far attenzione al costo che
può avere a livello di hardware necessario (oltre che di sviluppo dell’applicazione).
La prima cosa da tener conto è il costo del visore, nel caso in cui il visore non sia standalone,
bisognerà anche considerare il costo del computer a cui collegarlo.
Prendendo, come esempio, il dover allestire per un evento una postazione con un solo visore
per un’esperienza all’interno di una fiera, possiamo stimare:
- nel caso VR non-standalone: un computer da almeno 1.500€ (ed il costo può arrivare
a raddoppiare nel caso in cui l’esperienza sia di alta qualità e quindi abbia bisogno di
ottime performance) ed un visore da 700/800€ (da raddoppiare nel caso il primo
cada e si rompa durante l’evento), per un totale di circa 3.000€;

IAAD - Corso di VREngine - Unity3d


Dispensa sulla Realtà Virtuale - Prof.Davide Strumendo

- per un’esperienza standalone, utilizzando un Oculus Quest da 450€ (e, di nuovo,


raddoppiando il costo per avere un backup), con circa 1.000€ (aggiungendo anche
dei power bank) avremo l’hardware necessario;
- se l’esperienza fosse ancora più semplice (ad esempio la riproduzione di un video
360°), utilizzando un Oculus GO da circa 250€, con un totale di 500€ avremo i
dispositivi che ci serviranno.
Non bisogna dimenticare però la tipologia di esperienza da sviluppare. Una simulazione
molto realistica, e con grandi pretese (del cliente finale) dal punto di vista qualitativo, avrà
quasi necessariamente bisogno di un budget più alto per acquistare computer+visore (ma in
quel caso il costo dell’hardware sarà una frazione del costo dell’applicazione).

Muoversi in VR

Per muoversi all’interno dello spazio, è già stato già citato l’utilizzo del room-scale per
permettere all’utente di camminare liberamente ma, in caso di spazi virtuali più ampi,
bisogna utilizzare altri sistemi per coprire l’ulteriore spazio.

Quasi ogni visore ormai in commercio viene fornito, ormai, con due controller (uno per ogni
mano) da utilizzare per interagire con l’ambiente virtuale.

Grazie ai tasti presenti sui controller si possono impiegare diversi sistemi di movimento:
- banalmente, il muoversi tramite l’analogico o le freccette;
- l’arc teleport (il modo ormai più
utilizzato e, dopo numerosi test, definito
il meno prono alla motion sickness) in
cui puntando un punto del pavimento
tramite una traiettoria ad arco (da qui il
nome) l’utente si teletrasporterà in
quella posizione.

IAAD - Corso di VREngine - Unity3d


Dispensa sulla Realtà Virtuale - Prof.Davide Strumendo

Igiene

Rimanendo nell’esempio dell’evento in fiera,


una cosa da non dimenticare sono un paio di
norme d’igiene. Tenendo a lungo (e/o con il
caldo) un visore al volto è facile che l’utente
sudi e, se questi utenti sono parecchi, oltre ad
aver fatto un ottimo lavoro, vuol dire che ad un
certo punto i visori saranno sudati e sporchi!
Per evitarlo bastano pochi accorgimenti:
- ricordarsi di pulire le lenti (basta un panno ed un liquido per occhiali, magari
anti-appannante);
- far indossare ad ogni utente una mascherina monouso (dal costo proibitivo di
qualche centesimo al pezzo)

IAAD - Corso di VREngine - Unity3d

Potrebbero piacerti anche