La sfida di rimasterizzare Uncharted - articolo
Perché convertire l'engine di Naughty Dog non è semplice, e cosa aspettarsi dalla Nathan Drake Collection.
Sulla carta, la missione di convertire l'intera trilogia di Uncharted da PS3 a PS4, con un gameplay a 1080p e 60 frame al secondo, sembra relativamente semplice. In fondo, la PlayStation 4 rappresenta un salto generazionale in termini di capacità, soprattutto per quanto riguarda la potenza della GPU. Il recente intervento di Naughty Dog alla GCD, però, ha rivelato nel dettaglio quanto difficile sia stato portare The Last of US sulla nuova console di Sony. Addirittura, per le difficoltà tecniche, la prima versione del gioco girava a meno di 10fps.
Per molti versi, la sfida posta dall'imminente Nathan Drake Collection è ancora più ambiziosa. Si tratta ovviamente di convertire tre giochi, non uno soltanto, e il lavoro e non verrà realizzato dallo sviluppatore originale: a svolgerlo sarà infatti Bluepoint Games. La difficoltà è incrementata dal fatto che, come Sony ha lasciato intendere, tutti e tre i remaster offriranno miglioramenti tangibili rispetto alle versioni originali, a partire da una migliore illuminazione, texture e modelli 3D di livello superiore e infine una modalità "foto", oltre ad altri ritocchi suggeriti dalla community. L'unica notizia negativa è che le componenti multiplayer di Uncharted 2 e del suo seguito saranno rimosse.
Ad ogni modo, la Nathan Drake Collection è un progetto senz'altro ambizioso e l'evidenza indica che le sue basi sono costruite sull'esperienza che Naughty Dog ha già maturato convertendo The Last of US su PlayStation 4. Come ha fatto, dunque, lo studio a passare dai 10fps iniziali alla prestazione finale a 60fps che abbiamo potuto sperimentare lo scorso anno? Basandoci sulla presentazione di Naughty Dog alla GDC, sembra che lo sviluppatore sia stato limitato più dalla CPU che non dalla GPU. TLOU sfruttava in modo intensivo il processore Cell, in particolare i sei processori satellite (SPU). L'engine originale mirava ad un update a 30fps, basato su un singolo thread consistente nella logica del gioco seguita da un command buffer set-up (che essenzialmente generava le istruzioni per la GPU). La maggior parte dei sistemi dell'engine erano affidati alla SPU, con il processore principale (la PPU del Cell) che lavorava sul grosso del codice di gioco vero e proprio.
Ovviamente, la PlayStation 4 non integra più un Cell, e dunque non offre SPU. Per i core x86 Jaguar di PS4, Naughty Dog ha riscritto il modo in cui il codice è eseguito con l'introduzione di "fibre". Piuttosto che far girare il codice di gioco sul core PPU principale e assegnare i task di engine alle SPU, tutto il lavoro di processing è svolto da queste "fibre": simili a centinaia di thread tutti assegnati ai core singoli della CPU di PS4, tutti operativi in parallelo. Il primo problema è stato ottimizzare il nuovo codice di rendering PS4 che Naughty Dog aveva scritto: inizialmente non usava il sistema a fibre e i risultati erano quella deludente performance da 10fps di cui abbiamo già parlato. Integrare il nuovo sistema ha più che raddoppiato la velocità del gioco, ma a soli tre mesi prima dell'uscita sugli scaffali, The Last Of Us Remastered ancora non raggiungeva i 30fps. Come la stessa Naughty Dog ammette, a questo punto in molti cominciarono ad essere preoccupati.
Ulteriori ottimizzazioni hanno portato alla fatidica soglia dei 30fps, ma ogni frame richiedeva 25ms per essere disegnato e dunque lo studio era ancora molto lontano dal raggiungere il target di 60fps, e a questo punto mancavano ormai soltanto due mesi prima della release ufficiale. Però, la performance teorica c'era: i core della CPU avevano ancora un discreto quantitativo di potenza non sfruttata, ma come riuscire ad impiegarli al meglio?
L'interessante soluzione di Naughty Dog fu quella di dividere a metà l'intera parte di calcolo della CPU: mentre la CPU preparava le istruzioni per la GPU relative al frame successivo, simultaneamente lavorava sulla logica del gioco per il frame ancora dopo. Il risultato finale vede il "percorso critico" del codice CPU scendere da 25 a 15.5ms, con l'unico compromesso rappresentato da un frame di lag addizionale (il che non causa problemi: raddoppiare il frame rate compensa in abbondanza la differenza). Un gioco che gira a 60fps ha una finestra di tempo di 16,7ms per disegnare un frame: il fatto di svolgere in parallelo operazioni per due frame diversi è stata la rivoluzione che ha consentito a The Last of US di ottenere un gameplay a 1080p60. Una storia senz'altro affascinante, ma quanto potrà aiutare Bluepoint Games nel compito di creare il remaster di Uncharted?
Considerando che la Nathan Drake Collection è basata su giochi che impiegano lo stesso engine, e che promette miglioramenti di frame-rate simili, possiamo intuire che Bluepoint Games utilizzerà lo stesso sistema impiegato per il remaster di The Last of Us. Dopo i mesi di intenso lavoro che Naughty Dog ha dedicato a TLOU, il fatto che Bluepoint Games ricominci dallo zero assoluto è del tutto improbabile. Inoltre, l'inclusione di una nuova modalità "foto", presente anche nel porting di TLOU, suggerisce che i due progetti condividono una buona porzione di codice.
Di base, quindi, la logica base di come creare la Nathan Drake Collection è già esistente e non ci sorprenderebbe se l'intera possibilità del progetto fosse dovuta proprio al lavoro iniziale svolto da Naughty Dog. Comunque, è interessante notare che, nonostante la presentazione alla GDC abbia spiegato diverse cose, ci sono ancora molti aspetti che ignoriamo completamente. Per esempio, il lavoro di rendering della GPU non è stato per niente dettagliato, a parte qualche accenno ad un nuovo renderer e alla sua ottimizzazione. Interessante anche il fatto che, nell'analisi finale del gioco uscito sugli scaffali, è emerso come TLOU incontrasse colli di bottiglia in termini di GPU, con soprattutto gli effetti di trasparenza che potevano produrre grossi cali di frame-rate.
Quello che non sappiamo sul lato GPU della questione potrebbe spiegare come la Nathan Drake Collection sarà in grado di offrire "un'illuminazione migliorata" rispetto alla controparte PlayStation 3. Forse verrà utilizzata qualche nuova tecnologia creata da Naughty Dog? Ma va anche ricordato che lo studio ha trasportato l'ultima versione del suo engine PS3 sulla nuova console Sony: i miglioramenti all'illuminazione e allo shading ottenuti con TLOU potrebbero essere riproposti anche sui titoli di Uncharted.
L'entità di questi miglioramenti sarà un elemento molto interessante da valutare nella nuova collection. Siamo curiosi di vedere se sarà impiegata un'illuminazione dinamica oppure se si tratterà di una global illumination pre-calcolata e applicata agli ambienti. Certamente, ricalcolare l'illuminazione predefinita e statica sarebbe un'operazione molto impegnativa, che richiederebbe un lungo lavoro e una grande quantità di rendering offline.
Altri dei miglioramenti promessi sembrano senz'altro più semplici da ottenere: si parla di modelli più dettagliati (versioni a maggior dettaglio, già impiegate in precedenza per le cut-scene, potrebbero ora essere usate anche per il normale gameplay) oltre a nuove texture. Quest'ultima rifinitura, in particolare, sarebbe molto ben accetta: se c'è una critica da fare al porting di The Last of Us, riguarda il fatto che le texture a bassa risoluzione stonavano davvero con la splendida esperienza a 1080p. Forse nella Nathan Drake Collection non vedremo di nuovo questo difetto.
Ovviamente, il gioco che dovrebbe ricevere i migliori benefici da questo trattamento è il capitolo originale, targato 2007. La transizione di Naughty Dog verso PlayStation 3 è stata disseminata di difficoltà: addirittura, lo studio riscrisse molte parti del gioco a produzione già piuttosto avanzata. Va ricordato che si trattava del primo incontro tra lo sviluppatore e la particolare architettura di PS3, ma il risultato finale (per quanto non rifinitissimo in ogni suo aspetto) fu realmente un miracolo. Dal punto di vista tecnologico fu però surclassato dai suoi seguiti, per i quali ND aveva maturato una conoscenza enormemente superiore dell'architettura della console, congiuntamente al fatto che anche i tool per lo sviluppo erano maturati.
In termini di traguardi tecnologici, Uncharted 2 e il suo seguito sono molto simili. Sarà da scoprire, dunque, fino a che punto il remaster del capitolo originale riuscirà a tenere testa agli altri due: Bluepoint intenderà investire le risorse necessarie per aggiornarlo agli standard dei due seguiti? Certamente uno degli aspetti più deludenti del primo Uncharted, l'abbondante tearing dello schermo, è stato corretto nei capitoli successivi: almeno questo miglioramento ci aspettiamo di riscontrarlo anche nella versione rimasterizzata dell'originale.
Come potete vedere dal video qui sopra, il tearing era parecchio fastidioso e si manifestava spesso al centro dello schermo, direttamente nella zona di maggiore attenzione. Abbiamo simulato la resa del gioco con il tearing rimosso e il miglioramento è straordinario: aggiungendo anche la risoluzione extra e il frame-rate raddoppiato, l'esperienza dovrebbe valere la pena di rigiocare l'intera trilogia. La nostra unica preoccupazione è il fatto che alcuni dei vecchi asset di Naughty Dog potrebbero non essere all'altezza della presentazione a 1080p, in alcuni casi spietata nel mostrare i difetti.
In termini di impatto del frame-rate a 60fps, abbiamo già potuto sperimentare cosa ciò significherà nella saga di Uncharted. Prima del lancio del terzo capitolo, dai laboratori di Naughty Dog emerse un video di gameplay a 60fps fissi: un segmento di gioco che, immaginiamo, è stato generato offline dalla "render farm" dello sviluppatore con il proposito di creare screenshot a super-risoluzione (come questo "bullshot" a 2560x1440 di Uncharted 2 ) e, per l'appunto, video di gameplay più fluidi.
Con la Nathan Drake Collection per PlayStation 4, quella che prima era la versione ultra-pompata per scopi di marketing diventa oggi il gioco vero e proprio. Esattamente come è accaduto con la Master Chief Collection di Halo, possiamo aspettarci cose molto interessanti da questa release. È improbabile che i remaster soddisfino al 100% l'esigente fanbase di Uncharted (ognuno avrà probabilmente la sua lista dei desideri di cambiamenti che avrebbe voluto vedere implementati), ma tutti i segni indicano che questa nuova collection sarà un successo. Le basi tecnologiche sono già state create con il lavoro svolto per il remaster di The Last of Us e, affidando il lavoro a Bluepoint Games, Sony ha chiaramente scelto un team di sviluppo molto esperto e capace in materia di conversioni.
L'arrivo di ulteriori remaster last-gen, a quasi due anni di distanza dall'uscita di PlayStation 4, forse farà storcere la bocca a qualcuno, ma noi pensiamo che questi titoli possano avere ancora molto da dare con le loro nuove incarnazioni.