Ambient occlusion
Ambient occlusion (AO) — модель затінення, яка використовується в тривимірній графіці і дозволяє додати реалістичності зображення шляхом обчислення інтенсивності світла, що доходить до точки поверхні. На відміну від локальних методів, як, наприклад, затемнення за Фонгом, ambient occlusion є глобальним методом, тобто значення яскравості кожної точки об'єкта залежить від інших об'єктів сцени. В принципі, це досить віддалено нагадує глобальне освітлення.
Ambient occlusion найчастіше обчислюється шляхом побудови променів, що виходять з точки поверхні у всіх напрямках, з подальшою їх перевіркою на перетин з іншими об'єктами.[1] Промені, що досягли фону або «неба», збільшують яскравість поверхні, в той час, як промені, які перетинають інші об'єкти, не додають яскравості. В результаті точки, оточені великою кількістю геометрії, промальовується як більш темні, а точки з малою кількістю геометрії у видимій півсфері — світлими.
У додатках реального часу, таких як комп'ютерні ігри, ambient occlusion екранного простору (SSAO) або ambient occlusion оточення на горизонті (HBAO[en]), можна використовувати як швидше наближення істинної ambient occlusion оточення, використовуючи глибину пікселя, а не геометрію сцени, щоб сформувати ambient occlusion карту. Проте, нові технології роблять реальну оклюзію реальністю навіть в режимі реального часу.
Навколишня ambient occlusion пов'язана з затінюванням доступності, яка визначає зовнішній вигляд, оснований на тому, як легко торкатися поверхні різними елементами (наприклад, брудом, світлом і т. д.). Його популяризували в анімації виробництва через його відносну простоту та ефективність. У промисловості ambient occlusion навколишнього світу часто називають «світлом неба».
Ambient occlusion належить до методів, заснованим на доступності елемента поверхні для різних факторів, таких як бруд, світло і т. Д. Він отримав популярність завдяки відносній простоті й досить високу ефективність. Часто AO також називають «sky light».
Модель AO сприяє кращому сприйняттю обсягу зображуваних об'єктів, ніж модель прямого освітлення.[2]
Затемнення у точці поверхні з нормаллю може бути розраховано шляхом інтегрування функції видимості по півсфері :
,
де - значення функції видимості у точці , що дорівнює нулю, якщо промінь із у напрямку має перетин з об'єктом, і дорівнює одиниці в інших випадках. На практиці, для взяття цього інтеграла використовуються різні техніки: однією з найбільш часто використовуваних є метод Монте-Карло. Інший метод (більш повно використовує можливості апаратного прискорення) — рендеринг сцени з точки з растеризуванням геометрії чисто чорним кольором на білому тлі. Усереднене значення яскравості отриманого кадру і є приблизне значення функції в даній точці. Цей спосіб — приклад збірного методу (метод зсередини-назовні), в той час, як інші підходи (такі, як depth-map ambient occlusion) використовують розсіювання (метод ззовні-всередину).
Крім значення затінення часто обчислюють додатковий вектор («відхилена нормаль»), що показує зразковий напрям до відкритого (незатемненого) простору. Цей вектор може бути використаний для отримання освітлення з карти оточення. Однак бувають ситуації, коли вектор показує аж ніяк не в напрямку максимального освітлення.
Зігнуту нормаль можна використовувати для пошуку падаючого випромінювання з карти оточення, щоб наблизити освітлення на основі зображення. Однак існують ситуації, коли напрямок зігнутої нормалі є спотворенням домінуючого напрямку освітлення, наприклад:
У цьому прикладі світло може досягати точки тільки з лівого або правого боку, але вигнуті точки нормалі вказують на середнє значення цих двох джерел, що, на жаль, прямує до перешкоди.
У 2010 році Гайден Ландіс, Кен МакГог і Гільмар Кох були нагороджені премією «Оскар» за науково-технічні досягнення за їх роботу по візуалізації ambient occlusion навколишнього середовища[3].
- ↑ Miller, Gavin (1994). Efficient algorithms for local and global accessibility shading. Proceedings of the 21st annual conference on Computer graphics and interactive techniques. с. 319—326.
- ↑ Langer, M.S.; H. H. Buelthoff (2000). Depth discrimination from shading under diffuse lighting. Perception. 29 (6): 649—660. doi:10.1068/p3060. PMID 11040949.
- ↑ Oscar 2010: Scientific and Technical Awards [Архівовано 25 березня 2012 у Wayback Machine.], Alt Film Guide, Jan 7, 2010
- «Depth discrimination from shading under diffuse lighting», M.S. Langer and H. H. Buelthoff, Perception. 29 (6) 649—660, 2000.