SSAO (Screen Space Ambient Occlusion) — это техника рендеринга, которая используется в компьютерной графике для улучшения реалистичности сцены путём добавления теней в местах, где объекты близко расположены друг к другу. sky.pro
Алгоритм SSAO работает на основе анализа глубины и нормалей пикселей на экране. sky.pro Основные этапы работы: sky.pro
- Генерация карты глубины. sky.pro На первом этапе рендеринга создаётся карта глубины, которая хранит информацию о расстоянии от камеры до каждого пикселя сцены. sky.pro Эта карта глубины является основой для дальнейших вычислений, так как она позволяет определить, какие объекты находятся ближе к камере, а какие дальше. sky.pro
- Анализ нормалей. sky.pro Одновременно с картой глубины создаётся карта нормалей, которая содержит информацию о направлении поверхности в каждой точке сцены. sky.pro
- Обработка текселей. ru.wikipedia.org Берётся карта позиций и нормалей каждого текселя на экране и обрабатываются соседние тексели. ru.wikipedia.org По отношению позиций соседних текселей к обрабатываемому, ему присваивается определённый уровень «затенения». ru.wikipedia.org
Алгоритм SSAO работает в режиме реального времени и имитирует рассеянное непрямое освещение и соответствующее затемнение в трёхмерном виртуальном пространстве. ru.wikipedia.org
Некоторые примеры использования SSAO в играх:
- The Witcher 3: Wild Hunt. sky.pro В этой игре SSAO используется для добавления теней в густых лесах и на улицах городов, что делает мир более живым и реалистичным. sky.pro
- Grand Theft Auto V. sky.pro SSAO помогает создать более глубокие и объёмные сцены в городских и сельских локациях, добавляя тени под автомобилями и вокруг зданий. sky.pro