Ambient occlusion is een grafische renderingtechniek die de effecten van omgevingslicht op 3D-objecten simuleert. Het houdt in dat gebieden waar licht wordt geblokkeerd of weerkaatst door andere objecten, donkerder worden gemaakt, waardoor zachte schaduwen en realistische contrasten ontstaan.
Ambient occlusion is belangrijk voor het realisme van 3D-videogames, omdat het diepte en reliëf aan de scène toevoegt, rekening houdend met de geometrie en oriëntatie van objecten.
Er bestaan verschillende soorten omgevingsocclusie, die gebaseerd zijn op verschillende algoritmen en parameters, en die min of meer nauwkeurige en effectieve resultaten opleveren.
Waarom is omgevingsocclusie belangrijk voor 3D-videogames?
Ambient occlusion is belangrijk voor 3D-videogames omdat het diepte en dimensie aan de scène toevoegt. Het stelt spelers in staat objecten van elkaar te onderscheiden op basis van hun vorm en oriëntatie. Het zorgt er ook voor dat kleuren natuurlijker lijken , doordat ze niet te licht of te donker zijn. Ambient occlusion maakt 3D-videogames daarom visueel aantrekkelijker en meeslepender .
Wat zijn de verschillende soorten omgevingsocclusie?
Er bestaan verschillende soorten ambient occlusion, elk gebaseerd op verschillende methoden en parameters. Deze soorten ambient occlusion hebben ingewikkelde namen, zoals SSAO, HBAO, HDAO of VXAO. Maar geen zorgen, we leggen uit wat ze betekenen en hoe ze werken.
SSAO: Screen Space Ambient Occlusion
SSAO eenvoudigste en meest voorkomende vorm van omgevingsocclusie . Het is gebaseerd op een simpel principe: hoe dichter twee objecten bij elkaar staan , hoe meer schaduw ze op elkaar werpen . SSAO meet daarom de afstand tussen objecten op het scherm met behulp van een afbeelding die de z-buffer .
De z-buffer is als een kaart die de afstand tussen elk punt op het scherm en de camera weergeeft. Vervolgens vergelijkt SSAO de afstand tussen naburige punten om te bepalen of ze schaduwen werpen. Zo ja, dan wordt het punt donkerder gemaakt op basis van de intensiteit van de schaduw.
- Voordelen : Het is snel en gemakkelijk te doen, het past zich aan camera- en objectbewegingen aan en het werkt met alle 3D-games.
- Nadelen : het houdt geen rekening met de richting of kleur van objecten, het maakt geen onderscheid tussen objecten dichtbij en veraf, en het verwerkt randen of transparanties niet goed. Daardoor kunnen schaduwen te donker, te wazig of slecht geplaatst zijn, wat niet erg realistisch is.

