Ecco la next-gen: così gira l'Unreal Engine 5 su PS5
Per il Digital Foundry è un vero salto generazionale.
Abbiamo visto le specifiche, ascoltato le dichiarazioni, ma ancora era mancata una dimostrazione che mostrasse la visione che caratterizza la next-gen. Ieri tutto è cambiato grazie a Epic Games e alla presentazione dedicata a Unreal Engine 5, accompagnata da una spettacolare tech demo che girava in tempo reale su una PlayStation 5.
Il video promette una qualità e densità dell'immagine ai limiti dell'incredibile: immaginate un mondo dove il dettaglio non ha limiti, un mondo senza pop-in, un mondo nel quale anche gli oggetti lontanissimi sono definiti. Ecco, ora aggiungeteci un inedito livello di fedeltà grafica possibile grazie a un'illuminazione completamente dinamica. Troppo bello per essere vero? No, è la verità e potete vederla coi vostri occhi nel video qui sotto. La next-gen è arrivata ed è uno spettacolo.
Con l'Unreal Engine 5, Epic vuole liberare gli sviluppatori dalle costrizioni del conto dei poligoni e della draw distance, vuole permettere agli artisti di utilizzare i loro modelli più definiti ogni volta che vogliono. Non servirà semplificarli per raggiungere gli obiettivi di prestazioni o ridurne il dettaglio quando sono lontani. Il nuovo UE5 chiamato Nanite farà tutto autonomamente. Nel frattempo la nuova tecnologia Lumen di Epic assicura un fenomenale livello di realismo grazie all'illuminazione in tempo reale.
Ma esattamente di cosa stiamo parlando? La demo "Lumen in the Land of Nanite" mostra un primissimo piano di una statua costruita con 33 milioni di triangoli e texture 8K. La vediamo al massimo della sua bellezza. Nella stanza successiva, di statue uguali a quella ce ne sono quasi 500 (485 per essere precisi), tutte con il medesimo livello di dettaglio. Sono 16 miliardi di poligoni in totale, in una scena che gira senza singhiozzi. Sembra impossibile ma la next-gen vuole permetterci di realizzare quello che fino a ora era solo nell'immaginario. Prima dell'annuncio siamo stati invitati da Epic Games a un incontro speciale, e abbiamo potuto fare qualche domanda al CEO Tim Sweeney, al CTO Kim Libreri e al VP of engineering Nick Penwarden.
"Sai, l'idea alla base di tutto questo ha radici negli anni Ottanta, quando si voleva renderizzare tutto quello che compariva a schermo," ha detto Tim Sweeney. "Supponendo di avere a disposizione un livello di dettaglio infinito, doveva essere il motore grafico a decidere quali pixel dovevano essere generati. Ovviamente non si tratta di avere dieci miliardi di poligoni ogni frame, perché alcuni saranno logicamente più piccoli degli stessi pixel. Vuol dire approssimare in maniera da soddisfare completamente l'occhio senza perdere niente sul fronte del dettaglio. È il traguardo delle geometrie. È il raggiungimento del punto oltre il quale ogni poligono in più non serve, perché sarebbe così piccolo che il suo contributo nel pixel sarebbe di fatto invisibile."
Detta semplicemente, l'Unreal Engine 5 anima la scena generando un triangolo per pixel, limitandosi a quello che effettivamente risulta visibile. Sembra facile ma è il risultato di più di tre anni di ricerca e sviluppo guidati dal direttore del reparto grafica di Epic Games, Brian Karis. L'Unreal Engine 5, almeno su next-gen, è la realizzazione del motore micro-poligonale e sarà disponibile su più piattaforme nonostante sia stato mostrato nello specifico su PlayStation 5.
"Le caratteristiche che stiamo mostrando saranno disponibili su tutte le console di nuova generazione", ha detto Sweeney. "Non abbiamo confronti da mostrare, possiamo solo dire che sono caratteristiche su cui potrete contare nella next-gen, soprattutto le geometrie micro-poligonali di Nanite e l'illuminazione globale in tempo reale Lumen."
La prima uscita pubblica dell'Unreal Engine 5 sarà nel corso dei primi mesi del 2021, seguita da Fortnite che vi approderà lasciandosi alle spalle l'UE4 nel corso dello stesso anno. Differentemente dal predecessore, però, l'UE5 non darà un taglio netto col passato. Infatti sarà capace di girare su un vasto numero di dispositivi, dai PC più performanti a vecchi dispositivi Android e iOS, passando per le console dell'attuale generazione, Switch incluso. Ovviamente, però, non aspettatevi lo stesso livello di esperienza next-gen dappertutto.
"Per non perdere la compatibilità con le piattaforme più vecchie abbiamo un processo produttivo che prevede di importare gli asset al massimo livello di dettaglio possibile, quello che ci si aspetta sulle console next-gen," ha detto Tim Sweeney. "Poi sarà il motore grafico a offrire l'opzione di scalarli così da renderli digeribili per tutti i dispositivi, compresi Android e iOS di parecchi anni fa. Così chi crea contenuti deve farlo una volta sola e può vederli arrivare ovunque. Puoi sviluppare lo stesso gioco per tutti i sistemi, mentre UE5 si occupa di modularne il livello di fedeltà grafica."
Epic ci tiene a farci sapere che la sua nuova tecnologia può girare su diverse macchine, anche se la dimostrazione è avvenuta su PlayStation 5 dopo che Sony ha sottolineato l'importanza di avere una grande ampiezza di banda per movimentare rapidamente grandi quantità di dati dalla memoria solida. Nel frattempo Microsoft ha sviluppato DirectX 12 Ultimate, mostrando un diverso approccio all'immagazzinamento dei dati che non punta su una caratteristica specifica più che sulle altre. Epic ha comunque confermato che il sistema di primitive shader next-gen viene utilizzato in UE5 solo quando l'accelerazione hardware si rivela più veloce degli shader ottimizzati.
"Servono tante componenti per raggiungere questo livello di dettaglio, vero?", ha detto Sweeney. "A cominciare da prestazioni e architettura della GPU, che deve essere in grado di richiamare un incredibile numero di geometrie utilizzando parecchi teraflop. Poi serve anche la capacità di caricare e gestire lo streaming dei dati in maniera efficiente. Tra gli sforzi che stiamo facendo su Unreal Engine 5 c'è quello di ottimizzare la velocità di caricamento per renderla notevolmente maggiore di quella che vediamo al giorno d'oggi. Non marginalmente più veloce, molto più veloce, così da poter caricare davvero tutte queste geometrie e mandarle a schermo anche se non stanno tutte nella RAM. Sfruttiamo al massimo gli SSD next-gen, per dire, un fronte sul quale Sony è stata pioniera con PlayStation 5. È tecnologia di massimo livello, superiore a quella di molti PC. Certo, anche su un PC di fascia alta con un SSD, specialmente se NVM3e, si avranno ottimi risultati."
Ma è quella visione del rendering di cui parlava Sweeney a essere particolarmente sorprendente. La demo di UE5 non mostra un dettaglio assurdo nei primi piani, ma allo stesso tempo ha orizzonti amplissimi apparentemente senza il minimo pop-in. Tutto è fluido, tutto ha lo stesso livello di dettaglio. Qual è il segreto? "Penso che il segreto sia Nanite e il suo generare un triangolo per pixel. Una volta che hai raggiunto quell'obiettivo i cambi di dettaglio continui diventano impercettibili," ha detto Nick Penwarde. "E' l'idea di mostrare tutto quello che l'occhio riesce a vedere," ha aggiunto Tim Sweeney. "Generare più poligoni non avrebbe senso perché non potresti vederli."
Ecco, in due parole, la definizione di motore a micro-poligoni. Il costo in termini di risorse sul fronte GPU è probabilmente molto alto, ma sembra che la next-gen abbia la potenza necessaria per sostenerlo e i vantaggi sono evidenti. Fare il rendering di un triangolo per pixel vuol dire che le prestazioni scalano insieme alla risoluzione. "Funziona molto bene con il nostro sistema di risoluzione dinamica," ha detto Penwarden. "Quindi quando la GPU è sotto stress possiamo abbassare leggermente la risoluzione dello schermo e adattarci. Nella demo abbiamo utilizzato la risoluzione dinamica, ma la maggior parte del tempo è a 1440p."
Penwarden ha anche confermato che il temporal accumulation system dell'Unreal Engine 4 (che in soldoni prende il dettaglio dai frame precedenti per aumentare la risoluzione di quello mostrato) è presente anche su UE5 e in questa demo. La trasparenza di Epic è notevole. Abbiamo passato un bel po' di tempo a studiarci screenshot non compressi a 3840x2160 e in effetti l'impressione è che il conto dei pixel non sia più la metrica migliore, un po' come capita per i film in Blu-ray. La temporal accumulation non migliora solo l'anti-aliasing, supporta anche il sistema Lumen.
La temporal accumulation, più del temporal anti-aliasing normale, gioca un ruolo importante nel rendere l'immagine così bella," ha detto Kim Libreri. "Senza l'intelligenza temporale l'illuminazione globale non sarebbe fattibile solo basandosi sulla potenza hardware. Stiamo imparando moltissimo su come questa tecnologia possa aiutarci, e i miglioramenti nella qualità dell'immagine sono stati notevoli. Grazie alla componente temporale ci avviciniamo alla qualità dei filmati, e l'illuminazione globale semplicemente non sarebbe affatto a questo livello senza di lei."
Libreri ha un premiato background nell'industria cinematografica, un'area in cui Unreal Engine 4 risulta sempre più influente. In particolare gli piace l'idea di un workflow universale che permetta di utilizzare asset della stessa qualità su più fronti. "Ci sono persone che usano UE4 per creare giochi per smartphone, e altre che lo usano per fare The Mandalorian. Stiamo cercando di avere un unico approccio in modo da non generare colli di bottiglia," ha detto. "Il tempo delle persone dovrebbe essere speso nella creazione di fantastico gameplay, non nella creazione degli asset, operazione che può essere tediosa perché ci portiamo dietro tecnologie con più di dieci anni sulle spalle."
A riprova di questo, la demo di UE5 su PlayStation 5 usa asset ad alta fedeltà presi dalla libreria Quixel Megascan, non le versioni semplificate pensate per i videogiochi. "Gli ambienti della demo sono la prova del nove: metà del team che ci ha lavorato era composta da esperti, ma l'altra metà sono da poco in Epic e arrivano dal mondo del cinema. Per loro è stato facilissimo lavorare col motore grazie all'assenza di barriere. Non hanno dovuto pensare al normal mapping, ai mesh a bassa risoluzione per emulare l'HD... Questo approccio ha fatto la differenza."
Questa è la next-gen di Epic su Unreal Engine 5. Lo sviluppo di nuova generazione combina livelli di dettaglio e illuminazione senza precedenti con la possibilità di mostrare asset ad alta fedeltà, oltre che con modelli di fisica, animazioni e audio rinnovati. Inoltre, per evitare che il costo di sviluppo diventi proibitivo, il piano di Epic è di dare agli studi degli strumenti facili da usare, sia che vogliano lavorare su piccoli giochi indie, o che stiano creando produzioni hollywoodiane di alto livello. Da ultimo, Sweeney promette una transizione morbida da UE4 a UE5.
"Per ora siamo su Unreal Engine 4.25, quindi la venticinquesima versione", ha detto. "L'upgrade a UE5 in termini di costo e complessità sarà come passare attraverso una manciata di queste versioni minori. Qualcosa che la maggioranza degli sviluppatori fa più volte nel corso di un anno. Vogliamo portare con noi la community e farlo in fretta, così da non lasciare indietro nessuno."
Gli annunci di oggi vanno oltre l'Unreal Engine 5. Epic ha deciso di dare accesso all'infrastruttura online alla base di Fortnite a tutti gli sviluppatori che lo richiedono, persino se stanno lavorando a un gioco che non si basa su Unreal Engine e persino se si tratta di esclusive Steam. Questo vuol dire accedere all'infrastruttura server e alle funzionalità di cross-play. Nonostante questo, è chiaro che la demo Lumen in the Land of Nanite su PlayStation 5 ruberà la luce dei riflettori, e non c'è da stupirsene.
Dopo la mezza delusione dell'evento dedicato al gameplay di Xbox Series X, che non sembrava dire molto sulla macchina Microsoft e, soprattutto, aveva ben poco gameplay, iniziava a serpeggiare un po' di preoccupazione per la next-gen: ci si chiedeva se avremmo davvero assistito a un passo avanti rilevante. La tech demo di Unreal Engine 5 ci dà una risposta chiara: vedremo un livello di dettaglio e fedeltà come mai prima d'ora, e apparentemente è solo la punta dell'iceberg. Il ray tracing su accelerazione hardware sarà supportato da Unreal Engine 5, per dire, ma non lo abbiamo visto nella demo su PS5. Presto condivideremo con voi altri contenuti su cosa ci aspetta dal futuro dei videogiochi, nel frattempo però godetevi un primo assaggio di vera next-gen.