Halo Infinite è stato presentato durante l’Xbox Showcase della scorsa settimana. Ci siamo presi qualche giorno per analizzare il trailer e il lavoro svolto sul gioco.
Primo sguardo del trailer
L’impressione iniziale è stata quella di un trailer poco ispirato, caratterizzato da un gameplay piuttosto piatto o addirittura realizzato su current-gen e non su Xbox Series X. Non è necessario entrare in inutili e complicati tecnicismi, il tutto può essere spiegato parlando (per la maggiore), dell’illuminazione. Si, proprio così. Il problema del gameplay trailer mostrato da Microsoft è nell’illuminazione.
Guardando il video, ci si rende conto che il sole è sospeso all’orizzonte e illumina una vasta radura piena di alberi e di verde. Se l’ambiente di gioco fosse stato realizzato in 2D, risulterebbe essere come nell’immagine seguente:
Gran parte dello spazio di gioco, come presente nel trailer, è fuori dalla portata dell’illuminazione diretta del sole. Il che è ancora più evidente in quanto l’azione di Halo Infinite si svolge in una valle, il che riduce notevolmente la possibilità di illuminare l’ambiente con la luce corretta. Il gioco mostra scenari e porzioni di gameplay fuori dalla portata della luce solare diretta e per la stragrande maggioranza in ombra. E questo è un grosso problema per un videogioco come Halo che dovrebbe mostrare la potenza bruta di Xbox Series X.
Come molti altri first party, Halo Infinite si basa su una regola empirica, ovvero: cercare di mostrare una grafica il più uniforme possibile. Ma non riesce a caratterizzare le aree di gioco al meglio. Perché? Perché Halo Infinite sembra avvalersi dell’illuminazione e dell’ombreggiatura dinamica in tempo reale e in effetti ci sono prove evidenti che i segmenti di gameplay mostrati, si svolgano in orari differenti della giornata. Viene fatto, almeno stando al trailer, in un modo così lento, che forse potrebbe non essere notato da un occhio poco attento. Ad ogni modo, potrebbe essere stato fatto per motivi di gioco, di game design o per ragioni di sviluppo. Ma qualunque sia la scelta fatta dallo sviluppatore, ci sono evidenti problemi che si ripercuotono sull’illuminazione, l’ombreggiatura dinamica e sulla resa grafica complessiva.
Parliamo dell’illuminazione
Indubbiamente è più costoso ricercare un sistema dinamico piuttosto che mantenerne uno statico. Per fare un esempio, titoli come The Last of Us Parte 2, dal colpo d’occhio impressionante, riescono a mantenere performance considerevoli, pur avvalendosi per la gran parte di un sistema di illuminazione statica. Ciò ha il vantaggio di poter rappresentare agevolmente la luce che rimbalza intorno ad una determina scena in modo che le porzioni statiche delle ombre o anche di una singola ombra, sembrino essere più belle e convincenti (anche senza utilizzare un sistema di illuminazione dinamica). Naturalmente anche una scelta del genere porta con sé una serie di svantaggi. L’illuminazione statica richiede molto tempo di iterazione e sviluppo e qualsiasi cambiamento che dovrà essere apportato ad una scena, richiederà probabilmente di ricalcolare l’illuminazione.
La natura intrinseca dell’illuminazione statica sta a significare anche che ci sono problemi di realismo e di consistenza. Infatti, ogni oggetto dinamico in una scena con illuminazione principalmente statica sarà illuminato in modo completamente diverso da quello statico. Questo accade in praticamente tutti i videogiochi con illuminazione statica, ad esempio: casse che “fluttuano” sul pavimento o effetti di luce dove non dovrebbero esserci. Solitamente, non ci si fa caso a “problemi” del genere, in quanto si è portati ad ignorarli magari “distratti” da una grafica spacca mascella.
In Halo Infinite, sappiamo che lo sviluppo di un’illuminazione dinamica richiede maggiori sforzi e costi ma ha il vantaggio di poter influire sia sugli oggetti dinamici e sia su quelli statici, nello stesso identico modo, senza alcuna differenza. Inoltre, l’utilizzo di un ray tracing non tradizionale per rappresentare luci e ombre, non permette di utilizzare il cosiddetto “rimbalzo” di luce che andrebbe quindi a caratterizzare anche gli oggetti non colpiti direttamente dall’illuminazione diretta. Ed infatti, guardando il trailer, si nota che le casse e il terreno che tecnicamente dovrebbero essere all’ombra, non riflettono nulla.
È una sorta di compromesso per poter sfruttare l’illuminazione dinamica per tutto il gioco e così facendo l’iterazione complessiva risulterà essere più veloce e fluida rispetto a quando si utilizza l’illuminazione statica. Ciò permette anche di modificare l’orario di gioco e le luci possono essere “spostate” più facilmente mentre si gioca. Anche se Halo Infinite ha un problema evidente con quelle aree dello schermo che sono in ombra rispetto alle luci dirette (proprio come mostrato nell’infografica iniziale), dato lo stato dell’arte della tecnologia attuale, ci sono alcuni modi per emulare o simulare l’illuminazione in quelle aree che abbiamo citato prima. In particolare attraverso il sistema “light probe” ovvero dei campionamenti di luce in alcuni punti della scena. Appaiono come una sfera, sulla cui superficie viene salvata la luce che proviene dalle parti circostanti (dalle quattro alle sei direzioni). Gli oggetti che fanno uso di light probe usano queste sfere per calcolare il loro colore, invece di leggerlo dalle luci stesse. Quando si trovano in mezzo a due o più sfere, viene fatta una media fra le sfere intorno all’oggetto stesso. In questo modo, un modello, ad esempio di una roccia viene “colorato” dalla luce che lo circonda e dal cielo, portandolo quasi a “luccicare”. A questa si possono aggiungere altre tecniche di “riflesso” a schermo (Screen Space Reflections) o di occlusione ambientale, che combinate fra loro emulano l’aspetto dell’illuminazione rimbalzata e gli effetti ombra in una determinata zona.
Il sistema light probe è una vera e propria magagna tecnica che non sempre (forse quasi mai), rende realistico quel determinato modello o la scena mostrata. Ecco perché gli sviluppatori tendono ad utilizzare effetti di occlusione ambientale e di riflesso a schermo che aiutano a “mascherare” evidenti difetti tecnici. Il primo serve a ridurre il luccichio (meglio nota come illuminazione diffusa), mentre il secondo serve a ridurre i riflessi. Meno riflessi, aiuteranno a occludere e localizzare meglio alcune delle luci speculari nelle porzioni in ombra.
Così superfici metalliche o comunque fortemente riflettenti sembreranno essere più naturali con l’SSR attivo. Ribadiamo che tali elementi sono percepibili da occhi esperti e non dal giocatore classico, che potrebbe essere distratto dall’azione di gioco e dalla grafica del titolo.
Né l’SSR e né effetti di occlusione ambientale possono far miracoli, il problema è ancora lì, soprattutto se parliamo di geometrie ambientali complesse o modelli poligonali di grandi dimensioni. Proprio quelli utilizzati in Halo Infinite. Il sistema di Screen Space Reflections utilizzato porta un oggetto molto grande (a distanza), ad essere oscurato da un oggetto molto piccolo. Nel trailer di Halo Infinite si può notare come la pistola in prima persona, oscuri sostanzialmente l’ombreggiatura su un oggetto molto distante come la montagna che si vede in lontananza. Una soluzione da current-gen. Infatti, fu utilizzata per la prima volta da Ubisoft con Far Cry 3, che mostrava i medesimi problemi di Halo Infinite.
Quindi si tratta di un modo antiquato di mascherare evidenti limiti tecnici e si nota piuttosto bene se si guardano quelle aree dove personaggi e oggetti sono fuori dalla portata della luce diretta, quindi dai raggi solari o da altre fonti luminose, come le torce.
Guardando il fucile d’assalto, presentato all’inizio del trailer di Halo Infinite, si può notare quanto sia piatta l’illuminazione sul fucile quando è in ombra.
Sembra quasi che non ci siano dettagli sul fucile. O ancora, guardate come le gambe dei nemici, luccichino pur essendo palesemente in ombra. Da dove proviene la luce esattamente? Il mondo di gioco di Halo Infinite è pieno di questi difetti. Osservando l’illuminazione riflettente o speculare in un’ombra potete vedere lo stesso problema anche sul mezzo guidato da Master Chief. Mettendo in pausa il video, si può notare il frame “incriminato”. L’interno del mezzo è praticamente in ombra ma ogni bordo risulta essere illuminato proprio a causa della tecnica di light probe e di SSR.
La maggior parte del trailer di gioco si svolge in una regione nell’ombra, e non riesce a mettere in evidenza i dettagli reali dei modelli dei personaggi, delle trame e dei materiali. Tutti elementi che dovrebbero essere di altissimo livello e in realtà lo sono per davvero ma è l’illuminazione che non rende loro giustizia. Il fatto è che l’illuminazione dinamica è un’arma a doppio taglio e alcuni principi base di fisica vi faranno capire il perché. In passato, gli sviluppatori tendevano a creare ambienti e texture di gioco nei quali l’illuminazione era già “cucita” negli stage di gioco. Non si parla di illuminazione statica, sebbene il concetto sia correlato, ma piuttosto del modo in cui venivano realizzate le texture e di come apparivano a schermo. Più era alto il loro numero, più la grafica risultava essere “realistica” e così, di riflesso, l’illuminazione. Quindi gli studi, erano tendenti a disegnare tonnellate di oggetti, caratterizzati da texture e ombre diffuse, così come da segni di usura e persino riflessi fasulli.
Ecco perché, se andassimo a ritroso a guardare come si presentava Halo Reach nel 2010, noteremmo che il fucile d’assalto (ottimo mezzo di paragone rispetto a quello vistosi nel trailer di Halo Infinite), presenti maggiori dettagli, alcuni davvero minuziosi, indipendentemente dall’illuminazione circostante. Ma ciò non vuol dire che tale livello di dettaglio sia fisicamente accurato o che corrisponda all’illuminazione dell’ambiente. La realizzazione dei rendering delle texture e dei materiali nei giochi moderni, è completamente diversa da quella del passato. Infatti, si utilizza un sistema a mappe diffuse (chiamato anche albedo map) è l’immagine del materiale senza alcuna informazione relativa alla luce. Solitamente è una mappa colorata di blu il cui scopo è quello di migliorare i dettagli del materiale conferendogli un aspetto molto più dettagliato nella sua geometria 3D. In soldoni: l’albedo map ha soltanto un po’ di informazioni di colore in più. Ed è questo quello che da ad una texture o ad un modello poligonale, l’aspetto che vedete nei giochi moderni e su come reagirà all’illuminazione circostante. Quindi se la maggior parte del dettaglio di un modello o di una texture è gestito da trame che si presentano davvero bene solo con un sistema di luci e ombre dinamiche, allora è normale che in giochi come Halo Infinite, che sfruttano proprio la dinamicità, alcuni oggetti e texture perdano delle ombre e molti dei dettagli. E ciò è maggiormente enfatizzato dal fatto che la demo mostrata sia prettamente giocata all’ombra e che l’illuminazione che colpisce questi oggetti, sia soltanto un’approssimazione estremamente elementare di luci e ombre.
Quindi cosa si può fare per fixare questo problema?
Illuminazione statica? No, non è detto che sia la soluzione migliore per Halo Infinite. Per risolvere il problema bisognerebbe sfruttare il sistema di illuminazione della console next-gen di casa Microsoft. Stiamo parlando dell’hardware ray tracing di Xbox Series X o qualche forma di tracciamento software come la tecnologia lumen presente nella tecnologia di Epic Games, Engine 5 o Sparse Voxel Octree Global Illumination del Cry Engine. Tecnologie costose in termini prestazionali, ma che valgono davvero la pena in quanto risalterebbero ogni elemento, ogni cucitura e strato di un personaggio e del suo equipaggiamento: corazza, abbigliamento, ombre. Insomma, trasformerebbero una scena piatta e sotto-dettagliata in una vivace e dettagliata. Solo così, il gameplay di Halo Infinite vistosi nel trailer, avrebbe un aspetto drasticamente diverso.
Per adattare queste soluzioni, bisognerebbe però scendere a compromessi per le versioni Xbox One e Xbox One X, le quali non sarebbero in grado di utilizzare un sistema di illuminazione del genere. Ma noi vogliamo vedere una differenza generazionale rispetto alle attuali console Xbox. La Series X avrà il ray tracing per un motivo, no?
Siamo sicuri che la planarità dell’illuminazione in questa demo sia stata la principale causa della scarsa riuscita visiva della stessa. Ma ci sono anche altri fattori che hanno influito, come ad esempio il livello di dettaglio e gli evidenti pop-in che appaiono mentre Master Chief sfreccia nello scenario di gioco.
Tali problematiche affliggono: nuvole, erba e rocce, che appaiono improvvisamente dal nulla. Il motivo per cui accade una cosa del genere è perché crediamo che Halo Infinite utilizzi sistemi progettati intorno alla versione base di Xbox One e non vengono upscalati come dovrebbero. L’altro è perché il gioco è limitato dalla GPU e non crediamo, almeno guardando il video, che SSD e CPU siano ai loro massimi livelli. Considerando che Halo Infinite vanterà una risoluzione nativa in 4K a 60 fps, dovendo gestire tutti gli elementi a schermo, come vegetazione, nemici e altri elementi, ci sentiamo di dire che una risoluzione più bassa avrebbe esaltato maggiormente determinate caratteristiche rendendole più vibranti.
Non sappiamo quale sarà il futuro di Halo Infinite ma Microsoft ha già annunciato che lavorerà ad una patch correttiva che sfrutterà il ray tracing (?). Speriamo che risolverà seriamente la problematica dell’illuminazione indiretta.