De HBAO: Horizon-Based Ambient Occlusion
HBAO is een geavanceerdere vorm van omgevingsocclusie dan SSAO . Het is gebaseerd op een complexer principe: hoe hoger de horizon van een object , hoe meer omgevingslicht het ontvangt . De horizon van een object is als het ware de zichtlijn naar de hemel.
Bijvoorbeeld :
- Als je op de top van een berg staat, heb je een heel hoge horizon, omdat je een groot deel van de lucht kunt zien.
- Als je in een vallei bent, heb je een lagere horizon omdat je minder van de lucht ziet.
De HBAO meet de horizon van elk punt op het scherm met behulp van een afbeelding die de normale buffer . De normale buffer is als een kaart die de richting van het oppervlak van elk punt weergeeft . Vervolgens vergelijkt de HBAO de horizon van naburige punten om te bepalen of ze schaduwen werpen. Zo ja, dan maakt het het punt donkerder op basis van de intensiteit van de schaduw.
- Voordelen : Het is preciezer en realistischer dan SSAO. Het houdt rekening met de richting en kleur van objecten, maakt onderscheid tussen objecten dichtbij en veraf en behandelt randen en transparanties beter. Daardoor creëert het dunnere, scherpere en beter geplaatste schaduwen, wat het realisme van de scène vergroot.
- Nadelen : Het is duurder en complexer dan SSAO. Het vereist het meten van de horizon van elk punt, wat meer resources vergt. Het is ook afhankelijk van de kwaliteit van de normale buffer, die onnauwkeurig of ruisig kan zijn. Het werkt niet met alle 3D-games; deze moeten een normale buffer leveren of een compatibele grafische engine gebruiken.
HDAO: High Definition Ambient Occlusion
HDAO is een effectievere vorm van omgevingsocclusie dan HBAO . Het is gebaseerd op een meer adaptief concept: hoe meer meetpunten een punt nodig heeft , hoe groter de kans dat het wordt verduisterd door omringende objecten . De meetpunten zijn als gezichtspunten die rond een punt worden genomen om te zien of het verlicht is of niet.
Bijvoorbeeld :
- Als je in een donkere ruimte bent, heb je veel proefstukjes nodig om te zien of je zicht wordt belemmerd door een meubelstuk of een muur.
- Als u zich in een lichte ruimte bevindt, heeft u minder monsters nodig om te zien of u wordt afgeschermd door een raam of een lamp.
HDAO berekent het aantal samples voor elk punt op het scherm , met behulp van een methode die het aantal samples varieert op basis van de afstand en de hoek van de punten. Vervolgens vergelijkt het het aantal samples met naburige punten om te bepalen of deze schaduwen werpen. Zo ja, dan maakt het het punt donkerder op basis van de intensiteit van de schaduw.
Voordelen : Het is van hoge kwaliteit en efficiënt. Het gebruikt een optimaal aantal samples per punt, waardoor kwaliteitsverlies en verspilling van resources worden voorkomen. Dit resulteert in gedetailleerdere en diepere schaduwen, wat de algehele kwaliteit van de scène verbetert.
Nadelen : Het is incompatibel en moeilijk te configureren. Het werkt niet met alle 3D-games; deze moeten een specifieke grafische engine gebruiken, zoals die van AMD of Ubisoft. Het is ook afhankelijk van de instellingen van de speler, die het minimum en maximum aantal samples moet kiezen, evenals de straal en intensiteit van de occlusie.

VXAO: Voxel Accelerated Ambient Occlusion
VXAO is een geavanceerdere vorm van omgevingsocclusie dan HDAO . Het is gebaseerd op een meer omvattend idee: hoe nauwkeuriger de gevoxeliseerde weergave van de scène rond een punt , hoe groter de kans dat het punt wordt verduisterd door omringende objecten . De gevoxeliseerde weergave is als een 3D-model dat de scène reproduceert met kleine kubussen, voxels genaamd.
Bijvoorbeeld: als je een huis in voxels hebt, kun je alle details van de structuur en de verlichting zien.
De VXAO creëert daarom een gevoxeliseerde weergave van de scène op het scherm, met behulp van een methode genaamd voxel cone tracing . Voxel cone tracing is vergelijkbaar met het uitzenden van virtuele kegels in alle richtingen vanuit elk punt om te zien welke voxels het licht blokkeren.
Vervolgens vergelijkt het de gevoxeliseerde weergave van naburige punten om te bepalen of ze schaduwen werpen of niet. Zo ja, dan wordt het punt donkerder gemaakt op basis van de mate van schaduw.
Voordelen : Het is gedetailleerd en diepgaand. Het maakt gebruik van een complete en nauwkeurige voxelweergave van de scène, waardoor alle mogelijke occlusie-effecten worden vastgelegd, inclusief die veroorzaakt door bewegende objecten of meerdere lichtbronnen. Hierdoor ontstaan zeer fijne en diepe schaduwen, die de diepte van de scène vergroten.
Nadelen : Het is resource-intensief en beperkt. Het vereist het creëren van een gevoxeliseerde weergave van de scène, wat aanzienlijke resources vergt, met name videogeheugen. Het is niet compatibel met alle 3D-games; deze moeten een specifieke grafische engine gebruiken, zoals die van Nvidia of Square Enix.
Omgevingsocclusie in hedendaagse videogames
Ambient occlusion is een grafische renderingtechniek die in veel moderne videogames wordt gebruikt. Het verbetert het realisme en de onderdompeling van de speler door schaduw- en contrasteffecten die diepte en dimensie toevoegen aan 3D-scènes. Hier zijn enkele voorbeelden van games die ambient occlusion gebruiken:

