Digital Foundry si è dedicata all’esame approfondito della demo di Halo Infinite presentata al reveal. L’analisi è, come sempre, molto accurata e svela il perché di molte delle problematiche visive rilevate da esperti e meno esperti, che hanno diviso la community in questi giorni. Vediamo di fare finalmente chiarezza per rispondere alle impressioni con dati e confronti.

Molti giochi della current gen mostrano problemi in situazioni d’ombra, dove i modelli perdono realismo e l’illuminazione piatta li rende meno evidenti e più artificiali – soprattutto in presenza di fonti di luce non dinamica.

Le differenze tra Infinite e altri tripla A

Per iniziare a discutere di Halo Infinite dobbiamo immediatamente fare un importante distinguo. Sono stati fatti numerosi paragoni tra altri giochi tripla A come The Last of Us 2, riguardo la plasticità della grafica, la mancanza di dettaglio e di effetti di luce all’altezza. Il punto viene fatto all’inizio del video: Infinite è un gioco che sfrutta un’ambientazione in tempo reale, con un ciclo di luce diurna e notturna, mentre gli altri giochi presi in esame come paragone no.

Per quanto The Last of Us 2 possa essere convincente come livello di dettaglio e costruzione degli ambienti, non sfrutta un sistema di illuminazione che ambisce a essere realistico. La fonte di luce è fissa, meno difficile da gestire, in quanto le ambientazioni vengono definite in base all’unica sorgente di illuminazione disponibile, e quindi più di impatto per il tipo di storia che il gioco vuole narrare – una scelta non del tutto dissimile a quella che si opera quando si crea una scenografia e una fotografia per un film. Questo limita di molto la libertà e il realismo e, per quanto sia un metodo perfetto per giochi di quella tipologia, non è per nulla adatto a sistemi open world che hanno cicli di luce giornaliera e notturna e devono gestire ambienti molto più grandi, soggetti a eventi e situazioni molto più variegati e non precalcolati.

Infinite e lo Slipspace Engine, invece, sono stati sviluppati con una premessa ben precisa, ovvero simulare un ambiente molto vasto, open world, con il massimo del realismo possibile. Questo va a impattare in modo notevole il modo in cui il motore grafico gestisce gli effetti visivi, tra cui l’illuminazione in tempo reale e come questa interagisce con le superfici.

Proprio per questo motivo, abbiamo delle altre precisazioni da fare in merito, che vanno a debunkare paragoni fatti tra Infinite e altri giochi, anche della medesima serie, appartenenti al passato e con dettaglio apparentemente maggiori.

A sinistra, una texture di tipo “diffuse light”, con tanto di dettagli di ombre e luci. A destra, una texture di tipo albedo, priva cioé di illuminazione o ombreggiatura incorporate. Sotto, le texture di Halo: Reach (Assault Rifle in foto) sono di primo tipo, ovvero con illuminazione già inclusa, più dettagliate forse, ma non funzionerebbero in un ambiente con luce dinamica.

Questione di texture

La scelta di usare una complessa illuminazione dinamica ha imposto l’utilizzo di texture di tipo albedo, ovvero prive di illuminazione e ombreggiature 2D intrinseche. Quando si creano delle texture per un ambiente 3D il metodo tradizionale prevede l’utilizzo di diffuse texture, ovvero texture che includono già una illuminazione e un’ombreggiatura, mostrando incavature, superfici sporgenti, rilievi ecc. sul file bidimensionale. Questo modo di creare texture 2D è certamente più dettagliato e apparentemente più soddisfacente, ma non è per nulla realistico. Che l’oggetto texturizzato sia in ombra o meno, l’illuminazione 2D inclusa continua a essere presente. Usando texture di tipo albedo l’illuminazione risulta di gran lunga più realistica, pur perdendo qualche dettaglio, in quanto l’illuminazione è dinamica e viene calcolata dall’hardware.

Lo schema di illuminazione della demo, presentato da Digital Foundry ma reworkato da 17K. La freccia rappresenta la fonte di luce, le aree grigie sono le zone d’ombra, mentre i cerchi rossi rappresentano le aree dove la maggior parte dell’azione è avvenuta.

La scelta dell’illuminazione nella demo

La maggior parte dei problemi della demo di Infinite sono da far risalire a una scelta artistica del team. Per creare un contrasto e far risaltare le incredibili capacità di illuminazione in tempo reale dello SlipSpace Engine, si è deciso di “girare” la demo in ombra, con la luce del tramonto. Questo ha creato ombre estremamente lunghe sul paesaggio, portando la maggior parte dell’azione di gioco a essere coperta da ombre e l’illuminazione a essere praticamente piatta. L’idea era di far spiccare il contrasto del dettaglio quando i modelli si muovevano in piena luce, ma unita a un paio di altri elementi ha alla fine restituito una differente impressione alla community.

Il motore grafico di Infinite, come molti altri motori moderni, sfrutta un tool noto come light probe, per generare un effetto realistico di illuminazione riflessa. Come avviene in pittura, per esempio, si studia che l’illuminazione in una scena può provenire da diverse fonti: illuminazione diretta, contro luce, sub-surface scattering, illuminazione indiretta, illuminazione riflessa. Quest’ultima, l’illuminazione riflessa, è la luce del sole (o di altra fonte) che viene riflessa da una superficie e viene rimbalzata contro il soggetto, trasportando con sé alcune informazioni della superficie su cui si è riflessa (il tono e il colore per esempio). Così, dunque, se siamo su un prato verde, la luce riflessa sulle nostre gambe sarà leggermente sullo spettro del verde.

