[Перевод] Learn OpenGL. Урок 5.10 – Screen Space Ambient Occlusion
|
|
Понедельник, 27 Августа 2018 г. 12:46
+ в цитатник
SSAO
Тема фонового освещения была затронута нами в уроке по
основам освещения, но лишь вскользь. Напомню: фоновая составляющая освещения – суть постоянная величина, добавляемая во все расчеты освещения сцены для имитации процесса
рассеяния света. В реальном же мире свет испытывает множество переотражений с разной степенью интенсивности, что приводит к столь же неравномерной засветке косвенно освещенных участков сцены. Очевидно, что засветка с постоянной интенсивностью не очень правдоподобна.
Одним из видов приближенного расчета затенения от непрямого освещения является алгоритм
фонового затенения (
ambient occlusion, AO), который имитирует ослабление непрямого освещения в окрестности углов, складок и прочих неровностях поверхностей. Такие элементы, в основном, значительно перекрываются соседствующей геометрией и потому оставляют меньше возможностей лучам света вырваться наружу, затемняя данные участки.
Ниже представлено сравнение рендера без и с использованием алгоритма AO. Обратите внимание на то, как падает интенсивность фонового освещения в окрестности углов стен и прочих резких изломов поверхности:
Пусть эффект и не очень заметен, но присутствие эффекта во всей сцене добавляет ей реалистичности за счет дополнительной иллюзии глубины, созданной малыми деталями эффекта самозатенения.
Читать дальше -> https://habr.com/post/421385/?utm_source=habrahabr&utm_medium=rss&utm_campaign=421385
Метки:
Разработка игр
Программирование
C++
opengl
opengl 3
ssao
ambient occlusion
blur
postprocessing
-
Запись понравилась
-
0
Процитировали
-
0
Сохранили
-