- Red Dead Redemption 2 : Deze openwereld actie-avonturengame, ontwikkeld door Rockstar Games, maakt gebruik van HDAO om zachte, realistische schaduwen te creëren in zowel natuurlijke als stedelijke omgevingen. De game bevat ook een fotomodus waarmee spelers foto's kunnen maken met verschillende omgevingsocclusie-instellingen.
- Metro Exodus : Deze first-person shooter, ontwikkeld door 4A Games, gebruikt VXAO om subtiele, diepe schaduwen te creëren in post-apocalyptische omgevingen. De game maakt ook gebruik van een techniek genaamd Global Illumination , die omgevingsocclusie combineert met lichtverspreiding om dynamische kleur- en lichteffecten te creëren.
- Assassin's Creed Valhalla : Deze openwereld-actie-RPG, ontwikkeld door Ubisoft, gebruikt HBAO+ om scherpe, precieze schaduwen te creëren in historische en mythologische omgevingen. De game maakt ook gebruik van een techniek genaamd Screen Space Reflections , die omgevingsocclusie combineert met lichtreflectie, om realistische spiegel- en watereffecten te creëren.
Om omgevingsocclusie in de grafische instellingen van een game in te schakelen en aan te passen, moet je meestal naar het menu met geavanceerde opties gaan, waar je het type en de intensiteit van de omgevingsocclusie kunt kiezen. Je moet ook rekening houden met de effecten van omgevingsocclusie op de systeemprestaties en het stroomverbruik. Hoe hoger de omgevingsocclusie, hoe meer resources er van de grafische processor (GPU) en de grafische kaart worden gevraagd, wat kan leiden tot een lagere framesnelheid of een hogere systeemtemperatuur.
Omgevingsocclusie in de toekomst van videogames
Ambient occlusion is een grafische renderingtechniek die nog steeds beperkingen en uitdagingen kent. Het hangt af van de kwaliteit en precisie van de gebruikte algoritmen, evenals de rekenkracht en compatibiliteit van de betrokken systemen. Hier volgen enkele mogelijke manieren om ambient occlusion te verbeteren:
Het gebruik van ray tracing
Raytracing is een grafische renderingtechniek die het pad van lichtstralen in een 3D-scène simuleert , rekening houdend met hun interactie met objecten en materialen. Raytracing maakt een realistischere en nauwkeurigere berekening van omgevingsocclusie mogelijk dan de huidige technieken, maar vereist ook aanzienlijk meer resources.

