Ori and the Will of the Wisps

Ori: Un’Idea semplice che ha fatto grandi passi avanti da Construct2 a Unity.

Per chi non lo sa Ori è un titolo sviluppato completamente in Unity, il noto Game Engine famoso nell’industria videoludica indipendente, purtroppo quando si pensa a unity pensiamo a titolo low budget o non di altissima qualità, sono molti  i titoli sviluppati con Unity nella rubrica “Lerciume Steam di Zeb89” e sono rari i casi in cui con da unity sono usciti titoli grandiosi, esempio di titoli di successo sono:

ori will and whips

e per l’appunto Ori and the Blind Forest  un prodigio di tecnica e di prestigio, per un Engine come Unity, relegato ai più per lo sviluppo di indie di infima qualità e improbabili Tripla A “claudicanti”.
Nell’attesa dell’uscita del nuovo Ori and the will of the whips con voi di Q-GIN mi piacerebbe ripercorrere tutte le fasi di sviluppo del grandioso titolo dell’azienda Austriaca Moon Studios attraverso una vecchia intervista del 2014.

Di seguito l’intervista rilasciata mcvuk.com a Gennadiy Korol di Moon Studios durante lo sviluppo di ORI and The Blind Forest nel 2014

Perché hai scelto Unity per Ori and the Blind Forest?
Abbiamo iniziato lo sviluppo su Ori all’inizio del 2011. All’epoca, il primissimo prototipo di Ori era stato effettivamente sviluppato in Construct2 con solo due persone che ci lavoravano. Ma quando è diventato chiaro che volevamo andare alla grande e trasformare Ori in un gioco completamente prodotto, Unity è stata la scelta naturale per il nostro team. Siamo riusciti a portare il prototipo di Construct in appena una settimana e Ori si è subito sentito a casa lì. Siamo andati tutti “questo sembra già e suona molto meglio”.

Unity era potente, estensibile, molto intuitivo e amico degli artisti, pur essendo a quei tempi accessibile per il nostro piccolo team di start-up. Volevamo essere agili e “indie” e Unity era il motore per andare.

A quale area ha contribuito in modo più significativo il motore?
Per noi, la più grande forza di Unity è stata di gran lunga la flessibilità e l’estensione del suo Editor. In pratica siamo stati in grado di trasformare Unity nel perfetto “motore di produzione Ori” perfezionato.

Per il nostro team tecnico Ori è un titolo molto impegnativo. Con il passare del tempo Ori è diventato un titolo di pittura che prende vita in full HD 2.5D con gigabyte di arte artigianale, dipinta e animata con livelli folli di parallasse che richiedevano di correre a 60fps solidi e coerenti senza schermate di caricamento, mai. Inoltre, dovevamo fornire sofisticati filmati all’interno del motore con transizioni di dissolvenza incrociata tra scatti, ambienti interattivi lussureggianti, acqua simulata da GPU, motion blur e molto altro.

Poiché Ori è un gioco in stile “Metroidvania”, abbiamo dovuto consentire ai nostri progettisti di costruire i livelli e il mondo di Ori nel modo più efficiente e flessibile. I progettisti dovevano avere una visione d’insieme di tutte le scene del gioco e la possibilità di riorganizzare e riutilizzare facilmente i livelli come blocchi LEGO su una grande mappa del mondo.

I nostri artisti dovevano avere una pipeline di arte 2D che avrebbe permesso loro di costruire, visualizzare in anteprima e animare tutta la nostra arte direttamente nell’editor. Dovevamo nascondere tutta la complessità delle migliaia di permutazioni di shader, nonché fare un editor pesante e costruire ottimizzazioni di tempo necessarie per far funzionare il gioco in modo efficiente sulle console di destinazione.

Abbiamo sviluppato la nostra struttura di animazione e cinematografica che ci ha permesso di costruire le nostre sequenze di storie e filmati direttamente nel motore, ripetendo nell’editor come faresti con uno strumento di editing come After Effects ma integrandosi strettamente con tutti i nostri altri quadri di base.

Poiché il mondo di Ori è unico e collegato, abbiamo dovuto sviluppare la nostra soluzione di editing multi-scena, che consente ad artisti e designer di caricare e modificare più scene contemporaneamente – che in seguito è diventata anche la base dei nostri strumenti cinematografici in cui ogni scatto è un file di scena separato – verificare la presenza di problemi artistici durante le transizioni di scena o modifiche cinematografiche più fini.

Esistono vari Motori , ma è difficile immaginare un motore che fosse così estensibile ed esposto così tanto attraverso un set di API molto ben progettato e grazie al quale abbiamo potuto costruire una pipeline di produzione altamente personalizzata e ottimizzata per il tipo di gioco Ori è e le sue precise esigenze di produzione.

