Co to jest okluzja otoczenia?

Odpowiedzi:

35

Okluzja otoczenia to metoda przybliżenia jasności światła świecącego na określoną część powierzchni, w oparciu o światło i jego otoczenie. Służy to do dodania realizmu.

Wikipedia ma ładny akapit, który wyjaśnia, co zostało zrobione.

Okluzja otoczenia jest najczęściej obliczana przez rzucanie promieni w każdym kierunku z powierzchni. Promienie docierające do tła lub „nieba” zwiększają jasność powierzchni, a promień, który uderza w jakikolwiek inny obiekt, nie powoduje oświetlenia. W rezultacie punkty otoczone dużą ilością geometrii stają się ciemne, podczas gdy punkty o małej geometrii na widocznej półkuli wydają się jasne.

Oto wysoce techniczny artykuł na ten temat.

Lalafur Waage
źródło
6
Chociaż zdaję sobie sprawę, że coś cytujesz, opisuje ono oświetlenie otoczenia, a nie okluzję otoczenia. Chociaż jest bardzo podobna, logika jest odwrócona ( usuwasz światło, gdy promienie uderzają w pobliskie obiekty, aby uzyskać okluzję otoczenia )
MickLH
68

Światło otoczenia to rodzaj światła w grafice komputerowej, który służy do symulacji globalnego oświetlenia. Okluzja otoczenia jest po prostu symulacją zacienienia spowodowanego przez obiekty blokujące światło otoczenia. Ponieważ światło otoczenia jest środowiskowe, w przeciwieństwie do innych rodzajów oświetlenia, okluzja otoczenia nie zależy od kierunku światła. Jako taki może być wstępnie obliczony dla obiektów statycznych.

wprowadź opis zdjęcia tutaj

Bez AO (po lewej) Zauważ, że cień na lewym obrazie jest powodowany przez światło kierunkowe, z AO (po prawej).

W tradycyjnym śledzeniu promieniowym okluzja otoczenia jest symulowana przez próbkowanie promieni z określonego punktu, który przybiera kształt półkuli, a następnie jest sprawdzana pod kątem przecięcia ze sceną (zwana także Object Space AO).

wprowadź opis zdjęcia tutaj

Zwróć uwagę, w jaki sposób próbki promieniowania są wykorzystywane do symulacji integracji AO.

wprowadź opis zdjęcia tutaj

Zwróć uwagę na aliasing (kropki) spowodowane niedostatecznym próbkowaniem okluzji otoczenia.

Ponieważ technika próbkowania ze śledzeniem promieni jest zbyt wolna, aby stosować ją w grafice komputerowej w czasie rzeczywistym, pojawiły się inne metody symulujące to zachowanie. Jednym z godnych uwagi podejść jest tzw. Screen Space Ambient Occlusion (SSAO).

SSAO to technika ekran-przestrzeń opracowana przez Crytek. Okluzja otoczenia jest obliczana w trybie pełnoekranowym, przy użyciu bufora Z jako jedynego wejścia.

Współczynnik niedrożności otoczenia kAkażdego piksela jest szacowany poprzez przetestowanie zestawu punktów rozmieszczonych w półkuli wokół położenia piksela. To skutecznie symuluje tradycyjne podejście do śledzenia promieni w przestrzeni ekranu.

Wartość kAzależy od próbek, które znajdują się przed wartością w buforze Z. Jeśli połowa lub więcej próbek przejdzie test głębokości (to znaczy są bliżej kamery niż środkowy piksel), wówczas kAotrzymuje wartość 1. Mniejsza liczba próbek daje wynik kAmniejszy niż 1.

Składnik SSAO typowej sceny gry

Składnik SSAO typowej sceny gry

concept3d
źródło
7

http://en.wikipedia.org/wiki/Ambient_occlusion

Okluzja otoczenia zwykle oznacza zastosowanie danych, które reprezentują ilość światła z otoczenia padającego na powierzchnię. Dane te są zwykle teksturami w skali szarości lub kolorami wierzchołków, w zależności od implementacji.

Aby obliczyć dane, najczęstszym sposobem jest renderowanie sceny z jednolitą białą teksturą i 1-punktowym światłem wiele razy, przenoszenie światła punktowego za każdym razem w inne miejsce na kuli lub półkuli. Wyniki wszystkich renderowań są uśredniane, co daje dane o poszczególnych lokalizacjach w scenie i ilości światła docierającego do tej lokalizacji.

Na przykład miejsce w scenie, które zawsze będzie jasne, bez względu na to, gdzie umieścisz światło, będzie jasne, gdzie jako miejsce, które jest ciemne, bez względu na to, gdzie umieścisz światło, będzie ciemno. W rezultacie otrzymujesz coś, co spowoduje umieszczenie ciemnych cieni w szczelinach i pęknięciach oraz miękkie oświetlenie, w którym obiekty zwykle rzucają cień.

gman
źródło
3

Okluzja otoczenia jest metodą obliczania oświetlenia na powierzchni obiektu, która uwzględnia jasność światła z powodu okluzji powierzchni w stosunku do źródła światła.

Oznacza to, że okluzja otoczenia jest metodą zacienienia, która ma charakter globalny, co oznacza, że ​​światło / oświetlenie z każdego punktu na scenie może wpływać na inne punkty na scenie. W przeciwieństwie do lokalnych metod cieniowania, takich jak Phong / Blinn, oznacza to, że cieniowanie z okluzją otoczenia dodaje więcej realizmu.

Oto trochę uproszczonego wyjaśnienia. Okluzja otoczenia to ciekawy, sztuczny sposób symulowania globalnego oświetlenia, który jest szybszy niż inne metody, które dotychczas stosowaliśmy. Promienie są rzucane z każdego kierunku od punktu powierzchni „w górę” w stosunku do powierzchni. Promienie, które nie docierają do żadnego obiektu na swojej drodze, czyli osiągają próg pustki tła („niebo”), zwiększają jasność powierzchni. Promienie, które z drugiej strony uderzają w geometrię, gdy są rzucane z powierzchni, nie zwiększają jasności powierzchni. Punkty powierzchni, które są otoczone przez wiele innych geometrii, są jakby w cieniu.

SSAO to tylko jeden ze sposobów wykonywania okluzji otoczenia.

Klatka kluczowa
źródło
1
„... w odniesieniu do źródła światła” Kiedy wspominasz o źródłach światła, sugeruje to bezpośrednie oświetlenie. Chociaż światło otoczenia pochodzi ze źródła, jak każde inne światło, uważa się, że pochodzi ze wszystkich kierunków.
muhuk
-2

Okluzja otoczenia oznacza, że ​​światło nie dociera. Zagięcia i szczeliny nie odbijają światła otoczenia, więc zazwyczaj nie ma ich w większości, tworząc „najciemniejsze ciemności”, zwykle w zależności od atmosfery.

Jenay Elder
źródło
-7

Ambient Occlusion ... dla osób, które tak naprawdę nie są zaznajomione z technologią grafiki do gier, ambient ambient occlusion dodaje określoną ilość światła do każdego obiektu na scenie. wszystkie wielokąty są renderowane pod innym kątem, w takim przypadku ilość światła jest nierównomierna, co czyni grę bardziej realistyczną i atrakcyjną dla oka

palanguejolly
źródło
11
Nie sądzę, żebyś wnosił coś nowego, o czym warto wspomnieć.
Lasse,
Ta odpowiedź wydaje się opisywać „światło otoczenia”, a nie „okluzję otoczenia”. Okluzja otoczenia zmniejsza ilość światła dodawanego przez oświetlenie otoczenia.
DMGregory