L'occlusione ambientale è una tecnica di rendering grafico che simula gli effetti della luce ambientale sugli oggetti 3D. Consiste nell'oscurare le aree in cui la luce è bloccata o riflessa da altri oggetti, creando ombre morbide e contrasti realistici.
L'occlusione ambientale è importante per il realismo dei videogiochi 3D, poiché aggiunge profondità e rilievo alla scena, tenendo conto della geometria e dell'orientamento degli oggetti.
Esistono diversi tipi di occlusione ambientale, che si basano su algoritmi e parametri differenti, offrendo risultati più o meno fedeli ed efficaci.
Perché l'occlusione ambientale è importante per i videogiochi 3D?
L'occlusione ambientale è importante per i videogiochi 3D perché aggiunge profondità e dimensione alla scena. Permette ai giocatori di distinguere gli oggetti l'uno dall'altro in base alla loro forma e orientamento. Inoltre, rende i colori più naturali, evitando che risultino troppo chiari o troppo scuri. L'occlusione ambientale, quindi, rende i videogiochi 3D più accattivanti dal punto di vista visivo e coinvolgenti.
Quali sono i diversi tipi di occlusione ambientale?
Esistono diversi tipi di occlusione ambientale, ognuno basato su metodi e parametri diversi. Questi tipi di occlusione ambientale hanno nomi complessi, come SSAO, HBAO, HDAO o VXAO. Ma non preoccupatevi, vi spiegheremo cosa significano e come funzionano.
SSAO: Occlusione ambientale dello spazio dello schermo
L'SSAO di occlusione ambientale più semplice e comune. Si basa su un'idea semplice: più due oggetti sono vicini, più ombre si proiettano a vicenda. L'SSAO misura quindi la distanza tra gli oggetti sullo schermo, utilizzando un'immagine chiamata z-buffer.
Lo z-buffer è come una mappa che mostra la distanza tra ogni punto sullo schermo e la telecamera. Successivamente, l'algoritmo SSAO confronta la distanza tra i punti adiacenti per determinare se proiettano ombre. In tal caso, scurisce il punto in base al livello di ombra.
- Vantaggi : è veloce e facile da usare, si adatta ai movimenti della telecamera e degli oggetti e funziona con tutti i giochi 3D.
- Svantaggi : non tiene conto della direzione o del colore degli oggetti, non distingue tra oggetti vicini e lontani e non gestisce bene i bordi o le trasparenze. Pertanto, può creare ombre troppo scure, troppo sfocate o mal posizionate, che non risultano molto realistiche.

HBAO: occlusione ambientale basata sull'orizzonte
L'HBAO è un tipo di occlusione ambientale più avanzato rispetto all'SSAO. Si basa su un concetto più complesso: più alto è l'orizzonte di un oggetto, maggiore è la quantità di luce ambientale che riceve. L'orizzonte di un oggetto è come la sua linea di vista verso il cielo.
Per esempio :
- Se ti trovi in cima a una montagna, hai un orizzonte molto alto, perché puoi vedere molto cielo.
- Se ti trovi in una valle, l'orizzonte è più basso perché vedi meno cielo.
L'algoritmo HBAO misura l'orizzonte di ogni punto sullo schermo utilizzando un'immagine chiamata buffer normale. Il buffer normale è come una mappa che mostra la direzione della superficie di ogni punto. Successivamente, l'algoritmo HBAO confronta l'orizzonte dei punti vicini per determinare se proiettano ombre. In tal caso, scurisce il punto in base al livello di ombra.
- Vantaggi : È più preciso e realistico dell'SSAO. Tiene conto della direzione e del colore degli oggetti, differenzia tra oggetti vicini e lontani e gestisce meglio i bordi e le trasparenze. Pertanto, crea ombre più sottili, più nitide e meglio posizionate, migliorando il realismo della scena.
- Svantaggi : È più costoso e complesso dell'SSAO. Richiede la misurazione dell'orizzonte di ogni punto, il che richiede più risorse. Dipende anche dalla qualità del buffer delle normali, che può essere impreciso o rumoroso. Non funziona con tutti i giochi 3D; questi devono fornire il buffer delle normali o utilizzare un motore grafico compatibile.
HDAO: Occlusione ambientale ad alta definizione
HDAO è un tipo di occlusione ambientale più efficace di HBAO. Si basa su un concetto più adattivo: maggiore è il numero di campioni necessari a un punto, maggiore è la probabilità che venga occluso dagli oggetti circostanti. I campioni sono come punti di vista acquisiti attorno a un punto per verificare se è illuminato o meno.
Per esempio :
- Se ti trovi in una stanza buia, hai bisogno di molti campioni per vedere se sei bloccato da un mobile o da una parete.
- Se ti trovi in una stanza luminosa, avrai bisogno di meno campioni per vedere se sei nascosto da una finestra o da una lampada.
HDAO calcola quindi il numero di campioni per ogni punto sullo schermo, utilizzando un metodo che varia il numero di campioni in base alla distanza e all'angolo dei punti. Successivamente, confronta il numero di campioni con i punti vicini per determinare se proiettano ombre. In tal caso, scurisce il punto in base al livello di ombra.
Vantaggi : È di alta qualità ed efficiente. Utilizza un numero ottimale di campioni per ogni punto, evitando perdite di qualità o sprechi di risorse. Ciò si traduce in ombre più dettagliate e profonde, migliorando la qualità complessiva della scena.
Svantaggi : È incompatibile e difficile da configurare. Non funziona con tutti i giochi 3D; questi devono utilizzare un motore grafico specifico, come quello di AMD o di Ubisoft. Dipende anche dalle impostazioni del giocatore, che deve scegliere il numero minimo e massimo di campioni, nonché il raggio e l'intensità dell'occlusione.