Daarom moeten speciale grafische kaarten, zoals die van Nvidia of AMD, die modules voor raytracing bevatten, worden gebruikt.
Het gebruik van kunstmatige intelligentie
Kunstmatige intelligentie is een techniek die gebruikmaakt van algoritmen die kunnen leren en evolueren op basis van de aangeleverde gegevens. Kunstmatige intelligentie kan daarom worden gebruikt om omgevingsocclusieberekeningen te optimaliseren door het aantal samples of de occlusieradius aan te passen aan de scène of beweging.
Het kan ook worden gebruikt om artefacten of onnauwkeurigheden te corrigeren die worden veroorzaakt door huidige technieken, met behulp van neurale netwerken of vooraf getrainde modellen. Maar dit gebruik van kunstmatige intelligentie roept ook sociale en economische vragen op. Alleen al in Frankrijk gaan er door het gebruik van AI 217 banen verloren .
Het kan ook worden gebruikt om artefacten of onnauwkeurigheden te corrigeren die worden veroorzaakt door de huidige technieken, met behulp van neurale netwerken of vooraf getrainde modellen.
Het gebruik van virtuele realiteit
Virtuele realiteit is een techniek waarbij de speler met behulp van een headset of speciale bril 3D-omgeving . Virtuele realiteit kan daarom profiteren van omgevingsocclusie, wat het realisme en de diepte van de scène vergroot.
Het brengt echter ook uitdagingen met zich mee, zoals de noodzaak van een hoge en constante framesnelheid om misselijkheid of hoofdpijn te voorkomen. Daarom moeten omgevingsocclusietechnieken die zijn aangepast aan virtual reality worden gebruikt, zoals foveated rendering , waarbij de grafische kwaliteit van de perifere delen van het gezichtsveld wordt verminderd.
De toekomstperspectieven voor ambient occlusion zijn daarom talrijk en veelbelovend. Het kan bijdragen aan het creëren van mooiere en realistischere 3D-videogames, maar het moet zich ook aanpassen aan nieuwe technologieën en de nieuwe eisen van gamers.
Veelgestelde vragen
Wat is omgevingslicht?
Omgevingslicht is licht dat van alle kanten komt en de omgeving gelijkmatig verlicht. Het heeft geen specifieke bron; het is het resultaat van lichtverstrooiing door de atmosfeer, wolken, muren, enz.
Omgevingslicht wordt in videogames vaak gebruikt om basisverlichting , die vervolgens kan worden aangevuld met directe lichtbronnen, zoals de zon, lampen, vuur, enzovoort.

Wat is het verschil tussen omgevingsocclusie en slagschaduwen?
Slagschaduwen zijn de schaduwen die objecten werpen wanneer ze worden verlicht door een directe lichtbron. Ze zijn afhankelijk van de positie en vorm van het object, evenals de richting en afstand van de lichtbron. Slagschaduwen worden vaak gebruikt in videogames om contrast en diepte te creëren tussen objecten en de achtergrond.
Ambient occlusion is de schaduw die objecten werpen wanneer ze worden verlicht door omgevingslicht. Deze schaduw is afhankelijk van de afstand en oriëntatie van de objecten ten opzichte van elkaar, evenals de straal en intensiteit van het omgevingslicht. Ambient occlusion wordt vaak gebruikt in videogames om realisme en fijne details in objecten te creëren.
Hoe kan ik omgevingsocclusie in een videogame in- of uitschakelen?
Om omgevingsocclusie in een videogame in of uit te schakelen, moet je meestal het menu met grafische opties van de game openen . Daar vind je een instelling voor omgevingsocclusie. Dit kan een simpele aan/uit-knop zijn, of een schuifregelaar waarmee je het niveau van omgevingsocclusie kunt kiezen.
Lees ook : Cloudgaming, de onbenutte toekomst van de videogame-industrie?
Wat is de impact van omgevingsocclusie op de prestaties van videogames?
Ambient occlusion heeft invloed op de prestaties van videogames, omdat het meer berekeningen vereist van de grafische processor ( GPU ) en de grafische kaart.
Hoe hoger het niveau of type omgevingsocclusie, hoe meer systeembronnen het verbruikt . Dit kan leiden tot een daling van het aantal frames per seconde (FPS), wat de vloeiendheid van het spel meet, of tot een verhoging van de systeemtemperatuur, wat kan leiden tot oververhitting of vertragingen.
Wat is het voordeel van omgevingsocclusie voor de speler?
Het voordeel van ambient occlusion voor de speler is dat het de videogame mooier en meeslepender maakt . Het maakt het mogelijk om schaduw- en contrasteffecten te creëren die reliëf en diepte geven aan 3D-objecten.
Het maakt ook meer natuurlijke en harmonieuze kleuren mogelijk. Ambient occlusion draagt daarom bij aan het creëren van een realistischere atmosfeer en ambiance in videogames.



