Pubblichiamo un articolo di Alessia Smeraglia, che ha svolto un periodo di internship presso Digital Humanities, collaborando con Federico Bonetti alla realizzazione di Highschool Superhero. Alessia ringrazia Federico Bonetti per la disponibilità e per averla aiutata da un punto di vista tecnico; la sua supervisione è stata fondamentale per capire quali sono le dinamiche di un’unità di ricerca e come intraprendere questa strada in futuro.
Highschool Superhero è un GWAP (dall’inglese game with a purpose), il cui scopo è quello di raccogliere annotazioni su linguaggio d’odio ma anche di rendere gli adolescenti più consapevoli sul fenomeno del cyberbullismo.
L’aspetto più interessante di uno strumento come Unity3D, il software con cui il gioco è stato realizzato, è la sua versatilità. Infatti, da molti anni viene utilizzato nell’industria videoludica e in altri vari ambiti, fra cui la psicologia per la sperimentazione; supporta l’esportazione del prodotto finale per varie piattaforme tra cui anche dispositivi mobili e console. È poi compatibile con le estensioni di Blender, software gratuito per la modellazione e animazione 3D di livello professionale, il che permette di importare e modificare le proprie creazioni tridimensionali in tutta semplicità. Come se non bastasse, presenta una interfaccia molto intuitiva, ideale per i programmatori e sviluppatori di videogiochi anche alle prime armi.
Essendo Highschool Superhero un progetto già avviato e con molti aspetti tecnici già definiti, come ad esempio lo stile del gioco “cartoonizzato”, aveva già delle basi su cui continuare la progettazione.
Inizialmente all’interno del gioco erano presenti soltanto la scuola e la casa del protagonista, così ho cercato di progettare una cittadina che potesse essere piacevole e interessante da esplorare e ho cercato di suddividere il gioco in zone.
La zona della scuola, essendoci ispirati alla tipica high school americana, è composta da elementi molto riconoscibili come lo scuolabus all’esterno e file di armadietti in metallo all’interno dell’edificio. Possiamo trovare anche una biblioteca e un’aula informatica con banchi e computer… Ma è meglio che mi fermi qui, non vorrei rovinare la sorpresa ai futuri giocatori.
La zona intorno alla casa del protagonista, come anche tutto il resto della città, è stata arricchita con vari dettagli come lampioni, cartelli stradali, fermate dell’autobus, cestini, idranti, paletti e tanto altro. Addirittura, oltre a un campo da calcio c’è anche un campo da basket; chissà se un giorno si potrà fare anche qualche tiro!
Insomma, in tutto il gioco possiamo trovare scenari per ospitare fasi del gioco accessorie rispetto ai task di annotazione.
Durante la fase di progettazione abbiamo tenuto conto anche dell’aspetto ambientale. Infatti, essendo un gioco che oltre a raccogliere dati ha anche l’intento di essere uno strumento educativo, mi è sembrato azzeccato inserire alcuni particolari nell’ambiente tridimensionale volti a sensibilizzare su tematiche importanti sia in ambito scolastico che non – come ad esempio la raccolta differenziata.
Dal momento che il progetto si propone di essere a costo zero gli oggetti collocati nella mappa 3D sono stati sia creati con Blender da Federico (come ad esempio alcune case, la scuola e i personaggi) sia scaricati da raccolte gratuite come la sezione free di Unity Asset Store e Quaternius.
Un altro passaggio importante per quanto riguarda il level design e che rende il gioco più vivo, è la presenza dei NPC, ovvero i personaggi non giocanti. È proprio grazie a questi ultimi, infatti, che la città ha iniziato a brulicare di vita. Grazie a uno script gli NPC si muovono su percorsi predefiniti e raggiungono destinazioni che è possibile spostare liberamente per la mappa, così da riprogettare i percorsi rapidamente. Le macchine, così come i personaggi non giocanti, beneficiano della stessa logica per muoversi, con la difficoltà aggiuntiva della rotazione. Tra i miglioramenti che intendo apportare al comportamento degli NPC c’è quello di poter far sì che alla vista di un altro oggetto all’interno della scena, il personaggio non giocante si fermi oppure interagisca in maniera automatica.
Oltre ad approfondire la mia conoscenza di Unity3D e la sua logica, ho avuto la possibilità di perfezionare anche le competenze di programmazione, in particolare di C#, un linguaggio a me nuovo. Fra gli argomenti più importanti riguardanti la programmazione che ho avuto modo di implementare, ci sono le rappresentazioni delle rotazioni, per le quali si usano entità chiamate quaternioni, e algoritmi di interpolazione lineare, che permettono di muovere gli oggetti in modo fluido e controllato da un punto a un altro.
Lavorare a Highschool Superhero mi ha permesso di migliorare le mie competenze nella progettazione e nello sviluppo di videogiochi anche come mezzo per fare ricerca.
Inoltre, aver svolto il mio tirocinio nell’ambito di un progetto europeo per combattere il cyberbullismo, è stata un’occasione per documentarmi su un problema grave che coinvolge molti giovani (e non solo); saper di aver contribuito anche in minima parte alla realizzazione di uno strumento in grado di aiutare la ricerca non può che rendermi orgogliosa.