Метод фотонних карт (англ. photon mapping) — один з найбільш універсальних та поширених алгоритмів рендерингу, який вирішує завдання інтегрування рівняння рендерингу. Алгоритм складається з трьох частин: трасування фотонів, побудови фотонної карти і збору освітленості.
Ефекти
Каустика
Світло заломлюється чи відображається з причини ефекту, що називається каустика. Як правило, видно як заломлюються концентровані плями світла на прилеглих поверхнях. Наприклад, коли промені світла проходять через келих, вони заломлюються і візерунки світла видно на столі. Можна простежити шляхи окремих фотонів в моделі, де з'являться ці концентровані відблиски.
Дифузне відбиття світла
Дифузне відбиття світла проявляється, коли світло від одного дифузного об'єкта відбивається на інший. Метод фотонних карт особливо вправний у поводженні з цим ефектом, тому що алгоритм відбиває фотони від однієї поверхні до іншої в залежності від функції двонаправленого розподілу відображення цієї поверхні. Дифузне відбиття світла вперше було змодельоване з використанням випромінення. Відбивання кольору є прикладом дифузного відбиття світла.
Підповерхневе розсіювання
Підповерхневе розсіювання — це ефект, коли світло входить в матеріал і розсіюється, перш ніж поглинається або відбивається в іншому напрямку. Підповерхневе розсіювання може точно бути змодельоване з використанням фотонних карт. Цей метод стає повільним для матеріалів, які сильно розсіюються. [en] є більш ефективною в таких ситуаціях.
Алгоритм
Трасування фотонів
Фотони в цьому методі — це частинки, що переносять деяку дискретну порцію світлової енергії. На початковому етапі фотони випромінюються з джерела світла відповідно до розподілу світлової енергії цього джерела. Наприклад, відомо, що точкове або сферичне джерело світла (наприклад, сонце) випускає світло ізотропно в усіх напрямках. Джерела світла у вигляді плоского майданчика мають косинусоїдальний розподіл, що набуває максимуму в напрямку, який збігається з нормаллю до площини джерела і нуль за напрямками, якщо лежить в цій площині.
В процесі трасування фотони вдаряються об різні поверхні моделі (сцени). Залежно від властивостей матеріалу, з ними можуть відбуватися різні події: фотон може відбитися розсіяно (тобто у випадковому напрямку), дзеркально, змінити напрямок при перетині поверхні або поглинутися. Рішення про те, яка з подій відбувається з фотоном, приймається на підставі властивостей матеріалу поверхні та статистичного методу методу Монте-Карло. Лише при розсіяному відображенні, запис про фотон зберігається в списку.
Побудова фотонної карти
На основі списку фотонів, отриманого після етапу трасування фотонів, проводиться побудова фотонної карти у вигляді деякої структури просторового розбиття. Цей етап допоміжний та служить для того, щоб на наступному кроці в довільній точці простору можна було знайти k найближчих фотонів. Якби фотони просто залишалися в списку, то k найближчих фотонів щоразу довелося б обчислювати переліченням, що частіше недоцільно. Для зберігання фотонів зазвичай використовується спеціалізований варіант К-вимірного дерева.
Збір освітленості
Після того, як фотонна карта побудована, і є можливість виконувати швидкий пошук у ній, починається етап збору освітленості в тих точках сцени, які роблять внесок у синтезоване зображення. Питання в тому, в яких точках збирати освітленість. Тут можливі різні варіанти. Найбільш реалістичний метод: використовувати розподілене трасування променів з віртуальної камери з тією відмінністю, що щоразу при ударі променя об поверхню необхідно виконати збір освітленості в цій точці: знайти k найближчих фотонів, підсумовувати їх енергію (в простому випадку) та поділити отриману енергію на площу поверхні сфери збору (радіус якої дорівнює відстані до найдальшого фотона). Завдяки цьому алгоритм динамічно вибирає радіус збору: там де фотонів багато, радіус збору маленький, де мало — великий. Таким чином зменшується рівень шуму для всього зображення.
Можна використовувати постійний радіус збору та шукати не k найближчих фотонів, а збирати висвітлення з усіх фотонів, що потрапили в сферу заданого радіусу. Однак такий метод дає більший шум зображення. На практиці фотонні карти застосовують для обчислення каустик та глобального освітлення, часто з використанням і фінального збору (див. нижче).
Для обчислення рівняння рендерингу безпосередньо метод фотонних карт зазвичай не застосовують, оскільки це потребує багато ресурсів (зазвичай необхідно як мінімум кілька мільйонів фотонів для отримання прийнятного результату), зображення виходить шумне та спостерігається характерний ефект — потемніння країв. Потемніння країв спостерігається через те, що на границях поверхні збір освітленості відбувається лише з половини сфери, а результат ділиться на площу поверхні всієї сфери. Щоб усунути шум і прибрати темні краї, необхідно застосовувати метод фінального збору або алгоритм побудови опуклої оболонки, який ще в кілька разів уповільнює швидкість фотонних карт.
Фінальний збір
При використанні цього методу самі фотонні карти використовуються лише для обчислення непрямої освітленості. Тіні, віддзеркалення та інші ефекти (крім каустик, для яких фінальний збір не обов'язковий) розраховуються за допомогою будь-якого іншого методу, наприклад, розподіленого трасування променів. Замість безпосереднього збору освітленості з фотонів в методі фінального збору із заданої точки випускається деяке число променів по півсфері, і освітленість збирається вже в тих місцях, куди потрапили промені. Це дозволяє значно знизити рівень шуму. Зазвичай потрібно трасувати менше променів, ніж в трасуванні шляхів.
Оптимізація
- Щоб уникнути випромінення непотрібних фотонів, початковий напрямок вихідних фотонів часто обмежується. Замість того, щоб просто відправляти фотони в випадкових напрямках, вони направляються в сторону відомого об'єкта, який є бажаним маніпулятором фотону, або фокусом, або розсіювачем світла. Є багато інших уточнень для алгоритму: наприклад, вибір кількості фотонів для відправки, а також де і в який шаблон їх відправити. Здавалося б, випромінення фотонів у більшій кількості в певному напрямку призведе до більш високої щільності фотонів, що будуть зберігатися в фотонній карті навколо позиції, в яку фотони потрапили. Вимірюючи цю щільність, значення опроміненості буде неточне. Це так, проте алгоритм, який використовується для обчислення, не залежить від оцінок опромінення.
- Для оптимізації якості зображення, зокрема, каустик, Йенсен рекомендує використовувати фільтр конуса. По суті, фільтр дає вагомий вклад фотонів в сяйві в залежності від того, як далеко вони знаходяться від променя на поверхні перетинів. Це може привести до більш чіткішого зображення.
- Відображення зображення простору фотонів досягає продуктивності в реальному часі шляхом обчислення першого і останнього розсіювання з використанням растеризатору графічного процесора.
Примітки
- Christensen, N. J.; Jensen, H. W. (2000), A Practical Guide to Global illumination and Photon Maps, Siggraph 2000
- Kato T., Saito J. (2002), "Kilauea": parallel global illumination renderer
Див. також
Посилання
- Photon mapping introduction from
- Siggraph Paper
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Metod fotonnih kart angl photon mapping odin z najbilsh universalnih ta poshirenih algoritmiv renderingu yakij virishuye zavdannya integruvannya rivnyannya renderingu Algoritm skladayetsya z troh chastin trasuvannya fotoniv pobudovi fotonnoyi karti i zboru osvitlenosti EfektiKaustika Kaustika svitla yake projshlo cherez fuzher Svitlo zalomlyuyetsya chi vidobrazhayetsya z prichini efektu sho nazivayetsya kaustika Yak pravilo vidno yak zalomlyuyutsya koncentrovani plyami svitla na prileglih poverhnyah Napriklad koli promeni svitla prohodyat cherez kelih voni zalomlyuyutsya i vizerunki svitla vidno na stoli Mozhna prostezhiti shlyahi okremih fotoniv v modeli de z yavlyatsya ci koncentrovani vidbliski Difuzne vidbittya svitla Difuzne vidbittya svitla proyavlyayetsya koli svitlo vid odnogo difuznogo ob yekta vidbivayetsya na inshij Metod fotonnih kart osoblivo vpravnij u povodzhenni z cim efektom tomu sho algoritm vidbivaye fotoni vid odniyeyi poverhni do inshoyi v zalezhnosti vid funkciyi dvonapravlenogo rozpodilu vidobrazhennya ciyeyi poverhni Difuzne vidbittya svitla vpershe bulo zmodelovane z vikoristannyam viprominennya Vidbivannya koloru ye prikladom difuznogo vidbittya svitla Pidpoverhneve rozsiyuvannya Dokladnishe Pidpoverhneve rozsiyuvannya Pidpoverhneve rozsiyuvannya ce efekt koli svitlo vhodit v material i rozsiyuyetsya persh nizh poglinayetsya abo vidbivayetsya v inshomu napryamku Pidpoverhneve rozsiyuvannya mozhe tochno buti zmodelovane z vikoristannyam fotonnih kart Cej metod staye povilnim dlya materialiv yaki silno rozsiyuyutsya en ye bilsh efektivnoyu v takih situaciyah AlgoritmTrasuvannya fotoniv Fotoni v comu metodi ce chastinki sho perenosyat deyaku diskretnu porciyu svitlovoyi energiyi Na pochatkovomu etapi fotoni viprominyuyutsya z dzherela svitla vidpovidno do rozpodilu svitlovoyi energiyi cogo dzherela Napriklad vidomo sho tochkove abo sferichne dzherelo svitla napriklad sonce vipuskaye svitlo izotropno v usih napryamkah Dzherela svitla u viglyadi ploskogo majdanchika mayut kosinusoyidalnij rozpodil sho nabuvaye maksimumu v napryamku yakij zbigayetsya z normallyu do ploshini dzherela i nul za napryamkami yaksho lezhit v cij ploshini V procesi trasuvannya fotoni vdaryayutsya ob rizni poverhni modeli sceni Zalezhno vid vlastivostej materialu z nimi mozhut vidbuvatisya rizni podiyi foton mozhe vidbitisya rozsiyano tobto u vipadkovomu napryamku dzerkalno zminiti napryamok pri peretini poverhni abo poglinutisya Rishennya pro te yaka z podij vidbuvayetsya z fotonom prijmayetsya na pidstavi vlastivostej materialu poverhni ta statistichnogo metodu metodu Monte Karlo Lishe pri rozsiyanomu vidobrazhenni zapis pro foton zberigayetsya v spisku Pobudova fotonnoyi karti Na osnovi spisku fotoniv otrimanogo pislya etapu trasuvannya fotoniv provoditsya pobudova fotonnoyi karti u viglyadi deyakoyi strukturi prostorovogo rozbittya Cej etap dopomizhnij ta sluzhit dlya togo shob na nastupnomu kroci v dovilnij tochci prostoru mozhna bulo znajti k najblizhchih fotoniv Yakbi fotoni prosto zalishalisya v spisku to k najblizhchih fotoniv shorazu dovelosya b obchislyuvati perelichennyam sho chastishe nedocilno Dlya zberigannya fotoniv zazvichaj vikoristovuyetsya specializovanij variant K vimirnogo dereva ostatochne zobrazhennyafotona karta Zbir osvitlenosti Pislya togo yak fotonna karta pobudovana i ye mozhlivist vikonuvati shvidkij poshuk u nij pochinayetsya etap zboru osvitlenosti v tih tochkah sceni yaki roblyat vnesok u sintezovane zobrazhennya Pitannya v tomu v yakih tochkah zbirati osvitlenist Tut mozhlivi rizni varianti Najbilsh realistichnij metod vikoristovuvati rozpodilene trasuvannya promeniv z virtualnoyi kameri z tiyeyu vidminnistyu sho shorazu pri udari promenya ob poverhnyu neobhidno vikonati zbir osvitlenosti v cij tochci znajti k najblizhchih fotoniv pidsumovuvati yih energiyu v prostomu vipadku ta podiliti otrimanu energiyu na ploshu poverhni sferi zboru radius yakoyi dorivnyuye vidstani do najdalshogo fotona Zavdyaki comu algoritm dinamichno vibiraye radius zboru tam de fotoniv bagato radius zboru malenkij de malo velikij Takim chinom zmenshuyetsya riven shumu dlya vsogo zobrazhennya Mozhna vikoristovuvati postijnij radius zboru ta shukati ne k najblizhchih fotoniv a zbirati visvitlennya z usih fotoniv sho potrapili v sferu zadanogo radiusu Odnak takij metod daye bilshij shum zobrazhennya Na praktici fotonni karti zastosovuyut dlya obchislennya kaustik ta globalnogo osvitlennya chasto z vikoristannyam i finalnogo zboru div nizhche Dlya obchislennya rivnyannya renderingu bezposeredno metod fotonnih kart zazvichaj ne zastosovuyut oskilki ce potrebuye bagato resursiv zazvichaj neobhidno yak minimum kilka miljoniv fotoniv dlya otrimannya prijnyatnogo rezultatu zobrazhennya vihodit shumne ta sposterigayetsya harakternij efekt potemninnya krayiv Potemninnya krayiv sposterigayetsya cherez te sho na granicyah poverhni zbir osvitlenosti vidbuvayetsya lishe z polovini sferi a rezultat dilitsya na ploshu poverhni vsiyeyi sferi Shob usunuti shum i pribrati temni krayi neobhidno zastosovuvati metod finalnogo zboru abo algoritm pobudovi opukloyi obolonki yakij she v kilka raziv upovilnyuye shvidkist fotonnih kart Finalnij zbir Pri vikoristanni cogo metodu sami fotonni karti vikoristovuyutsya lishe dlya obchislennya nepryamoyi osvitlenosti Tini viddzerkalennya ta inshi efekti krim kaustik dlya yakih finalnij zbir ne obov yazkovij rozrahovuyutsya za dopomogoyu bud yakogo inshogo metodu napriklad rozpodilenogo trasuvannya promeniv Zamist bezposerednogo zboru osvitlenosti z fotoniv v metodi finalnogo zboru iz zadanoyi tochki vipuskayetsya deyake chislo promeniv po pivsferi i osvitlenist zbirayetsya vzhe v tih miscyah kudi potrapili promeni Ce dozvolyaye znachno zniziti riven shumu Zazvichaj potribno trasuvati menshe promeniv nizh v trasuvanni shlyahiv OptimizaciyaShob uniknuti viprominennya nepotribnih fotoniv pochatkovij napryamok vihidnih fotoniv chasto obmezhuyetsya Zamist togo shob prosto vidpravlyati fotoni v vipadkovih napryamkah voni napravlyayutsya v storonu vidomogo ob yekta yakij ye bazhanim manipulyatorom fotonu abo fokusom abo rozsiyuvachem svitla Ye bagato inshih utochnen dlya algoritmu napriklad vibir kilkosti fotoniv dlya vidpravki a takozh de i v yakij shablon yih vidpraviti Zdavalosya b viprominennya fotoniv u bilshij kilkosti v pevnomu napryamku prizvede do bilsh visokoyi shilnosti fotoniv sho budut zberigatisya v fotonnij karti navkolo poziciyi v yaku fotoni potrapili Vimiryuyuchi cyu shilnist znachennya oprominenosti bude netochne Ce tak prote algoritm yakij vikoristovuyetsya dlya obchislennya ne zalezhit vid ocinok oprominennya Dlya optimizaciyi yakosti zobrazhennya zokrema kaustik Jensen rekomenduye vikoristovuvati filtr konusa Po suti filtr daye vagomij vklad fotoniv v syajvi v zalezhnosti vid togo yak daleko voni znahodyatsya vid promenya na poverhni peretiniv Ce mozhe privesti do bilsh chitkishogo zobrazhennya Vidobrazhennya zobrazhennya prostoru fotoniv dosyagaye produktivnosti v realnomu chasi shlyahom obchislennya pershogo i ostannogo rozsiyuvannya z vikoristannyam rasterizatoru grafichnogo procesora PrimitkiChristensen N J Jensen H W 2000 A Practical Guide to Global illumination and Photon Maps Siggraph 2000 Kato T Saito J 2002 Kilauea parallel global illumination rendererDiv takozhRendering Trasuvannya promeniv Globalne osvitlennyaPosilannyaISBN 1 56881 147 0 Photon mapping introduction from Siggraph Paper