VXAO: occlusione ambientale accelerata tramite voxel
VXAO è un tipo di occlusione ambientale più avanzato rispetto a HDAO. Si basa su un concetto più completo: più accurata è la rappresentazione voxelizzata di un punto della scena, maggiore è la probabilità che venga occluso dagli oggetti circostanti. La rappresentazione voxelizzata è come un modello 3D che riproduce la scena con piccoli cubi chiamati voxel.
Ad esempio: se hai una casa in voxel, puoi vedere tutti i dettagli della sua struttura e illuminazione.
Il VXAO crea quindi una rappresentazione voxelizzata della scena sullo schermo, utilizzando un metodo chiamato voxel cone tracing. Il voxel cone tracing è come inviare coni virtuali in tutte le direzioni da ciascun punto per vedere quali voxel bloccano la luce.
Successivamente, confronta la rappresentazione voxelizzata dei punti adiacenti per determinare se proiettano ombre o meno. In tal caso, scurisce il punto in base al livello di ombra.
Vantaggi : È dettagliato e profondo. Utilizza una rappresentazione voxelizzata completa e accurata della scena, che gli consente di catturare tutti i possibili effetti di occlusione, compresi quelli causati da oggetti in movimento o da sorgenti luminose multiple. Crea quindi ombre molto fini e profonde, che aumentano la profondità della scena.
Svantaggi : Richiede molte risorse ed è limitato. Richiede la creazione di una rappresentazione voxelizzata della scena, il che richiede risorse considerevoli, in particolare memoria video. Non è compatibile con tutti i giochi 3D; questi devono utilizzare un motore grafico specifico, come quello di Nvidia o di Square Enix.
Occlusione ambientale nei videogiochi attuali
L'occlusione ambientale è una tecnica di rendering grafico utilizzata in molti videogiochi moderni. Migliora il realismo e l'immersione del giocatore creando effetti di ombra e contrasto che aggiungono profondità e dimensione alle scene 3D. Ecco alcuni esempi di giochi che utilizzano l'occlusione ambientale:

- Red Dead Redemption 2 : Questo gioco d'azione e avventura open-world sviluppato da Rockstar Games utilizza l'HDAO per creare ombre morbide e realistiche sia negli ambienti naturali che in quelli urbani. Il gioco include anche una modalità foto che permette ai giocatori di scattare immagini con diverse impostazioni di occlusione ambientale.
- Metro Exodus : Questo sparatutto in prima persona sviluppato da 4A Games utilizza la tecnologia VXAO per creare ombre profonde e delicate in ambienti post-apocalittici. Il gioco impiega anche una tecnica chiamata Global Illumination, che combina l'occlusione ambientale con la diffusione della luce per creare effetti di colore e illuminazione dinamici.
- Assassin's Creed Valhalla : questo gioco di ruolo d'azione open world sviluppato da Ubisoft utilizza HBAO+ per creare ombre nitide e precise in ambientazioni storiche e mitologiche. Il gioco impiega anche una tecnica chiamata Screen Space Reflections, che combina l'occlusione ambientale con la riflessione della luce, per creare effetti specchio e acqua realistici.
Per abilitare e regolare l'occlusione ambientale nelle impostazioni grafiche del gioco, in genere è necessario accedere al menu delle opzioni avanzate, dove è possibile scegliere il tipo e l'intensità dell'occlusione ambientale. È inoltre necessario considerare gli effetti dell'occlusione ambientale sulle prestazioni del sistema e sul consumo energetico. Infatti, maggiore è l'occlusione ambientale, maggiori sono le risorse richieste all'unità di elaborazione grafica (GPU) e alla scheda grafica, il che può comportare una diminuzione del frame rate o un aumento della temperatura del sistema.
L'occlusione ambientale nel futuro dei videogiochi
L'occlusione ambientale è una tecnica di rendering grafico che presenta ancora limiti e difficoltà. Dipende dalla qualità e dalla precisione degli algoritmi utilizzati, nonché dalla potenza e dalla compatibilità dei sistemi coinvolti. Ecco alcuni possibili modi per migliorare l'occlusione ambientale:
L'uso del ray tracing
Il ray tracing è una di rendering grafico che simula il percorso dei raggi luminosi in una scena 3D, tenendo conto delle loro interazioni con oggetti e materiali. Il ray tracing consente un calcolo dell'occlusione ambientale più realistico e preciso rispetto alle tecniche attuali, ma richiede anche molte più risorse.

