• Non ci sono risultati.

In questo paragrafo si tratteranno alcuni aspetti sui problemi affrontati durante la realizzazione di questo progetto al fine di trovare delle idee e delle soluzioni future per eventuali nuovi sviluppi.

IEnumerator Start(string urlTexture){

//creo l’oggetto per scaricare la risorsa

using (WWW www = new WWW(urlTexture))

{

//attendo che l’immagine venga scaricata

yieldreturn www;

//Ottengo il componente del materiale e assegno la

texture

Renderer renderer = GetComponent<Renderer>(); renderer.material.mainTexture = www.texture;

//prendo le dimensioni dell’immagine scaricata

float width = www.texture.width;

float height = www.texture.height;

//effettuo le proporzioni

float resizeX = 0.15f * (width / height);

//applico le propriozioni scalando il plane

transform.localScale = new Vector3 (0.0f + resizeX, 0.15f, 0.15f);

//effettuo la rotazione del piano

Vector3 rot = transform.rotation.eulerAngles;

rot = new Vector3(rot.x,rot.y+180,rot.z);

transform.rotation = Quaternion.Euler(rot); }

126

3.3.1 Virtualizzazione e carenza di prestazioni

Il primo problema riscontrato nel realizzare il progetto di ambienti virtuali è stato quello di dover trovare un ambiente compatibile con la macchina in possesso. Per fare ciò è stato necessario creare una macchina virtuale al fine di poter installare un sistema operativo compatibile con il programma di XVR e con i vari componenti della macchina ospite.

Durante la progettazione è emerso che, per avviare la macchina virtuale senza subire dei rallentamenti nei processi, era necessario privare la macchina della metà della potenza di calcolo. Anche il fatto di possedere una scheda video integrata con la scheda madre con una bassa memoria video dedicata ha fatto parte di quei problemi nel poter realizzare non solo l’ambiente virtuale ma anche per realizzare i modelli tridimensionali utilizzando il software 3DS Max, che richiede una discreta quantità di memoria.

3.3.2 Richieste HTTPS

Un’altra difficoltà nel realizzare il museo virtuale è stata relativa alle richieste HTTPS per comunicare con i server delle repository, in quanto non esiste in XVR una libreria che gestisca le operazioni asincrone con server protetti da cifratura SSL. Inizialmente sono state testate diverse soluzioni, ma le uniche funzionanti sono state quelle che prevedevano la possibilità di poter comunicare con server non protetti da cifratura tramite una libreria presente in XVR.

3.3.3 Approccio con C++

Alcuni problemi relativi alla comunicazione con i server sono stati superati tramite l’implementazione con delle librerie esterne scritte in C++ in modo da ampliare le potenzialità del software di XVR. Tuttavia è necessario notare la difficoltà nell’ approcciarsi ad un linguaggio di programmazione totalmente diverso rispetto agli altri appresi durante questo periodo universitario. Il doversi interfacciare con un linguaggio estremamente complicato è stato inizialmente un problema in quanto non si possedevano alcune basi di programmazione di C e di C++ (linguaggi prevalentemente usati in ambienti di informatica pura). Nonostante ciò, dopo il

127

primo impatto quello che inizialmente ha costituito un “problema” si è rivelato un’opportunità che ha consentito di ampliare il bagaglio di conoscenze nell’ambito della programmazione.

3.3.4 Variabilità dei metadati

Una delle difficoltà riscontrate nella realizzazione del progetto è stata quella relativa ai metadati presi da Europeana e Wikimedia Commons, in quanto molti di questi sono risultati spesso incompleti e in alcuni casi inappropriati.

In Wikimedia Commons è stato notato un problema nella presenza di alcuni metadati, in quanto spesso molti utenti che hanno caricato le opere delle gallerie d’arte hanno tralasciato alcune informazioni importanti come la descrizione di un’opera e spesso anche le date di realizzazione, rendendo la presentazione di un’opera abbastanza incompleta.

In Europeana si sono riscontrate diverse criticità dovute essenzialmente a: l’incompletezza di alcune informazioni, l’errata sintassi dei metadati e la presenza di più lingue rispetto all’inglese. È capitato spesso di ricevere delle informazioni inattendibili (ad esempio ricevere un indirizzo web al posto del nome dell’artista) e mal formate (trovare all’interno del titolo il nome dell’artista, il titolo e la data di creazione). Inoltre la presenza di più lingue non aiuta l’utente a consultare meglio l’opera.

3.3.5 Problemi nella codifica dei metadati

Uno dei problemi che si è venuto a creare rispetto alla presenza di più lingue rispetto all’inglese è stato quello relativo alla codifica testuale delle informazioni. Nel creare le librerie esterne per l’estrazione dei metadati si sono riscontrate delle difficoltà nel trattare i caratteri che hanno un peso che va al di là degli 8 bit (come per esempio quello appartenente a UTF-8), restituendo delle stringhe che contengono caratteri incomprensibili. L’unica soluzione possibile è stata quella di utilizzare dei tipi capaci di poter contenere i cosiddetti caratteri wide appartenenti a diverse lingue. Ciò non ha, comunque, risolto del tutto il problema in quanto spesso gli unici caratteri codificati sono quelli relativi alla famiglia ISO-Latin1, ovvero quelli appartenenti alle lingue latine, mentre non è stato possibile codificare caratteri appartenenti alle lingue asiatiche come il giapponese o cirilliche come il russo.

128

3.3.6 Raggiungimento delle risorse in Europeana

Rispetto a Wikimedia Commons, dove le risorse sono centralizzate, i dati multimediali in Europeana sono dislocati in diversi server appartenenti a molteplici istituzioni culturali presenti nel territorio europeo. Una buona parte delle risorse multimediali purtroppo non sono raggiungibili in quanto spesso sono presenti diversi sistemi per ottenere i file e le informazioni, ad esempio si è riscontrato che talvolta per ottenere le informazioni è necessario effettuare una richiesta POST invece che una GET; molti altri sistemi invece reindirizzano troppe volte le immagini a tal punto da renderle irraggiungibili. Per questo, da come è stato rivelato nelle statistiche, le risorse raccolte mostrano una percentuale bassa rispetto alle altre due repository.