Realtà virtuale
La realtà virtuale è un programma di ricerca e sviluppo volto a creare la tecnologia che permetta a un essere umano di trovarsi in un ambiente simulato – costruito, cioè, al computer – tale che la sua impressione soggettiva di presenza sia, tendenzialmente, indistinguibile da quella che si prova in un ambiente reale. Benché in corso da oltre quarant’anni, il programma è ancora lontano dalla realizzazione del suo ambizioso obiettivo. Tuttavia, grazie alle nuove disponibilità della tecnologia, decisi passi avanti sono stati fatti a partire dalla fine degli anni Ottanta, inizio anni Novanta del secolo scorso, passi avanti che hanno fatto uscire la realtà virtuale dallo stadio di pura idea teorica o primitiva sperimentazione prototipale per portarla a limitate ma concrete realizzazioni.
La difficoltà principale che questo programma deve affrontare è costituita dal fatto che il mondo esterno, l’ambiente, interagisce con l’essere umano attraverso molteplici canali sensoriali – vista, tatto, udito, odorato ecc. – e se il mondo simulato deve essere indistinguibile dal mondo reale esso deve fornire ai nostri sensi le stesse impressioni che fornirebbe quest’ultimo. Bisogna quindi essere in grado di ricostruire al computer tutte le caratteristiche visive, tattili, uditive, ecc. del mondo così come appaiono ai nostri sensi: un compito immane.
Poiché la vista è il nostro senso più importante, il punto di partenza è stato il tentativo di simulare proprio il mondo visivo. È in questo ambito che si sono avuti gli sviluppi più notevoli, e se ancora si è lontani dal poter liberamente passeggiare in un mondo simulato – un mondo virtuale, appunto – ricevendo le stesse impressioni visive del mondo reale, tuttavia si può dire che qui la tecnologia è in posizione: si tratta solo di continuarne il normale sviluppo quantitativo e qualitativo e, in un tempo più o meno lungo, l’obiettivo potrà essere raggiunto. Non così per gli altri sensi, dove si è molto più indietro. Meno per l’udito, dove la tecnologia ha lavorato per oltre un secolo alla riproduzione accurata – o ‘fedele’ – dei suoni e i progressi compiuti per fare in modo che gli stimoli acustici sembrino reali sono piuttosto consistenti. La ricerca specifica su cui si è concentrato il programma di realtà virtuale in questo settore è, più che altro, quella della localizzazione spaziale del suono: la capacità di percepire da dove proviene il suono e, più limitatamente, da che distanza. I passi avanti compiuti nel riprodurre la prima di queste caratteristiche sono sotto gli occhi di tutti: dalla stereofonia al recente surround, all’audio multicanale. La realtà virtuale vi ha aggiunto una caratteristica, che è però, come vedremo, del tutto generale nel programma: rendere queste sensazioni completamente relative alle posizioni e ai movimenti del soggetto che percepisce. Dunque dal punto di vista del canale auditivo, la situazione è abbastanza soddisfacente. Odorato e gusto sono decisamente trascurabili, dal punto di vista del contributo alla ‘illusione di realtà’, anche se qualche passo iniziale nella simulazione si è fatto anche in questi campi.
Il vero problema, invece, è costituito dalla simulazione del mondo così come lo percepiamo attraverso il tatto e più in generale attraverso il corpo. Benché non sia facile rendersene conto, la percezione attraverso il corpo rappresenta di gran lunga il canale più importante dopo la vista. Un semplice esempio sarà sufficiente a illustrarlo. Si considerino le sensazioni che si provano quando, per esempio, si sta usando un mouse: il tocco delle dita sulla superficie denuncia un oggetto solido (e non molle, liquido, elastico ecc.), questa percezione è prodotta da specifiche e complesse reazioni esercitate sulle dita della mano; lo spostamento del mouse nelle varie direzioni viene percepito come uno ‘slittamento’ (anziché uno ‘sfregamento’ o altro) dalle reazioni all’azione dei muscoli della mano (e eventualmente dell’avambraccio), reazioni registrate da sensori interni ai muscoli stessi. Il peso dell’oggetto – percepito, per esempio, quando lo si solleva – viene ‘sentito’ dall’intera muscolatura del braccio, e, nel caso di oggetti più pesanti. anche da altre fasce muscolari dell’intero corpo. Una simulazione realistica deve essere capace di far provare, riproducendole, tutte queste sensazioni tattilo-corporee: solo queste, infatti, fanno diventare (letteralmente) ‘solido’ il mondo virtuale, che altrimenti resta confinato a immagini incorporee e intangibili. Si tratta di un compito enorme, poiché a differenza dei campi visivi e auditivi, dove la ricerca sulla riproduzione data da tempo (a volte, come nel caso della visione, da secoli), in questo campo ben poco è stata fatto precedentemente, al punto da poter affermare che è stato inaugurato proprio dal programma di realtà virtuale.
Sommario
1. Costruzione del modello. 2. Rendering. 3. Tracciamento della posizione. 4. Dispositivi di visualizzazione. 5. L’azione nel mondo simulato. □ Bibliografia.
1. Costruzione del modello
Consideriamo ora il funzionamento della realtà virtuale: come si costruisce un ambiente simulato tale da ‘ingannare’ i sensi e sembrare reale. Cominciamo con il nostro senso più importante, la vista, dove, come si è detto, la ricerca è più avanzata e ha già prodotto risultati consistenti. È utile distinguere due aspetti: (a) le caratteristiche che il mondo simulato deve avere per essere percepito come reale; (b) il modo attraverso cui questo mondo deve essere veicolato al soggetto percipiente perché esso vi si senta effettivamente.
Il primo aspetto viene detto costruzione del modello. Poiché il mondo reale nel quale viviamo è un mondo tridimensionale, bisogna costruire un modello tridimensionale del mondo, ma siccome questo modello deve essere costruito su una superficie bidimensionale – tale è, infatti, il mezzo attraverso cui viene presentato, qualunque sia la sua natura tecnologica – ne consegue che dobbiamo costruire un modello che utilizzando due dimensioni effettive appaia alla vista come tridimensionale. Per fortuna, questo è un problema lungamente studiato: già i pittori del Rinascimento avevano cominciato a porlo in maniera scientifica e a dettare le regole che permettono questo tipo di costruzione. I mezzi secondo cui si procede sono sostanzialmente gli stessi indicati, per esempio, da Leonardo nel Trattato della pittura: la prospettiva, che dà l’impressione dei piani di profondità, e il chiaroscuro, la distribuzione della luce e delle ombre, che conferisce volumetria alle superfici piatte. C’è, però, una differenza sostanziale rispetto a Leonardo. Il mondo simulato da quest’ultimo era statico: un quadro non è altro che una singola vista di quel mondo, per costruirne un’altra bisogna fare un altro quadro. L’esperienza del mondo reale è però sostanzialmente dinamica, in movimento: non solo perché vi sono oggetti che si muovono, ma in primo luogo perché noi non stiamo quasi mai fermi, e meno che mai con la testa immobilizzata nella stessa posizione. È sufficiente non solo muoversi, ma anche soltanto girare di pochi gradi la testa, alzarla o abbassarla, o spostarla lateralmente perché la vista dello stesso mondo cambi. È un fatto ben noto a tutti i teorici classici della prospettiva: ricordiamo, infatti, che la costruzione prospettica di una scena, che è l’elemento centrale per conferire tridimensionalità a una rappresentazione a due dimensioni effettive, viene sempre effettuata in relazione a un punto di vista (facilmente rintracciabile in un qualunque quadro che rispetti le regole della prospettiva). Quindi, se vogliamo simulare il nostro mondo in modo realistico, abbiamo bisogno di un sistema in grado di effettuare la costruzione prospettica del mondo in relazione a continui cambiamenti del punto di vista. Questo problema è stato sostanzialmente risolto grazie all’enorme incremento della velocità di calcolo dei computer, a partire proprio dalla fine degli anni Ottanta.
Perché il computer costruisca il mondo in relazione a un punto di vista, esso deve prima avere il modello del mondo. Questo modello deve essere immesso, ovviamente, da chi vuole effettuare la simulazione: esso viene costruito, in sostanza, così come si costruirebbe un modellino fisico tridimensionale, di quelli comunemente chiamati plastici; solo che anziché con materiali e attrezzi fisici esso viene costruito dentro il computer. ‘Il materiale’ con cui si costruisce dentro il computer consiste in poligoni bidimensionali – sostanzialmente dei triangoli – unendo i quali si compongono tutte le superfici del modello: è un po’ come se per costruire il modellino avessimo a disposizione un numero enorme, praticamente infinito, di triangoli di tutte le forme e dimensioni e li usassimo come si usano le tessere di un mosaico, non però per disegnare su una superficie piana ma per costruire oggetti volumetrici nello spazio. È facile rendersi conto che se i triangoli sono sufficientemente piccoli e se ne possono usare quanti se ne vuole, si potrà modellare con essi qualunque superficie anche quelle più curve e irregolari. Applicata allo spazio tridimensionale, è la stessa procedura per cui aumentando il numero di lati di un poligono regolare ci si avvicina sempre più a un cerchio e, in generale, è possibile approssimarsi a qualunque linea curva impiegando dei segmenti di linea retta purché siano sufficientemente piccoli e numerosi: quanto più piccoli e numerosi saranno tanto più il risultato sarà simile alla curva originale. Il triangolo è, nello spazio tridimensionale, l’equivalente del segmento di retta sulla superficie bidimensionale. Inoltre, essendo il poligono più semplice – quello col minor numero di lati possibile – permette di immagazzinare meglio, più economicamente, i dati che lo rappresentano.
La posizione nello spazio di ogni triangolo è rappresentata, infatti, dalla posizione dei suoi vertici, dunque dalle tre coordinate che individuano univocamente un punto nello spazio tridimensionale (x,y,z). Ne consegue che tre di queste terne di numeri rappresentano univocamente la posizione del triangolo nello spazio: questo è il sistema con il quale è possibile immagazzinare l’intero modello nel computer. Basterà, infatti, registrare la posizione nello spazio di ciascuno dei triangoli che abbiamo ‘usato’ per costruirlo e dunque basterà registrare le tre terne di numeri relative a ogni triangolo. Il modello sarà, così, perfettamente definito. Si tratta naturalmente di una massa considerevole di dati, soprattutto per un modello che voglia essere sufficientemente preciso e dettagliato da assomigliare alla realtà (per es., si parte dalle decine di migliaia per arrivare ai milioni). Ma processare enormi masse di numeri è proprio quello che i computer sono creati per fare. Tuttavia, una volta costruito e immagazzinato il modello bisogna affrontare il problema cruciale: effettuare la costruzione prospettica del modello in relazione a un determinato punto di vista.
2. Rendering
Questo compito è affidato a un algoritmo – una procedura, chiamata in gergo rendering – che grosso modo fa l’equivalente di ciò che fa il disegnatore quando deve ritrarre su un quadro o disegnare su un foglio una vista del mondo reale: trasforma le misure, le posizioni, le distanze degli oggetti reali in punti e linee sulla tela o sulla carta secondo le regole della prospettiva, determinando cosa si vede e cosa non si vede (perché coperto rispetto al punto di vista), oltreché come si vede (linee parallele nella realtà potranno, per es., apparire convergenti verso un punto di fuga).
Ovviamente, questo compito è tanto più gravoso quanto più il modello è complesso. D’altra parte abbiamo anche visto che, data la maniera in cui è costruito il modello, quanto maggiore è il dettaglio e l’approssimazione alla realtà che chiediamo, tanto maggiore è la complessità del modello (che nel caso del computer significa direttamente numero dei poligoni che lo costituiscono). Tutto ciò non avrebbe alcuna importanza se il tempo a disposizione perché l’algoritmo esegua i suoi calcoli e costruisca la vista fosse illimitato (o comunque lungo come quello del pittore e del disegnatore): basterebbe aspettare e prima o poi produrrebbe il disegno corretto relativo a un punto di vista. Di fatto, questo è esattamente quanto accade nella che non ha a che fare con la realtà virtuale; per esempio, quella che crea gli effetti speciali del cinema. Qui il mondo simulato è altamente complesso proprio perché si vuole che esso sia indistinguibile dal mondo reale ripreso dalla cinepresa, altrimenti sarebbe impossibile unirlo ad esso nel montaggio della sequenza filmica. Il computer deve quindi produrre la scena come vista dall’‘occhio’ della cinepresa e se il modello è complesso esso può impiegare anche ore per farlo. Inoltre, alla fine di questo lavoro, si sarà prodotto un solo fotogramma. Poi bisognerà ricominciare da capo per produrre il successivo fotogramma dove qualcosa sarà leggermente diverso – giacché nel cinema le immagini sono, appunto, in movimento –, poi il successivo ancora e così via. Ricordando che sono necessari 24 fotogrammi per produrre un secondo di film, è facile immaginare quale mole di lavoro richieda la simulazione dei mondi visivi effettuata con questa tecnologia. Ma siccome il lavoro lo fa automaticamente il computer, e si tratta quindi esclusivamente di tempo macchina che può scorrere giorno e notte senza interruzione e senza intervanto umano, non c’è molto da preoccuparsene, a meno di speciali esigenze di lavorazione.
Non così per la realtà virtuale. Qui il lavoro di costruzione del modello relativamente a un punto di vista non può esser fatto, in generale, in un tempo maggiore di un sedicesimo di secondo. Se il tempo è più lungo, qualunque effetto di verosimiglianza con la percezione visiva reale ipso facto svanisce. Proprio il paragone col cinema, appena citato, aiuta a capire perché. Il problema centrale non è quello di generare una vista illusoriamente corretta del mondo (cosa che già i pittori del passato sapevano fare), ma di generarne di continuo, dato che basta un qualunque movimento del corpo o anche solo della testa dell’osservatore perché questo punto di vista cambi: è necessario allora che ‘istantaneamente’ cambi anche la vista in modo da adeguarsi al nuovo punto di vista. Il valore temporale preciso che deve avere quell’‘istantaneamente’ è funzione complessa di diversi parametri determinati dal modo in cui il sistema neurofisiologico della visione giunge alla percezione del movimento integrando quelle che sono successive immagini retiniche statiche. Senza entrare in difficili tecnicismi – la percezione del movimento è uno degli argomenti più lungamente studiati e dibattuti – si può dire che un parametro fondamentale è la velocità del movimento: per la maggior parte dei movimenti ‘normali’, esso non deve superare il sedicesimo di secondo. Per questo i film non possono essere realizzati a meno di 16 fotogrammi al secondo e normalmente se ne impiegano 24. Naturalmente, questo valore può salire se il movimento è molto lento – e arrivare a un dodicesimo, un decimo – come pure diminuire se il movimento è veloce. Se il tempo impiegato è superiore, il soggetto percepirà un gap tra il movimento del suo corpo o della sua testa e la vista che gli viene presentata, come se la vista seguisse con ritardo, e il mondo sembrerà muoversi a scatti. Questo naturalmente farà cessare qualunque illusione di trovarsi nel mondo simulato, dato che si tratta di un fenomeno che non può verificarsi nella realtà. Dunque perché la percezione visiva del mondo simulato sia non solo prospetticamente corretta relativamente al punto di vista del soggetto percipiente, ma anche realistica in termini di movimento, cioè tale da far corrispondere a ogni movimento la vista appropriata con continuità e senza salti, proprio come avviene nella realtà, è necessario che la costruzione di tale vista avvenga in non più di un sedicesimo di secondo, ovvero – il che è la stessa cosa – facendo generare al computer almeno 16 costruzioni al secondo. E ricordiamo che si tratta di una soglia minima; in realtà perché i movimenti appaiano fluidi è necessario generarne ben di più (non a caso il cinema, che pur tendeva a utilizzare il più basso valore possibile per risparmiare sull’alto costo della pellicola, si è stabilizzato sui 24 fotogrammi al secondo).
Questa enorme differenza tra generare la vista in un tempo praticamente illimitato e comunque anche di ore, rispetto a doverla generare in meno di un sedicesimo di secondo dà la misura della differenza tra la normale computer grafica tridimensionale e quella necessaria per la realtà virtuale: quest’ultima deve essere, come si dice, una generazione ‘in tempo reale’, oppure ‘on-line’, opposta all’altra che è ‘off-line’. A parità di modello generato, è una differenza di molte migliaia di volte, motivo per cui la realtà virtuale necessita di un enorme potere di calcolo. Ma anche con un enorme potere di calcolo – poiché neanche i supercomputer sono decine di migliaia di volte più veloci degli altri – non si può raggiungere solo con esso la soglia desiderata. In realtà si deve necessariamente ricorrere a una serie di artifizi. Uno dei più importanti è quello che si chiama ‘alleggerimento’ del modello: bisogna diminuire drasticamente il numero di poligoni di cui è fatto il modello (rispetto a come è fatto nel caso della grafica off-line: questo è il motivo per cui i due modelli non sono affatto intercambiabili). Però questo diminuisce, come si è visto, la qualità e fedeltà della riproduzione e dunque il grado di realismo. Vi sono allora una serie di altri espedienti mediante i quali si cerca di compensare questa perdita, ingegnosi trucchi visivi che manipolando la ‘copertura’ delle superfici – in termini di pattern di colore, luci, ombre – riescono a compensare una minore definizione del modello geometrico. Bisogna infatti ricordare che quello che abbiamo descritto finora è la sola costruzione del modello geometrico, della ‘forma’, del mondo simulato: la sua struttura in termini di poligoni, che, se mostrata, appare come un’intelaiatura di fili, e cioè i lati degli innumerevoli poligoni che la compongono, ed è chiamata, non a caso, wire frame. Tutto il resto manca. Le superfici vengono aggiunte con un procedimento detto texture mapping, e cioè stendendo sull’intelaiatura delle fotografie o disegni, cioè delle immagini bidimensionali preparate in precedenza. Il procedimento è paragonabile alla copertura con un tessuto: bisogna determinare in quali punti esso viene ‘cucito’ all’intelaiatura in modo che possa seguire le deformazioni – stirature e compressioni – che la costruzione prospettica impone alla struttura. Nel texture mapping risiede uno dei trucchi per alleggerire il modello: anziché disegnare in poligoni tutti i dettagli di un oggetto si può, in determinate condizioni, sostituirli con una foto piana. Per esempio, anziché modellare tridimensionalmente in poligoni tutti i piccoli rilievi di una superficie ruvida o rugosa, si può sostituirli con un’unica foto che li rappresenta incollata su un’unica superficie liscia: a certe condizioni (per es., si esclude o si ritiene poco probabile che si possa portare il punto di vista al livello dei microscopici rilievi), la perdita di realismo è minima e il guadagno in leggerezza è notevole.
Con il texture mapping il modello del mondo a ‘intelaiatura di fili’ acquista superfici piene e colore e dunque una componente fondamentale del suo apparire realistico. Manca ancora un elemento essenziale: la luce e il suo correlato, le ombre. Numerosi e complessi sono gli algoritmi che, date le sorgenti luminose, rendono poi tutti i molteplici fenomeni di illuminazione diretta e riflessa e tutte le sfumature di ombra, importantissime per conferire volumetria agli oggetti. E proprio per questa ragione, anche con questo elemento si può giocare per diminuire il numero dei poligoni affidando alla luce, anziché al modello geometrico, la definizione della forma. Bilanciare questi diversi mezzi a disposizione, saperli sfruttare secondo le loro migliori proprietà per ottimizzare il mondo simulato rappresenta un’ ‘arte’, l’arte della realtà virtuale. E di vera e propria arte si tratta perché il saper ‘dosare’ questi mezzi facendoli interagire in modo ottimale è frutto, più che altro, di esperienza e sensibilità, oltre che dell’indispensabile conoscenza tecnica, e contribuisce alla bontà del risultato in maniera determinante, spesso più che una grande potenza degli apparati tecnologici. Anche per l’illuminazione c’è, tra l’altro, il problema della costruzione relativa a un punto di vista e dunque del suo rapido aggiornamento: gli effetti dell’illuminazione possono cambiare al mutare del punto di vista, soprattutto per i fenomeni di riflessione; è sufficiente pensare, per esempio, come cambia alla vista una semplice superficie lucida illuminata da un fascio direzionale di luce (per es., un faretto ) a mano a mano che ci si sposta lateralmente lungo di essa.
3. Tracciamento della posizione
Aggiunto il lavoro degli algoritmi di illuminazione, il mondo simulato ha tutte le caratteristiche per poter ingannare la vista, naturalmente se è stato ben costruito e il rendering avviene velocemente. La base fondamentale e imprescindibile di questa illusione è, come abbiamo visto, il fatto che può seguire il punto di vista del soggetto che lo osserva in tutti i suoi spostamenti in maniera naturale. Bisogna ora vedere come fa il sistema che disegna il mondo in relazione al punto di vista a sapere dov’è il punto di vista del soggetto e inoltre come fa a saperlo con precisione e istantaneamente (secondo il senso appena illustrato) quando quest’ultimo si sposta o comunque muove la testa. Questo è compito di un particolare hardware denominato ‘sistema di tracciamento della posizione’: si tratta di un dispositivo montato fisicamente sulla testa del soggetto che interagendo, in diversi modi possibili, con un sistema fissato nell’ambiente è capace di determinare la posizione della testa nello spazio fornendo le tre coordinate spaziali che la identificano (x, y, z). Per determinare però con precisione il punto di vista è necessario anche sapere verso dove è rivolto lo sguardo da quella posizione spaziale. Bisogna perciò rilevare anche l’orientamento della testa, che si ottiene misurando i tre angoli che definiscono, rispettivamente, la sua rotazione, il suo innalzamento (alto-basso) e la sua inclinazione (destra-sinistra), o, usando la più precisa terminologia aeronautica, l’imbardata, il beccheggio e il rollio. Questi dispositivi sono anche detti ‘a sei gradi di libertà’, poiché forniscono, appunto, i sei valori in base ai quali il punto di vista del soggetto è perfettamente definito.
Ve ne sono di diversi tipi, a seconda del sistema fisico che usano per compiere queste determinazioni. Tra i più comuni, vi sono quelli che impiegano il campo magnetico. Il piccolo dispositivo che il soggetto indossa sulla testa contiene tre piccoli elettromagneti orientati perpendicolarmente l’uno rispetto all’altro. Attivandoli in sequenza e misurando il campo magnetico che viene generato su altri tre elettromagneti perpendicolari fissi è possibile determinare la posizione e l’orientamento dell’unità mobile che contiene i tre elettromagneti, dunque univocamente il punto di vista del soggetto che la porta sulla testa. In altri sistemi, al posto del campo elettromagnetico, si usano LED a raggi infrarossi e telecamere che li possono rilevare misurandone distanza e angolazione (sistemi ottici); in altri ancora, si usano ultrasuoni (sistemi acustici). In altri, infine, il sistema è del tutto meccanico: la testa del soggetto è connessa a una ‘base’ attraverso un braccio meccanico articolato che permette alla testa a al corpo di muoversi in tutte le direzioni pur rimanendo ‘attaccati’ (naturalmente con forti limitazioni sul raggio di movimento); posizione e orientamento vengono calcolate misurando gli angoli dei giunti che uniscono i diversi segmenti del braccio.
La varietà dei sistemi è dovuta alla ricerca di ottimizzazione. C’è un primo problema analogo a quello, appena visto, dell’ottimizzazione della costruzione del modello: bisogna coniugare la precisione del sistema con la sua velocità di risposta. Quest’ultima è naturalmente cruciale, dato che deve rientrare nel sedicesimo di secondo in cui deve avvenire l’aggiornamento del punto di vista; deve, in realtà, avvenire in un tempo molto più breve, dato che è tutto tempo che viene sottratto alla procedura di rendering del modello: questa infatti non può cominciare se non ha a disposizione proprio i dati provenienti dal tracciatore, i dati che definiscono il punto di vista in base al quale la costruzione deve essere effettuata. Vi è poi un secondo problema: la libertà di movimento che il sistema permette al soggetto. Così, per esempio, il sistema meccanico, risolve brillantemente il primo problema – precisione e velocità sono ottime – ma costringe il soggetto a stare attaccato a un braccio meccanico che ne limita fortemente i movimenti. Al contrario, i sistemi ottici e acustici sono ottimi per la loro portabilità, ma i primi possono avere tempi di risposta troppo elevati e i secondi possono non essere sufficientemente precisi. Il sistema magnetico sembra essere quello che presenta il miglior compromesso: è preciso e rapido, ed è facile da portare; il suo raggio d’azione, però, tende a essere più limitato. Inoltre, può avere seri problemi di interferenza ogni volta che nelle vicinanze c’è un campo elettromagnetico, o anche solo un grosso oggetto metallico, il che in un ambiente dove lavorano molte macchine elettroniche è tutt’altro che una possibilità remota. D’altra parte, anche i sistemi acustici e ottici possono subire interferenze da ostacoli capaci di interagire con il mezzo di rilevazione che utilizzano: i sistemi ottici, in particolare, devono avere una ‘visuale’ perfettamente libera tra il sensore e il rilevatore. Non soffre, naturalmente, di alcun problema di interferenza il sistema meccanico.
4. Dispositivi di visualizzazione
Tramite il tracciatore di posizione, il sistema riesce a costruire il modello del mondo simulato in perfetto accordo con il punto di vista del soggetto che lo guarda e con tutti i suoi movimenti. Questa è la base essenziale perché il soggetto abbia l’impressione di esser dentro quel mondo, dato che ovunque si volge o si muove, in qualunque momento, a suo piacimento, la scena cambia esattamente come accadrebbe nella realtà. C’è ora il problema del come concretamente far vedere il mondo così generato al soggetto percipiente. Il mondo simulato è una rappresentazione bidimensionale, illusoriamente percepita come tridimensionale, dunque è fisicamente portato da una superficie piana, tipicamente da uno schermo televisivo: il problema è come disporre questo schermo in modo che non sembri uno schermo, ma ricopra il campo visivo naturale dell’osservatore. Questi, inoltre, ha due occhi e non uno, dunque ha in realtà due punti di vista leggermente sfalsati, che sono essenziali per la percezione della profondità (). La soluzione migliore trovata finora è quella di avere due piccoli schermi posti molto vicino agli occhi del soggetto, fissati alla testa così da restare sempre nella stessa posizione rispetto agli occhi qualunque siano i movimenti della testa o del corpo, e incapsulati in una qualche struttura che non permetta di vedere null’altro se non gli schemi stessi (altrimenti cessa l’illusione che essi non siano schermi ma la vista del mondo). Un dispositivo di questo genere prende il nome di HMD (Head mounted display); esso ha la forma di un ‘casco-visore’ (helmet), totale o parziale (simile, cioè, a un vero e proprio casco da motociclista oppure a occhialoni protettivi), che si indossa sulla testa e isola completamente, almeno visivamente, dal mondo circostante. Siccome ci sono due schermi è possibile proiettare su di essi due punti di vista leggermente diversi, uno corrispondente all’occhio destro e uno al sinistro, e riprodurre così la stereovisione, il fattore che contribuisce maggiormente alla percezione della profondità, soprattutto per gli oggetti vicini. Il casco-visore contiene anche il tracciatore di posizione e orientamento della testa.
Se alcune condizioni critiche sono soddisfatte, questo apparato è in grado di offrire un alto livello di immersività – la sensazione, cioè, di trovarsi dentro il mondo simulato –, certamente superiore a quello di altri sistemi di visualizzazione. Una delle più cruciali di queste condizioni (e anche un po’ il tallone di Achille di questi dispositivi) è l’ampiezza del campo visivo: nei normali apparati commerciali esso non supera i 40°÷60°, che è molto poco rispetto ai circa 150°÷160° orizzontali e 130° verticali tipici della vista naturale. Ciò crea l’effetto ‘paraocchi’ – come se si portassero dei grossi paraocchi laterali e orizzontali – o, nei casi più estremi, l’effetto ‘tunnel’: come se si guardasse il mondo da dentro un tunnel. Si possono usare ottiche di varia natura per allargare questo campo visivo anche ben oltre i 100° (ce ne vogliono almeno 80° perché scatti un soddisfacente livello di immersività), ma ciò complica notevolmente il dispositivo: le ottiche causano gradi più o meno elevati di distorsione che vanno poi compensati e aumentano il peso del dispositivo. Inoltre, a un maggiore campo visivo corrisponde una maggiore porzione del mondo da disegnare: quindi maggiore richiesta di calcolo. Un’altra condizione importante è la risoluzione e la luminosità dell’apparato. Schermi a cristalli liquidi (LCD) possono essere più leggeri e maneggevoli, ma sono meno luminosi e la loro risoluzione è, nelle condizioni dell’HMD, limitata dalla grandezza fisica dei cristalli, e dunque dal numero che se ne possono stipare in una superficie relativamente piccola. Migliori sia per risoluzione sia per luminosità sono piccoli schermi a raggi catodici (CRT, Cathode ray tube) ma sono più ingombranti, più pesanti e richiedono un’energia molto maggiore; il che per un dispositivo che si deve portare sulla testa non è ideale. Generano inoltre campi elettromagnetici, che possono disturbare l’attività del tracciatore di posizione quando è del tipo elettromagnetico. È vero, d’altra parte, che la tecnologia degli LCD sta rapidamente migliorando, mentre quella CRT va gradualmente sparendo: non è difficile intravedere un progresso abbastanza rapido che porterà ad avere dei display leggeri e maneggevoli, con schermi ad alta risoluzione e con ampio campo visivo. Bisogna infine ricordare che questi dispositivi permettono la visione stereoscopica, ma ciò obbliga a generare per ogni scena, e quindi per ogni fotogramma, due costruzioni del modello secondo i due punti di vista leggermente sfalsati; due costruzioni simultanee significano, essenzialmente, il doppio delle capacità di cui abbiamo parlato finora (anche se, come vedremo tra breve, esistono qui pure trucchi per ridurre tale richiesta). Si tratta, tuttavia, di una questione del tutto pratica, più che teorica o tecnologica: disporre di un maggior potere di calcolo, cosa che può avere costi elevati o anche proibitivi oggi ma sicuramente destinati a diminuire drasticamente.
Se l’HMD è il dispositivo di visualizzazione che, alle condizioni appena viste, offre il massimo di immersività, è vero anche che esso è il più costoso, il più dispendioso di risorse, il più delicato e anche il meno maneggevole – indossarlo e portarlo con tutti i cavi e/o bracci attaccati è piuttosto laborioso – di questi dispositivi; inoltre, è rigorosamente per un solo osservatore: nulla traspare all’esterno del casco. Una strada alternativa all’HMD è quella di cercare di ottenere l’immersività espandendo enormemente lo schermo su cui il mondo simulato viene proiettato. Qui si ottiene l’inmmersività poiché si viene fisicamente ‘immersi’ nello schermo, dato che esso è più grande dell’osservatore. Il sistema che sviluppa più a fondo questo concetto è chiamato CAVE (Cave automatic virtual environment). Esso consiste di un’intera stanza le cui pareti sono schermi. Ne esistono due versioni. Una, estrema, in cui le sei pareti della stanza – le quattro verticali, più pavimento e soffitto – sono tutti schermi a retroproiezione (schermi, trasparenti, in cui l’immagine è proiettata sulla faccia opposta a quella che si guarda, e cioè sul retro): il soggetto è così interamente circondato dal mondo simulato anche sulla testa e sotto i piedi. L’altra, più semplice, in cui le pareti di proiezioni sono quattro: tre verticali – manca quella che sta dietro il soggetto il cui spazio viene lasciato vuoto e usato come accesso all’ambiente – più il pavimento, ma non il soffitto che è semplicemente oscurato. Anche la versione più ridotta è del tutto sufficiente a dare un forte senso di trovarsi dentro il mondo simulato. Il soggetto che entra nella stanza porta sulla testa un tracciatore di posizione che governa la costruzione del mondo simulato sulle pareti e sul pavimento in funzione della sua posizione e dei suoi movimenti. Non dovendo indossare un casco, il soggetto è molto meno impacciato, più libero e leggero: le sue posture e i suoi movimenti possono essere molto più simili a quelle naturali. È, inoltre, ovviamente risolto il problema dell’ampiezza del campo visivo.
Ingegnoso è il sistema che permette di mantenere una visione stereoscopica pur non avendo schermi separati per i due occhi. I due punti vista, quello relativo all’occhio destro e quello relativo all’occhio sinistro, vengono proiettati sullo stesso schermo uno dopo l’altro, alternandoli velocemente. Contemporaneamente il soggetto indossa degli occhiali che hanno la proprietà di poter oscurare (attraverso una specie di ‘otturatore elettronico’) l’una o l’altra lente. Questo oscuramento avviene in perfetta sincronia con l’alternanza che si produce sullo schermo, così che quando sullo schermo viene proiettata l’immagine relativa all’occhio destro, la lente sinistra viene oscurata in modo che solo l’occhio destro veda lo schermo, e viceversa, quando viene proiettata l’immagine relativa all’occhio sinistro, viene oscurata la lente destra così che solo l’occhio sinistro può vedere. Se quest’alternanza è abbastanza rapida (ca. 100 volte al secondo), grazie al fenomeno della persistenza dell’immagine sulla retina, entrambi gli occhi avranno l’immagine appropriata come se le due fossero contemporanee. L’otturatore elettronico delle lenti è naturalmente comandato dal computer in sincronia con la proiezione sullo schermo, attraverso raggi infrarossi. Questo sistema può essere usato in generale tutte le volte che si ha un singolo schermo e si vuole avere una visione stereoscopica degli oggetti presentati sullo schermo stesso. Di questi occhiali stereoscopici esiste una versione meno sofisticata (e molto più economica) che fa a meno dell’otturatore elettronico. Sfrutta la polarizzazione delle lenti per ottenere l’effetto di blocco dell’uno o dell’altro occhio. In questo caso, i due punti di vista vengono proiettati simultaneamente sullo stesso schermo, ma con due polarizzazioni diverse ortogonali tra loro: se si indossano gli occhiali, ciascun occhio ne vedrà uno solo (quello appropriato), dato che la lente polarizzata lascerà passare solo quello con la stessa direzione. La resa ottica della stereoscopia di questi occhiali, che vengono detti ‘passivi’, è inferiore a quella di quelli a otturatore elettronico comandati a infrarossi, che vengono detti ‘attivi’. (per es., se si inclina troppo la testa modificando l’angolo delle lenti rispetto a quello della proiezione l’effetto scompare). Ma mentre i secondi sono delicate apparecchiature elettroniche, i primi possono essere semplici fogli di cartoncino e plastica ‘usa e getta’.
Presentazioni meno immersive del CAVE, ma anche meno complicate, possono realizzarsi, seguendo lo stesso approccio, con qualunque grande schermo, purché sufficientemente grande rispetto alla persona. Per ottenere un ampio campo visivo, si usano a volte due o tre schermi uniti uno all’altro ad angolo ottuso (tipo Cinerama), oppure direttamente uno schermo ad arco di cerchio con due o tre proiezioni affiancate. Tutti questi sistemi, data la loro dimensione, si prestano anche a essere fruiti da più persone contemporaneamente: basterà dare a ciascuno un paio di occhiali stereoscopici. Bisogna tuttavia sottolineare che una realtà virtuale ‘condivisa’, nel senso di più persone che usano lo stesso schermo, non è possibile. La costruzione del mondo simulato avviene, infatti, sempre in funzione di un solo punto di vista: ciò significa che essa è, per definizione, adeguata a un unico spettatore, quello in funzione del cui punto di vista il mondo è costruito. Si possono mettere più persone all’interno del CAVE, per esempio, ma uno solo indosserà il tracciatore di posizione del corpo e della testa e il sistema reagirà solo ai suoi movimenti. Tutti gli altri non avranno alcun feedback ai loro movimenti – la vista non cambierà in funzione di essi – un distacco che renderà l’immersività praticamente nulla. Non solo, ma vedranno anche un mondo più o meno distorto: tanto più distorto quanto più saranno lontani e/o diversamente orientati rispetto al soggetto che indossa il tracciatore e quanto più ‘vicino’ sarà il mondo che si osserva. Per questo motivo, nei casi di visione collettiva è preferibile usare la metafora del ‘veicolo’: fare, cioè, come se gli spettatori fossero tutti a bordo di uno stesso veicolo. Il punto di vista diventa allora quello del veicolo, che viene fatto muovere e guidato tramite un meccanismo capace di simularne il movimento nello spazio. Il tipico meccanismo di questo genere è il joystick. Il joystick determina, e fornisce al computer, la posizione del punto di vista in base ai movimenti che gli si fa compiere: se il manovratore lo inclina in avanti la posizione del punto di vista traslerà nello spazio seguendo una retta dritta di fronte a lui; se lo inclina verso destra il punto di vista traslerà verso la sua destra seguendo un linea ortogonale alla prima; e così via. Naturalmente i movimenti si possono combinare: se il joystick viene inclinato sia in avanti sia a destra, il punto di vista si sposterà contemporaneamente in avanti e verso destra, descrivendo in tal modo il tipico percorso di una curva a destra, più o meno stretta a seconda di quanto è inclinato a destra rispetto a quanto è inclinato in avanti. Il movimento risultante da questo tipo di input apparirà come uno ‘scorrimento’ regolare, come se si trattasse, cioè, del movimento di un veicolo su ruote (o su rotaie) che si sposta su una strada piana e liscia. Non risentirà, quindi, delle irregolarità – sobbalzi, scuotimenti, oscillazioni – tipiche dall’andatura umana, come avviene quando il tracciatore di posizione è indossato da uno spettatore, irregolarità che non vengono percepite dal soggetto che si muove (essendo compensate dal suo feedback motorio), ma appaiono come continui, e sgradevoli, sussulti della vista agli altri spettatori che vi assistono passivamente. La metafora del veicolo riduce di molto l’effetto di mancanza del feedback ai movimenti personali che, come si è detto, caratterizza gli spettatori ‘passivi’, inducendo a pensare che i cambiamenti di vista sono prodotti dai movimenti del veicolo e che li si osserva dal ‘parabrezza’ (o, nel caso di ambienti tipo CAVE, dal parabrezza e finestrini) del veicolo stesso. Se gli spettatori sono raggruppati sufficientemente vicino alla localizzazione del punto di vista tracciato dal joystick e il mondo rappresentato evita i piani troppo vicini, l’effetto illusorio, grazie all’esperienza molto familiare del movimento a bordo di un veicolo che tutti abbiamo, è abbastanza potente e soddisfacente. Manca, purtroppo, un elemento essenziale per il realismo della situazione: quello costituito dalle forze che avvertiamo sul nostro corpo in funzione delle diverse accelerazioni del veicolo e delle asperità del terreno. A questo si può ovviare con una ‘guida accorta’: se il veicolo si sposta molto piano tutte queste accelerazioni sono, nella realtà, minime e dunque non apparirà sommamente irrealistico non percepirle affatto.
Lo spostamento producibile tramite il joystick non è necessariamente limitato ai movimenti orizzontali su un piano: si può altrettanto bene produrre movimenti dello stesso tipo nello spazio, simulando, così, quelli di un velivolo. Mancheranno anche qui – tranne che negli speciali casi che vedremo tra breve – tutte le sensazioni corporee, ancora più complesse e articolate, dovute alle accelerazioni e ai cambiamenti di pressione che il volo tipicamente produce.
5. L’azione nel mondo simulato
Il joystick è l’emblema di quella che è a tutt’oggi l’applicazione più diffusa e probabilmente più importante (almeno in termini economici) della realtà virtuale: i videogiochi. Qualunque videogioco di quelli che in linguaggio cinematografico si possono chiamare ‘in soggettiva’, dove cioè si vede il mondo e ci si muove ‘in prima persona’, contiene infatti quello che abbiamo visto essere l’elemento costitutivo centrale della realtà virtuale: la costruzio-ne del mondo simulato in funzione di un punto di vista libero di muoversi a piacere ‘in tempo reale’. Ciò in cui i videogiochi tendono a differire da altre tipiche applicazioni della realtà virtuale sono proprio le modalità di controllo del movimento e di display del punto di vista.
Si può dire che il videogioco ha rinunciato a ottenere l’immersività spingendo sul versante della percezione visiva. Ha rinunciato, quindi, a sistemi di display immersivi, tipo i caschi, e alla visione stereoscopica, contentandosi di ciò che si vede su un qualunque schermo televisivo (anche per scelta commerciale: gran parte dei dispositivi di hardware e software per i videogiochi sono fatti per funzionare attaccati alle normali televisioni), e ha adottato, di conseguenza, quella che abbiamo chiamato la ‘metafora del veicolo’: tutti i movimenti avvengono tramite il joystick, anche quelli della persona (dove si può anche arrivare a uno sdoppiamento: muovere una proiezione di se stessi, rappresentata da una figura, nel mondo virtuale: il cosiddetto ‘avatar’). Spesso, comunque, non si tratta di una metafora ma di un veicolo vero e proprio: molti dei giochi più popolari consistono nel pilotare un automobile o una moto per gareggiare, o un aereo o un mezzo militare in battaglia, o simili; in questo caso il joystick può anche prendere la forma specializzata di un volante (eventualmente con pedaliera) o di un manubrio o di una cloche, come avviene spesso nei giochi di questo tipo in versione arcade, nelle versioni che si trovano, cioè, nelle sale-giochi. Qui si può avere un certo recupero dell’immersività tramite meccanismi diversi: per ovviare alla ristrettezza del campo visivo offerto dello schermo si isola l’utente dall’ambiente circostante in qualche specie di guscio chiuso dalle pareti oscurate, nel quale è visibile solo lo schermo, ma soprattutto si utilizza uno speciale sedile, parte integrante del guscio, capace di offrire sensazioni corporee appropriate al movimento che viene impresso al veicolo e che viene mostrato dallo schermo. Cessa, cioè, proprio quell’assenza di feedback corporeo che, come abbiamo visto, rende la metafora del veicolo debole dal punto di viste dell’immersività. Tale risultato viene ottenuto con degli attuatori idraulici capaci di imprimere potenti accelerazioni in diverse direzioni – anche se per brevissimi periodi – al sedile che poggia su di essi. Siccome il nostro sistema percettivo è particolarmente sensibile alla variazione e ben poco agli stimoli costanti, è sufficiente accennare, per così dire, all’effetto del movimento perché esso sembri assolutamente reale. Così, appena il joystick viene mosso verso destra e il veicolo comincia a curvare, l’attuatore idraulico, comandato anch’esso dal sistema, spinge con un rapido impulso il sedile verso sinistra, il che dà subito la sensazione che si è cominciato a percorrere una curva a destra: è questa sensazione di inizio che è cruciale, non il persistere dell’accelerazione.
Il sistema del feedback corporeo di questo tipo è alla base di tutti i simulatori professionali di veicoli, velivoli e natanti che costituiscono l’altra grande applicazione della realtà virtuale. Particolarmente importante sono i simulatori di volo per il training dei piloti. In essi viene fisicamente riprodotta la cabina di pilotaggio dell’aereo che si deve apprendere a pilotare con tutti i suoi comandi. La proiezione del mondo simulato avviene sul parabrezza in modo solidale a esso e l’intera cabina è montata su potenti attuatori idraulici capaci di imprimerle movimenti acceleratori istantanei in qualunque direzione. Altrettanto sofisticati e sostanzialmente dello stesso tipo sono i simulatori di veicoli militari. Qui si aggiungono spesso simulatori d’arma, dispositivi, cioè che vanno azionati dal soggetto e producono effetti sul mondo simulato.
Produrre effetti sul mondo simulato è un’altro degli elementi cruciali per avere la sensazione di ‘esserci dentro’ e dunque per l’illusione di realtà. Questo elemento è molto sviluppato nei videogiochi, ed è utile a compensare la loro scarsa immersività sul versante della percezione visiva. Come il movimento, che può essere diretto – cioè, della persona che cammina – o indiretto – a bordo di un veicolo –, così anche l’azione del soggetto può essere diretta – sollevare un oggetto o spingerlo con le proprie mani – o indiretta – sparare a un bersaglio con un’arma. È naturalmente molto più facile simulare il secondo tipo di azione, dato che ci si può limitare agli effetti visivi che l’azione produce. La simulazione dell’azione diretta richiede, invece, che si produca la sensazione che l’azione produrrebbe sulla mano, sul braccio, e in generale sul corpo. Nel caso dell’azione indiretta, è sufficiente un normale meccanismo di attuazione come il joystick o dei pulsanti, dato che anche nel mondo reale quest’azione viene ottenuta agendo su congegni che provocano effetti del tutto non proporzionali all’azione meccanica che si compie su di essi: tipico è il grilletto di un’arma, il cui azionamento fisico è paragonabile a quello di un joystick, o il servosterzo di un auto, dove lo sforzo percepito è quasi solo quello di far ruotare la leva del volante, ma non le ruote con il peso dell’auto.
Un dispositivo più sofisticato per l’azione indiretta, particolarmente popolare negli ambienti classici di realtà virtuale, è il cosiddetto data glove, il guanto. E, un guanto innervato di e incorporante un tracciatore di posizione come quello degli HMD. Il tracciatore di posizione permette la collocazione della mano nell’ambiente virtuale a seconda dei movimenti del soggetto che indossa il guanto. Le fibre ottiche permettono di determinare – essenzialmente attraverso la variazione della quantità di luce che fluisce in funzione delle curve – gli angoli che si formano alle giunture delle dita e tra le dita. In questo modo posizione e articolazione precisa della mano possono essere proiettate nell’ambiente virtuale e viste dal soggetto, che può allora muovere e guidare la mano nell’ambiente virtuale e farle azionare pulsanti, leve e comandi di ogni tipo simulati anch’essi nel mondo virtuale. In questa condizione, però, il soggetto non avrà alcun feedback alla sua azione: se toccherà un oggetto solido non si accorgerà di averlo fatto, se sposterà una leva non percepirà alcuno sforzo, nemmeno minimo, sulle dita o sulla mano; l’unica indicazione dell’aver, di fatto, toccato l’oggetto verrà dagli effetti visivi che la sua azione produce: vedrà l’oggetto o la leva spostarsi.
Se si vuole invece che il mondo virtuale diventi ‘solido’, bisogna adottare, come si diceva all’inizio, tutt’altro approccio e tutt’altro dispositivo. Innanzitutto, bisogna modellare il mondo simulato in base agli effetti che producono sul corpo gli oggetti quando vengono toccati e manipolati. Effetti tattili sulle dita (come, per es., la rugosità) e effetti cinestetici su muscoli e tendini della mano, del braccio, della spalla, ecc. a seconda della loro natura (dimensioni, forma, peso) e della natura dell’azione che si compie (sollevare, spingere ecc.), detti in gergo ‘ritorni di forza’ (force feedback). È necessario, cioè, costruire il mondo come ‘appare’ non alla vista ma all’azione motoria. Bisogna, poi, costruire dei dispositivi che siano in grado di generare questi effetti artificialmente nella simulazione. Questo viene ottenuto tramite degli attuatori (di solito, serviti da motori elettrici) capaci di esercitare pressione, spingere o tirare le varie articolazioni. Gli attuatori sono montati in una struttura, simile come concezione al guanto descritto precedentemente, che viene indossata dal soggetto. A seconda del livello di sensazioni generabili, questo apparato può riguardare le sole dita, la mano e il polso, includere l’avambraccio o anche l’intero braccio e la spalla, tendendo a diventare via via un vero e proprio esoscheletro. Naturalmente tutti questi dispositivi devono incorporare anche tracciatori di posizione e di articolazione delle varie parti corporee interessate, indispensabili per comunicare costantemente la loro posizione e configurazione nel mondo simulato e determinare quindi correttamente il tipo di stimolazione cui vanno sottoposte. Come è facile intuire, il campo si complica notevolmente e numerose diventano le soluzioni tecnologiche concepibili e sperimentabili. Per questo si tratta del settore dove ci si possono aspettare i più grossi passi avanti nel prossimo futuro e altrettanto notevoli miglioramenti della sensazione soggettiva di presenza nel mondo simulato.
Bibliografia
Akenine-Möller, Haines 2002: Akenine-Möller, Tomas - Haines, Eric, Real-time rendering, 2. ed., Natick (Mass.), Peters, 2002.
Burdea, Coiffet 2003: Burdea, Grigore - Coiffet, Philippe, Virtual reality technology, 2. ed., Hoboken (N.J.), Wiley-IEEE Press, 2003.
Dorsey 2007: Dorsey, Julie - Rushmeier, Holly - Sillion, François, Digital modeling of material appearance, Boston, Kaufmann/Elsevier, 2007.
Ebert 2003: Ebert, David S. e altri, Texturing & modeling: a procedural approach, 3. ed., Amsterdam, Kaufmann, 2003.
Grunwald 2008: Human haptic perception: basics and applications, edited by Martin Grunwald, Basel, Birkhäuser, 2008.
Kim 2005: Kim, Gerard J., Designing virtual reality systems: the structured approach, London, Springer, 2005.
Larson, Shakespeare 1998: Larson, Greg W. - Shakespeare, Rob, Rendering with radiance: the art and science of lighting visualization, San Francisco, Kaufmann, 1998.
Lin, Otaduy 2008: Haptic rendering: foundations, algorithms and applications, edited by Ming Lin, Miguel Otaduy, Wellesley (Mass.), Peters, 2008.
Sherman, Craig 2003: Sherman, William R. - Craig, Alan, Understanding virtual reality: interface, application, and design, Amsterdam, Kaufmann, 2003.
Stanney 2002: Handbook of virtual environments: design, implementation, and applications, edited by Kay M. Stanney, Mahwah (N.J.), Erlbaum, 2002.