Diablo 3 su console: quando 60fps non sono veramente 60fps? - articolo
AGGIORNAMENTO: Blizzard scova il bug e aggiunge un fix alla patch del day one.
AGGIORNAMENTO 14/8/14: Nella giornata di ieri, Blizzard ci ha comunicato che il problema dei due differenti frame rate è causato da un bug che verrà patchato il più presto possibile, offrendoci di parlarne alla Gamescom. Thomas Morgan ha incontrato a Colonia il direttore della produzione John Hight per un veloce scambio di battute.
"Prima di tutto voglio ringraziarvi per aver esaminato a fondo la cosa. Sembra che abbiamo un bug interessante nel gioco", ha spiegato Hight. "In pratica ciò che accade è che aggiorniamo a 60 fotogrammi al secondo, ma a 59.94 su console. Ciò significa che aggiorniamo 59 fotogrammi in un secondo e 61 in quello successivo, con il risultato che 'scriviamo' due volte un fotogramma".
Sembra quindi che nonostante gli elementi del renderer operino a 60fps, lo standard HDMI incorpori lo standard legacy drop-frame NTSC a 59.94fps. La discrepanza è visibile in entrambe le versioni, ma secondo Hight le differenze nel modo in cui le console gestiscono il rendering causa i problemi prestazionali più marcati rilevati su PS4.
"Dopo aver letto il vostro articolo abbiamo riesaminato il codice e capito che abbiamo fatto un errore sugli aggiornamenti. Ora il gioco opera a 60 fotogrammi pieni. Stiamo preparando un update che andrà online il giorno prima della patch del day one e che farà quindi parte di essa", prosegue Hight.
"Non appena abbiamo visto il vostro articolo l'ho mandato ai nostri programmatori e ho detto 'hey di che cosa si tratta?'. Quei ragazzi sono eccezionali, ci si sono gettati a capofitto, hanno esaminato il codice e individuato il problema nelle modalità di aggiornamento... Quindi il nostro obiettivo è avere l'update pronto per il day one, il 19. Abbiamo preparato la patch per PS4 e Sony farà ciò che deve per renderla disponibile velocemente. Non credo che avremo problemi ad averla online al day one".
ARTICOLO ORIGINALE: Quand'è che 60fps non sono veramente 60fps? Questa è la domanda che ci siamo posti giocando le versioni PS4 e Xbox One di Diablo 3, un gioco che punta a valori altissimi ma che paga in maniera bizzarra le conseguenze dell'insolito sistema di rendering del motore di Blizzard.
Per andare al sodo, la versione PS4 non è fluida in azione quanto quella Xbox One, nonostante le due condividano assets identici a quelli del gioco su PC con impostazioni grafiche massime. Avendole giocate estensivamente entrambe negli ultimi giorni al fine di produrre un'analisi comparativa dopo che la Gamescom-mania si sarà placata, possiamo dire che la promessa dei 60fps sulle due console next-gen è effettivamente mantenuta. I nostri strumenti di analisi riportano un frame-rate perfetto, ma c'è un distinguo da fare.
Diablo 3 ha un modo unico di produrre i fotogrammi, in cui animazioni dei personaggi, effetti alpha e illuminazione vengono renderizzati indipendentemente dal movimento dell'inquadratura. Come potete vedere nel video di seguito, durante il gameplay il frame-rate nei pressi dei 40fps su PS4 mentre l'inquadratura continua a muoversi stabilmente a 60fps. È difficile capire come mai il gioco si presenti così, ma potrebbe essere che Blizzard abbia adottato questo sistema per assicurare un refresh a 60fps costante mentre alcuni importanti elementi dello scenario vengono aggiornati a intervalli variabili. Se così fosse, si tratterebbe di una tecnica interessante che però non dà completamente i suoi frutti.
Il nostro test è stato effettuato sulla versioni UK di ogni gioco, con la patch più aggiornata disponibile al momento della stesura dell'articolo. Nello specifico, la versione PS4 gira a 1080p come promesso con la patch C2.0.0.24791, mentre Xbox One renderizza a 900p nella build C2.0.0.24514. Ci è stato promesso che l'aggiornamento al day-one porterà la risoluzione a 1080p sulla console di Microsoft, in seguito alla possibilità di ottimizzare ulteriormente grazie all'SDX di giugno.
In base alla nostra analisi dei video che abbiamo registrato, ogni versione renderizza perfettamente a 60 fotogrammi al secondo. Analizzando il gameplay, però, vediamo risultati pratici differenti sulle due piattaforme. Il nostro playthrough iniziale ha mostrato che la situazione peggiore si verifica all'inizio su PS4, nei pressi delle porte dell'area hub New Tristram. Personaggi e frecce possono arrivare a girare a metà dei loro frame-rate mentre gli scheletri si sollevano nel perimetro. Nonostante test ripetuti, la versione Xbox One produce singhiozzi solo occasionali in scene simili.
Quindi cosa gira effettivamente a 60fps? Da uno studio ravvicinato di ogni fotogramma risultano girare fluidamente il movimento dell'inquadratura, gli elementi dell'HUD come il globo sulla sinistra e gli effetti di distorsione. La giocabilità della versione PS4 soffre di controlli influenzati da scatti degli altri elementi, e come risultato il nostro Barbaro ha laggato nelle azioni .
In pratica, anche se il refresh di Diablo 3 può essere considerato perfetto sotto alcuni aspetti, le meccaniche hack-and-slash non raggiungono gli stessi valori. È un peccato, perché il problema influisce sul combattimento che risente del feedback impreciso del controller. Sconcerta anche il fatto che ciò si noti principalmente su PS4 mentre Xbox One, pur utilizzando la stessa tecnica, ne soffre in maniera molto più leggera.
Quale potrebbe essere la causa? È insolito vedere un motore renderizzare vari elementi del gioco a ritmi differenti, ma abbiamo già visto espedienti simili studiati per stabilizzare le prestazioni. I recenti capitoli di Forza Motorsport, ad esempio, dimezzano il frame-rate di alcuni riflessi per mantenere i 60fps del gameplay. Abbiamo visto Dark Souls 2 eliminare dei fotogrammi dalle animazioni dei nemici in lontananza, elemento maggiormente rilevabile in aree come il Pontile Desolato, e ripristinarli quando questi avversari si avvicinano. Le ombre di Trials Fusion vengono renderizzate con vari ritmi (metà o addirittura un quarto del normale) a seconda della distanza a cui vengono visualizzate.
Ma questo caso è diverso: la battaglia di apertura alle porte di New Tristram è un caso estremo, ma vediamo anche fotogrammi tagliati su PS4, mentre la versione Xbox One è generalmente più fluida, e questo spesso avviene in maniera apparentemente slegata dall'azione su schermo. Anche camminare attraverso l'area Fields of Misery, ad esempio, può causare l'occasionale perdita di fotogrammi, mentre la marea di effetti dei Battlefields dell'Atto 3 gira liscia come l'olio.
Evidentemente ciò non dipende solo dalle difficoltà della GPU di PS4 nel renderizzare molteplici nemici o scene complesse su schermo. Anche con massicce quantità di effetti alpha e dozzine di nemici che volano nello scenario da diverse angolazioni, la console dimostra di poter mantenere i 60fps anche nel multiplayer co-op. Questo suggerisce che un collo di bottiglia dal lato GPU sia improbabile come causa. È possibile che questi cali dipendano da processi in background, come calcoli effettuati dalla CPU o streaming degli assets ancora al di fuori del campo visivo del giocatore .
Basandoci sulla versione PC, possiamo dire che questa teoria ha un suo senso. Il motore ha mostrato un limite nel supporto per le CPU multi-thread, al centro del design delle nuove console. È possibile che alcune parti dell'engine incontrino un collo di bottiglia, situazione in cui la maggiore velocità di clock della CPU di Xbox One (fino a 1.75GHz per Core contro 1.6GHz di PS4) può fare la differenza. Al momento, però, queste sono solo speculazioni.
Nonostante il problema dei differenti frame-rate, Diablo 3 resta fondamentalmente un titolo eccellente sulle nuove console, unendo gli standard grafici da PC con la modalità co-op che ha reso le versioni last-gen molto piacevoli da giocare. Questa edizione comprende anche l'espansione Reaper of Souls, la classe del Crociato e la modalità Avventura, acquistabili solo separatamente su computer.
I glitch tecnologici sono comunque insoliti, e ce ne occuperemo facendo altri test nella nostra analisi comparativa. Speriamo che su PS4 venga prestata attenzione al refresh, in modo da portarlo al livello di quello della versione Xbox One. Entrambe le piattaforme condividono effetti di qualità pari a quella della versione PC, ombre comprese. L'unica discrepanza su carta sta nella risoluzione, ma il vantaggio di PS4 in quest'area non è valorizzato al meglio dalle tinte oscure del gioco. Ogni versione è fornita anche di anti-aliasing post-process, che rende il divario nel pixel count ancora più difficilmente individuabile.
All'arrivo della prossima patch vedremo però la versione Xbox One godere della stessa risoluzione 1080p, ma visto l'attuale vantaggio prestazionale non è ancora chiaro se un aggiornamento simile possa essere un bene o un male, né se patch future correggeranno i problemi rilevati su PS4. Dopo l'arrivo delle patch al lancio torneremo sul gioco con una analisi comparativa completa, che comprenderà anche test sul co-op in alcuni livelli impegnativi.