Ripensandoci: siamo riusciti a implementare cose folli come la nostra soluzione di editing multi-scena nel 2012. E prima che Unity supportasse il formato di testo, abbiamo quasi finito per implementare il nostro formato di testo per risorse e scene. È semplicemente folle ma questo dimostra quanto sia potente ed estensibile Unity.

Quanto è accessibile Unity su Xbox One? In che modo ti aiuta a ottenere il massimo dalla nuova console?
Stavamo effettivamente prendendo di mira Xbox 360 come la nostra piattaforma principale. Una volta presa la decisione di creare un lancio per Xbox One, siamo riusciti a far funzionare il gioco sulla console nel giro di pochi giorni.

Data la complessità del gioco e la necessità di avere una solida esperienza continua a 60 fps senza schermate di caricamento, in realtà abbiamo dovuto passare all’utilizzo di Unity 5 per Ori, poiché è la versione Unity che ha tutto il lavoro di ottimizzazione necessario per lo streaming di livello.

Per lo sviluppo dello stile grafico di ORI siamo stati molto ispirati dai classici dello Studio Ghibli come Princess Monoke e La città incantata. Abbiamo anche fatto riferimento a film come Il Gigante di Ferro e il Re Leone.

Come hai scelto / definito il distinto stile visivo di Ori?
Fin dall’inizio siamo stati molto ispirati dai classici di Studio Ghibli come Princess Monoke e La Città Incantata. Abbiamo anche fatto riferimento a film come Il Gigante di Ferro e il Re Leone.

Come molti altri aspetti di Ori, i suoi elementi visivi si sono evoluti e sono cresciuti nel tempo. Se avessi inviato a noi stessi uno screenshot di Ori dal 2014 nel 2012, non avremmo mai creduto che il gioco sarebbe stato così bello. Ormai è praticamente un gioco diverso visivamente.

C’è stato un ping pong molto interessante tra il team artistico e il team tecnico. Il gioco non è stato tutto continuo dall’inizio. Prima che il nostro montaggio multi-scena fosse pronto, Ori era fatto di stanze bloccate e aveva orribili “lucchetti di scorrimento” in stile fotocamera a 8 bit con sfumature di nero mentre correvi tra di loro.

Risultato immagini per Ori blind forest prototype

Ai tempi Ori non aveva illuminazione molto sofisticata o animazione ambientale. Ma a un certo punto abbiamo deciso di investire nel nostro framework “Ubershader” che ci ha permesso di avvicinarci alle funzionalità di cui i nostri artisti avevano bisogno in modo estensibile e modulare generando al contempo tutte le permutazioni dello shader per le funzionalità richieste.

Una volta installato il framework Ubershader, i nostri artisti sono stati in grado di introdurre un livello completamente nuovo di rifinitura nella nostra arte con tutta l’illuminazione e l’animazione, nonché modi intelligenti di organizzare le tessere artistiche per rendere unico ogni schermo del gioco .

Ma, soprattutto, nulla di tutto ciò sarebbe stato possibile senza gli artisti di incredibile talento con cui abbiamo il privilegio di lavorare presso Moon Studios. A volte sviluppiamo un nuovo modificatore di shader o uno strumento e hackeriamo una bella demo di caso d’uso. Solo un paio di settimane dopo, i nostri artisti sono in grado di realizzare qualcosa che sembra completamente strabiliante. E poi, chiederanno più funzionalità. Il ciclo di ping pong continua fino a quando non siamo praticamente costretti a spedire il gioco.

Quali erano le funzionalità più utili di Unity?
Essere in grado di scrivere codice in un linguaggio fantastico come C #, senza bisogno di ricompilare e riavviare l’editor con ogni modifica.

Un sistema di particelle incorporato davvero bello. Un’API di scripting folle che ci ha permesso di fare quasi tutto ciò che volevamo per Ori. Motore fisico molto ben esposto e altamente performante. Pipeline di rendering molto flessibile e personalizzabile. Profiler molto facile da usare ma potente e utile.

E la cosa più importante è ovviamente la capacità di “sviluppare una volta – compili ovunque”. Con un piccolo team di ingegneri come il nostro non saremmo stati in grado di compilare il titolo su tutte queste piattaforme se non avessimo utilizzato Unity.

Che consiglio daresti ai nuovi sviluppatori Unity?
Non aver paura di modificare ed estendere il motore per farlo fare esattamente quello che vuoi e come lo vuoi. Impara a scrivere ispettori personalizzati e strumenti di modifica. È il miglior investimento che puoi fare mentre giochi. E Unity è semplicemente il miglior motore per questo.

Quando sarai in grado di ottimizzare e perfezionare la pipeline di produzione per il gioco che stai realizzando, rimarrai stupito dai risultati che il tuo team di contenuti sarà in grado di offrire.

PER ALTRI APPROFONDIMENTI CLICCA QUI

One comment

Comments are closed.