Per questo motivo è necessario utilizzare schede grafiche specifiche, come quelle di Nvidia o AMD, che integrano unità dedicate al ray tracing.
L'uso dell'intelligenza artificiale
L'intelligenza artificiale è una tecnica che utilizza algoritmi capaci di apprendere ed evolversi in base ai dati forniti. L'intelligenza artificiale può quindi essere utilizzata per ottimizzare i calcoli di occlusione ambientaleadattando il numero di campioni o il raggio di occlusione in base alla scena o al movimento.
Può essere utilizzata anche per correggere artefatti o imprecisioni causati dalle tecniche attuali, tramite reti neurali o modelli pre-addestrati. Tuttavia, questo utilizzo dell'intelligenza artificiale solleva anche questioni sociali ed economiche.Nella sola Francia, l'impiego dell'IA comporta la perdita di 217 posti di lavoro.
Può essere utilizzato anche per correggere artefatti o imprecisioni causati dalle tecniche attuali, utilizzando reti neurali o modelli pre-addestrati.
L'uso della realtà virtuale
La realtà virtuale è una tecnica che immerge il giocatore in un ambiente 3Dtramite un visore o degli occhiali speciali. La realtà virtuale può quindi beneficiare dell'occlusione ambientale, che aumenta il realismo e la profondità della scena.
Tuttavia, presenta anche delle sfide, come la necessità di un frame rate elevato e costanteper evitare nausea o mal di testa. Pertanto, è necessario utilizzare tecniche di occlusione ambientale adattate alla realtà virtuale, come il rendering foveato, che riduce la qualità grafica delle aree periferiche del campo visivo.
Le prospettive future dell'occlusione ambientale sono quindi numerose e promettenti. Può contribuire a creare videogiochi 3D più belli e realistici, ma deve anche adattarsi alle nuove tecnologie e alle nuove esigenze dei videogiocatori.
Domande frequenti
Cos'è la luce ambientale?
La luce ambientale è la luce che proviene da tutte le direzioni e illumina la scena in modo uniforme. Non ha una sorgente specifica; è il risultato della diffusione della luce da parte dell'atmosfera, delle nuvole, delle pareti, ecc.
Nei videogiochi, la luce ambientale viene spesso utilizzata per creare un'illuminazione di base, che può poi essere integrata da fonti di luce diretta, come il sole, le lampade, i fuochi, ecc.

Qual è la differenza tra occlusione ambientale e ombre proiettate?
Le ombre proiettate sono le ombre create dagli oggetti quando illuminati da una sorgente luminosa diretta. Dipendono dalla posizione e dalla forma dell'oggetto, nonché dalla direzione e dalla distanza della sorgente luminosa. Le ombre proiettate sono spesso utilizzate nei videogiochi per creare contrasto e profondità tra gli oggetti e lo sfondo.
L'occlusione ambientale è l'ombra proiettata dagli oggetti quando illuminati dalla luce ambientale. Dipende dalla vicinanza e dall'orientamento reciproco degli oggetti, nonché dal raggio e dall'intensità della luce ambientale. L'occlusione ambientale viene spesso utilizzata nei videogiochi per creare realismo e dettagli precisi negli oggetti.
Come si attiva o disattiva l'occlusione ambientale in un videogioco?
Per attivare o disattivare l'occlusione ambientale in un videogioco, di solito è necessario accedere al menu delle opzioni grafiche del gioco , dove si trova un'impostazione dedicata all'occlusione ambientale. Può trattarsi di un semplice pulsante di attivazione/disattivazione o di un cursore che consente di scegliere il livello di occlusione ambientale.
Leggi anche : Cloud gaming, il futuro inesplorato dell'industria dei videogiochi?
Qual è l'impatto dell'occlusione ambientale sulle prestazioni dei videogiochi?
L'occlusione ambientale ha un impatto sulle prestazioni dei videogiochi, poiché richiede un maggior numero di calcoli da parte dell'unità di elaborazione grafica (GPU) e della scheda grafica.
Maggiore è il livello o il tipo di occlusione ambientale, maggiore è il consumo di risorse. Ciò può comportare un calo dei fotogrammi al secondo (FPS), che misura la fluidità del gioco, o un aumento della temperatura del sistema, che può causare surriscaldamento o rallentamenti.
Qual è il vantaggio dell'occlusione ambientale per il giocatore?
Il vantaggio dell'occlusione ambientale per il giocatore è che rende il videogioco più bello e coinvolgente. Permette la creazione di ombre ed effetti di contrasto che conferiscono rilievo e profondità agli oggetti 3D.
Permette inoltre di ottenere colori più naturali e armoniosi. L'occlusione ambientale contribuisce quindi a creare un'atmosfera e un'atmosfera più realistiche nei videogiochi.