Per simulare questo tipo di effetto in grafica 3D si usano appunto i light probe, che prendono le informazioni dei colori intorno e le divergono sul modello poligonale. Quando si opera in zone di ombra e luce piatta, questi light probe causano un effetto non proprio realistico, creando un bagliore innaturale, come si può vedere per esempio nell’interno del Warthog quando Master Chief lo raggiunge per entrarvi.

Digital Foundry ci spiega che le light probe non generano ombre di occlusione – al contrario di quello che avviene con un modello poligonale con illuminazione statica.

Questione di ombre

A questo problema si uniscono altri due fattori: le ombre di occlusione e quelle regolari. Le prime sono ombre causate da oggetti vicini tra loro, che aggiungono profondità ai modelli. Le seconde, fanno parte del comparto di shadow mapping, ombre proiettate per via della luce diretta e altro.

Le ombre di occlusione sono spesso assenti nella demo perché l’unica fonte di illuminazione è in molti casi generata dai light probe, e questi non generano alcun tipo di ombra.

Le ombre regolari, invece, non sono presenti in gran parte della demo per via del fatto che appunto l’azione si svolge spesso in totale ombra. Per gestire il realismo dell’illuminazione in tempo reale, infatti, questo tipo di ombre precalcolate vanno a perdersi nella penombra e con un tipo di luce piatta.

Separare i problemi reali da quelli immaginari

Gli effetti collaterali dell’illuminazione diretta, dei light probe e delle ombre fanno parte di una serie di problematiche presenti in tutti i motori grafici, come anche per esempio l’Unreal Engine 5 o il Cry Engine. Ci sono varie modalità con cui i motori grafici aggirano questi ostacoli ma la più importante è senza dubbio quella dell’implementazione della tecnica del raytracing. Come è ben noto, lo SlipSpace Engine è nato per supportare questa tecnica come suo punto di forza per supportare al meglio il concept dietro lo sviluppo del titolo, ma la demo invece non ne mostrava gli effetti, ancora.

Se su questo frangente possiamo aspettarci un netto miglioramento all’aggiunta del raytracing, ci sono alcune parti della demo che mostrano un paio di scelte artistiche infelici puntualmente additate da Digital Foundry. Parliamo, infatti, della scelta di usare materiali di asset poco ispirati, che anche in luce diretta restituiscono la sensazione di materiali plastici o di metalli standard. Halo ha sempre avuto una grande tradizione di equilibrio di contrasti e materiali, che erano più vibranti e interessanti nei giochi precedenti, quindi è possibile aspettarsi cambiamenti da questo punto di vista.

Unita a questo problema, c’è la scelta della palette di effetti e materiali. Per quanto riguarda gli effetti, si nota una certa esagerata opacità rispetto alle scelte di Reach, per esempio, cosa che si nota subito sulla scarsa trasparenza degli effetti di ricarica dello scudo degli Elite oppure sull’eccessiva plasticità delle esplosioni al plasma.

Sebbene queste siano tutte scelte artistiche, hanno lo stesso livello di reversibilità di quelle tecniche, anche se appunto legate a decisioni stilistiche precise, non limitazioni tecniche (paradossalmente, molto più resilienti al cambiamento).

Alcuni effetti, come la ricarica degli scudi degli Elite, sembrano più opacizzati rispetto al passato – una scelta stilistica, che ha contribuito a dare un’impressione sbagliata sulle capacità tecniche dello SlipSpace Engine nella demo.

Conclusione

L’ottima analisi di Digital Foundry pone l’accento su delle differenze volute e non causate da problematiche tecniche o scarso utilizzo di risorse… men che meno dalla pigrizia dei developer. Quelle di Infinite sono scelte precise, buone o meno, ma dovute alle meccaniche di gioco. Si tratta di un buon compromesso per permettere finalmente un’esplorazione ampia e senza binari, un realismo maggiore d’ambiente laddove il punto di forza di Halo è sempre stato l’incredibile dettaglio dei luoghi dove si svolge l’azione e la capacità di coinvolgimento ambientale. E’ impossibile pensare a un tipo diverso di approccio per garantire il successo delle meccaniche pensate per risollevare la serie, incentrate sull’esplorazione.

Per quanto riguarda il comparto tecnico, con l’implementazione del raytracing e l’utilizzo di una risoluzione minore (come dicono nel video chiaramente “la risoluzione è sopravvalutata”), si può rientrare nei 60 FPS con un livello di realismo e dettaglio del mondo impressionanti, almeno virtualmente. Questo è un modo di pensare assolutamente next gen, con scarso (se non nullo) interesse verso hardware più vecchi, come è giusto che sia – sottolinea ancora il video.

Tutte queste considerazioni pongono l’accento su quali sono i reali obiettivi di 343i e Microsoft, ovvero il futuro di una piattaforma come Infinite, che dovrà supportare – lo ricordiamo – il franchise per dieci anni.

Le enormi differenze tra illuminazione globale illuminazione raytracing. Come è possibile notare, quando è assente quest’ultima, i materiali e lo shading in generale risultano più piatti, privi di volume e artificiali.