Radiatsiya (kompyuter grafikasi) - Radiosity (computer graphics)

RRV bilan namoyish etilgan sahna [1] (OpenGL asosida radiosity rendererning oddiy bajarilishi) 79-takrorlash.

Yilda 3D kompyuter grafikasi, radiosity ning qo'llanilishi cheklangan element usuli hal qilish uchun tenglamani ko'rsatish yuzalar bo'lgan sahnalar uchun yorug'likni tarqoq tarzda aks ettiradi. Aksincha ko'rsatish foydalanadigan usullar Monte-Karlo algoritmlari (kabi yo'lni kuzatish ) barcha turdagi yorug'lik yo'llarini boshqaradigan odatdagi radiosity faqat yorug'lik manbasini qoldiradigan va ko'zga urilishidan oldin bir necha marta (ehtimol nol) aks etadigan yo'llarni ("LD * E" kodi bilan ifodalanadi) hisobga oladi. Radiatsiya a global yoritish algoritm sirtga tushadigan yoritish nafaqat yorug'lik manbalaridan, balki yorug'likni aks ettiruvchi boshqa sirtlardan ham keladi degan ma'noda. Radiatsiya nuqtai nazarga bog'liq emas, bu hisob-kitoblarni ko'paytiradi, ammo ularni barcha nuqtai nazarlar uchun foydali qiladi.

Radiatsiya usullari dastlab 1950 yilda muhandislik sohasida ishlab chiqilgan issiqlik uzatish. Keyinchalik ular 1984 yilda tadqiqotchilar tomonidan kompyuter grafikalarini taqdim etish muammosi uchun maxsus takomillashtirildi Kornell universiteti[2] va Xirosima universiteti.[3]

Taniqli tijorat radiositali dvigatellari tomonidan yoritilgan Geomerika (shu jumladan o'yinlar uchun ishlatiladi Jang maydoni 3 va Tezlik kerak: Yugurish ); 3ds Maks; shakl • Z; LightWave 3D va Elektr tasvirlarni animatsiya tizimi.

Vizual xususiyatlar

Soyali umbra bo'lmagan standart to'g'ridan-to'g'ri yorug'lik va soyali umbra bilan radioaktivlik o'rtasidagi farq

Radiosozlik hisob-kitoblarini ko'rsatish jarayoniga qo'shilishi, ko'pincha real hodisalarni taqlid qilganligi sababli, tayyor sahnaga realizmning qo'shimcha elementini beradi. Oddiy xona manzarasini ko'rib chiqing.

Chapdagi rasm odatdagidek berilgan to'g'ridan-to'g'ri yoritgich. Lar bor uch xil Rassom tomonidan aniq tanlangan va joylashtirilgan ushbu sahnadagi yorug'lik yoritgichlari haqiqiy yoritishni yaratish uchun: spotli yoritish soyalar bilan (erga nur sochishi uchun derazadan tashqariga joylashtirilgan), atrofni yoritish (u holda xonaning to'g'ridan-to'g'ri yorug'lik manbai bilan yoritilmagan biron bir qismi umuman qorong'i bo'ladi) va ko'p yo'nalishli yoritish soyasiz (atrof-muhit yoritilishining tekisligini kamaytirish uchun).

O'ngdagi rasm a yordamida ko'rsatildi radiosity algoritmi. Faqatgina bor bitta yorug'lik manbai: deraza tashqarisida joylashgan osmon tasviri. Farq belgilangan. Xona yorug'lik bilan porlaydi. Yumshoq soyalar erga ko'rinadi va nozik yorug'lik effektlari xona atrofida seziladi. Bundan tashqari, gilamchadan qizil rang kulrang devorlarga qon quyilib, ularga biroz iliq ko'rinishga ega bo'ldi. Ushbu effektlarning hech biri rassom tomonidan tanlanmagan yoki ishlab chiqilmagan.

Radiosity algoritmiga umumiy nuqtai

Ko'rsatiladigan sahna sirtlari har biri bir yoki bir nechta kichik sirtlarga bo'linadi (yamaqlar) .A ko'rish omili (shuningdek, nomi bilan tanilgan shakl omili) har bir yamoq juftligi uchun hisoblanadi; bu yamoqlarning bir-birini qanchalik yaxshi ko'rishlarini tavsiflovchi koeffitsient. Yamalar bir-biridan uzoqda yoki bir-biriga nisbatan qiyalik burchaklarida yo'naltirilgan bo'lib, ko'rish koeffitsientlari kichikroq bo'ladi. Agar boshqa yamaqlar yo'lda bo'lsa, okklyuziyaning qisman yoki to'liq bo'lishiga qarab ko'rish koeffitsienti kamayadi yoki nolga teng bo'ladi.

Ko'rish omillari chiziqli tenglamalar tizimida koeffitsient sifatida ishlatiladi. Ushbu tizimning echimi diffuz o'zaro ta'sirlarni va yumshoq soyalarni hisobga olgan holda har bir yamoqning radiositesini yoki yorqinligini beradi.

Progressive radiosity tizimni pog'ona darajalariga mos keladigan oraliq radiosity qiymatlari bilan iterativ ravishda hal qiladi. Ya'ni, har bir takrorlashdan so'ng, biz sahnaning bir engil sakrashdan keyin, ikkita pasdan, ikkita sakrashdan va hokazolardan keyin qanday ko'rinishini bilamiz. Bu sahnani interaktiv oldindan ko'rishni olish uchun foydalidir. Bundan tashqari, foydalanuvchi takroriy hisoblashni hisoblashning yaqinlashishini kutish o'rniga, rasm yetarlicha yaxshi ko'rinishga ega bo'lgandan keyin to'xtata oladi.

Algoritm takrorlanganda, sahnaga yorug'lik oqayotganini ko'rish mumkin, chunki bir nechta pog'ona hisoblangan. Shaxsiy yamaqlar devorlarda va polda to'rtburchaklar shaklida ko'rinadi.

Radiositlik tenglamasini echishning yana bir keng tarqalgan usuli - bu "tortishish radiosity", bu har bir qadamda eng ko'p energiya bilan yamoqdan nurni "otish" bilan radiosity tenglamasini iterativ ravishda hal qiladi. Birinchi o'tishdan so'ng, faqat yorug'lik chiqaradigan yamoqni to'g'ridan-to'g'ri ko'rish mumkin bo'lgan qismlar yoritiladi. Ikkinchi pasdan so'ng, sahna atrofida yorug'lik sakray boshlagach, ko'proq yamaqlar yoritiladi. Sahna yanada yorqinroq o'sishda davom etadi va oxir-oqibat barqaror holatga keladi.

Matematik shakllantirish

Asosiy radiosity usuli nazariyasida o'z asosiga ega termal nurlanish, chunki radiosity sirtlar o'rtasida o'tkaziladigan yorug'lik energiyasini hisoblashga bog'liq. Hisob-kitoblarni soddalashtirish uchun usul barcha tarqalishni deb hisoblaydi mukammal tarqoq. Sirtlar odatda to'rtburchak yoki uchburchak shaklida ajratiladi elementlar ustiga qismli polinom funktsiyasi aniqlanadi.

Ushbu buzilishdan so'ng, yorug'lik energiyasini uzatish miqdorini aks ettiruvchi patchning ma'lum yansıtıcılığı yordamida hisoblash mumkin. ko'rish omili ikkita yamoqning Bu o'lchovsiz miqdor ikkita yamoqning geometrik yo'nalishidan hisoblab chiqilgan va uni birinchi patchning ikkinchisi bilan qoplanadigan mumkin bo'lgan umumiy chiqindilar maydonining qismi deb hisoblash mumkin.

To'g'ri, radiosity B bu diskret vaqt oralig'ida yamoq yuzasini tark etadigan maydon birligi uchun energiya va chiqarilgan va aks ettirilgan energiyaning kombinatsiyasi:

qaerda:

  • B (x)men dAmen kichik maydonni tark etgan umumiy energiyaAmen bir nuqta atrofida x.
  • E (x)men dAmen chiqarilgan energiya.
  • r (x) nuqtaning aks ettirish qobiliyati bo'lib, har bir birlik uchun tushadigan energiyani ko'paytiradigan (boshqa yamoqlardan keladigan jami energiya) ko'paytirilib, birlik birligi uchun aks ettirilgan energiyani beradi.
  • S integral o'zgaruvchisi ekanligini bildiradi x ' sahnadagi barcha sirtlarni bosib o'tadi
  • r orasidagi masofa x va x '
  • θx va θx ' chiziqning birlashishi orasidagi burchaklar x va x ' va sirtga normal bo'lgan vektorlar x va x ' navbati bilan.
  • Vis (x,x ' ) ko'rish funktsiyasi bo'lib, agar ikkita nuqta bo'lsa 1 ga teng x va x ' bir-biridan ko'rinadi, agar yo'q bo'lsa 0.
Geometrik shakl koeffitsienti (yoki "prognoz qilingan qattiq burchak") Fij.

Fij elementni loyihalash orqali olish mumkin Aj yarim sharning yuzasiga, so'ngra o'z navbatida tekislikdagi qiziqish nuqtasi atrofida birlik doirasiga proyeksiyalang. Amen. Keyinchalik form koeffitsienti ushbu proyeksiya bilan qamrab olingan birlik doirasining ulushiga teng.

Shakl omillari o'zaro munosabatlarga bo'ysunadi AmenFij = AjFji

Agar sirtlar cheklangan miqdordagi tekislik yamoqlari bilan taxmin qilingan bo'lsa, ularning har biri doimiy radiositaga ega bo'ladi Bmen va aks ettirish rmen, yuqoridagi tenglama diskret radiosity tenglamasini beradi,

qayerda Fij geometrikdir ko'rish omili radiatsiya chiqishi uchun j va yamoqqa urish men.

Keyinchalik bu tenglama har bir yamoqqa qo'llanilishi mumkin. Tenglama monoxromatikdir, shuning uchun rangli radiostansiyani ko'rsatish zarur ranglarning har biri uchun hisoblashni talab qiladi.

Yechish usullari

Vektorli echimni berish uchun tenglamani matritsa tenglamasi sifatida rasmiy ravishda echish mumkin:

Bu to'g'ridan-to'g'ri B uchun to'liq "cheksiz zıplama" echimini beradi. Shu bilan birga matritsali echim o'lchovlarini hisoblash uchun hisob-kitoblar soni n3, qayerda n yamalar soni. Bu juda katta qiymatlar uchun taqiqlanadi n.

Buning o'rniga, yuqoridagi bir pog'onali yangilanish formulasini qayta-qayta qo'llash orqali tenglamani iterativ ravishda osonroq hal qilish mumkin. Rasmiy ravishda, bu matritsa tenglamasining yechimi Jakobi takrorlanishi. Yansıtıcılıklar rmen 1 dan kam bo'lsa, ushbu sxema tezda birlashadi, odatda oqilona echim topish uchun faqat bir nechta takrorlashni talab qiladi. Matritsa tenglamalari echimlari uchun boshqa standart takroriy usullardan ham foydalanish mumkin, masalan Gauss-Zeydel usuli, bu erda har bir yamoq uchun yangilangan qiymatlar hisoblash paytida ularni hisoblash bilanoq foydalaniladi, aksincha har bir tozalashning oxirida sinxron ravishda yangilanadi. Yechimni har bir qabul qiluvchi yamoqqa emas, balki har bir yangilash uchun asosiy tashqi tsiklga o'z navbatida har bir yuboruvchi element ustida yineleyerek o'zgartirish mumkin. Bu sifatida tanilgan otish dan farqli ravishda algoritmning varianti yig'ilish variant. Ko'rish omilining o'zaro ta'siridan foydalanib, Amen Fij = Aj Fji, yangilanish tenglamasini ko'rish koeffitsienti nuqtai nazaridan ham qayta yozish mumkin Fji har bir kishi tomonidan ko'rilgan yuborish yamoq Aj:

Bu ba'zida "quvvat" formulasi deb ham ataladi, chunki hozir u yangilanayotgan har bir elementning to'liq uzatiladigan kuchi hisoblanadi, aksincha uning radioaktivligi.

The ko'rish omili Fij o'zini bir necha usul bilan hisoblash mumkin. Dastlabki usullardan foydalanilgan a yarim shar (o'ylab topilgan, ikkinchi sirt proektsiyalangan birinchi sirt ustida joylashgan xayoliy kub Maykl F. Koen va Donald P. Grinberg 1985 yilda). Gemikubning yuzasi pikselga o'xshash kvadratlarga bo'linib, ularning har biri uchun ko'rish koeffitsientini analitik ravishda osonlikcha hisoblash mumkin. To'liq form faktorni har bir pikselga o'xshash kvadratlarning hissasini qo'shib taxmin qilish mumkin. Ko'pburchaklar ko'rinishini aniqlashning standart usullaridan moslashtirilishi mumkin bo'lgan yarim sharning ustiga proektsiyasi, shuningdek, orqada qolganlarni qisman yashirgan intervalgacha yamaqlar muammosini hal qildi.

Ammo bularning barchasi juda yaxshi edi hisoblash yo'li bilan qimmat, chunki ideal shakl omillari mumkin bo'lgan har bir juft yamoq uchun olinishi kerak, bu esa a ga olib keladi kvadratik yamalar sonining ko'payishi bilan hisoblashning ko'payishi. Yordamida biroz kamaytirilishi mumkin ikkilik bo'shliqni ajratish daraxti murakkab sahnalarda boshqalardan to'liq yashiringanligini aniqlash uchun sarflanadigan vaqtni kamaytirish; ammo shunga qaramay, form-faktorni aniqlash uchun sarflangan vaqt hali ham ko'lamini o'lchaydi n jurnal n. Yangi usullarga adaptiv integratsiya kiradi.[4]

Namuna olish yondashuvlari

Shakl omillari Fij o'zlari aslida yangilanish tenglamalarining ikkalasida ham aniq kerak emas; intensity umumiy intensivlikni taxmin qilish uchun hamj Fij Bj butun nuqtai nazardan yig'ilgan va kuchni qanday baholash uchun Aj Bj nurlanish taqsimlanadi. Buning o'rniga, ushbu yangilanishlarni hech qachon form-faktorlarni aniq hisoblab chiqmasdan namuna olish usullari bilan baholash mumkin. 1990-yillarning o'rtalaridan boshlab, bunday namuna olish yondashuvlari, asosan radioaktivlikni amaliy hisoblashda asosan qo'llaniladigan usullar bo'lib kelgan.

Yig'ilgan intensivlikni birlik doirasidagi namunalar to'plamini hosil qilib, ularni yarim sharga ko'tarib, so'ngra ushbu yo'nalishga kiradigan nur kelib chiqqan elementning radioaktivligi nima ekanligini ko'rish orqali baholash mumkin. Umumiy yig'ilgan intensivlikning taxminiy qiymati faqat har bir nur tomonidan kashf etilgan radiositalarning o'rtacha qiymatidir. Xuddi shu tarzda, quvvatni shakllantirishda quvvatni xuddi shu tarzda nurlantiruvchi elementdan nurlar to'plamini hosil qilish va har bir element o'rtasida taqsimlanadigan quvvatni nur tarqalishi bilan taqsimlash mumkin.

Bu, asosan, a yo'lni kuzatish dastur tarqoq aks ettirishning bir qadamini kuzatishda namuna oladi; yoki yorug'lik manbasini xaritalash oldinga siljiganida bir yo'naltirilgan diffuz aks ettirish bosqichiga erishish uchun ikki yo'nalishli nurlarni aniqlash dasturi namuna oladi. Shuning uchun namuna olish yondashuvi ma'lum darajada ikkita texnikaning yaqinlashuvini anglatadi, asosiy farq shundaki, radiosity texnikasi shunchaki oqimning aksi emas, balki sahnadagi barcha sirtlarning nurlanishining aniq xaritasini yaratishga qaratilgan. ko'rinish.

Hisoblash vaqtini qisqartirish

Garchi uning asosiy ko'rinishida radiosite geometriya qo'shilgan (sirt va yamaqlar) bilan hisoblash vaqtining kvadratik o'sishiga ega deb taxmin qilingan bo'lsa ham, bunday bo'lishi shart emas. Radiosity muammosi a-ni ko'rsatish muammosi sifatida qayta ifodalanishi mumkin to'qima xaritasi sahna. Bunday holda, hisoblash vaqti yamalar soniga qarab chiziqli ravishda ko'payadi (kabi murakkab masalalarni e'tiborsiz qoldiring) kesh foydalanish).

Radiositni yaxshilagan tasvirlar uchun tijorat ishtiyoqidan so'ng, ammo radiositni tezkor hisoblash standartlashtirilishidan oldin, ko'plab me'morlar va grafika rassomlari erkin deb ataladigan usulni qo'llashdi yolg'on radiosity. To'qimalarining xaritalarini burchaklarga, bo'g'inlarga va chuqurchalarga mos keladigan joylarini qoraytirib, ularni o'z-o'zini yoritish yoki diffuz xaritalash orqali qo'llash orqali standart skaner rendereri yordamida radioaktivlikka o'xshash yamoqlarning o'zaro ta'siri yaratilishi mumkin. atrofdagi oklüzyon ).

Statik, oldindan hisoblangan radiosity real vaqt rejimida orqali namoyish etilishi mumkin Lightmaps standartga ega bo'lgan hozirgi statsionar kompyuterlarda grafik tezlashtirish apparati.

Afzalliklari

Ning zamonaviy ko'rinishi Yuta choynagi. Ushbu sahnada barcha tarqalgan yorug'lik uchun radiatsiya ishlatilgan.

Radiosity algoritmining afzalliklaridan biri shundaki, uni tushuntirish va amalga oshirish nisbatan sodda. Bu uni talabalarga global yoritish algoritmlari to'g'risida ma'lumot berish uchun foydali algoritmga aylantiradi. Oddiy to'g'ridan-to'g'ri yorituvchi allaqachon deyarli barcha algoritmlarni o'z ichiga oladi (istiqbolli transformatsiyalar, to'qimalarni xaritalash, yashirin sirtni olib tashlash ) radiositni amalga oshirish uchun talab qilinadi. Ushbu algoritmni tushunish yoki amalga oshirish uchun matematikani kuchli tushunish talab qilinmaydi[iqtibos kerak ].

Cheklovlar

Odatda radiosozlik usullari LD * E shakldagi yorug'lik yo'llarini, ya'ni yorug'lik manbasidan boshlanib, ko'zga etib borguncha ko'p tarqaladigan pog'onalarni hisobga oladi. Kabi boshqa yorug'lik effektlarini birlashtirish uchun bir nechta yondashuvlar mavjud bo'lsa-da ko'zoynakli[5] va porloq[6] to'liq aks ettirish tenglamasini echish uchun aks ettirishlar, radioaktivlikka asoslangan usullar odatda qo'llanilmaydi.

Asosiy radiosity, shuningdek, ko'rinishning keskin o'zgarishini (masalan, qattiq qirrali soyalarni) hal qilishda muammolarga duch kelmoqda, chunki qismli doimiy elementlarga qo'pol, muntazam diskretizatsiya mos keladi past o'tkazgich qutisi filtri fazoviy domen. To'xtatishni to'xtatish [1] aqlli diskretizatsiyani yaratish uchun ko'rish hodisalari haqidagi bilimlardan foydalanadi.

Terminologiya bo'yicha chalkashlik

Radiatsiya, ehtimol keng tarqalgan foydalanishda diffuz bilvosita yoritishni hisobga olgan birinchi ko'rsatish algoritmi edi. Kabi ilgari ko'rsatish algoritmlari, masalan Oq uslubda nurni kuzatish aks ettirish, sinish va soyalar kabi effektlarni hisoblash qobiliyatiga ega edi, ammo juda global hodisalar bo'lishiga qaramay, bu effektlar odatda "deb nomlanmaganglobal yoritish. "Natijada, atamalar"diffuz interrefleksiya "va" radiosity "ikkalasi ham mashhur" global yorug'lik "bilan chalkashib ketdi til bilan aytganda. Biroq, uchtasi alohida tushunchalardir.

Kompyuter grafikasi nuqtai nazaridan radiosity usuli radiosity usulidan kelib chiqadi (va asosan bir xil) issiqlik uzatish. Shu nuqtai nazardan, radiosity bu sirtni tark etadigan umumiy nurlanish oqimi (ham aks ettirilgan, ham qaytadan nurlanish); bu ba'zan ham ma'lum yorqin chiqish. Yuzaki haroratni emas, balki radiositni hisoblash radiosozlik usulining asosiy jihati hisoblanadi chiziqli matritsa muammoga nisbatan qo'llaniladigan usullar.

Shuningdek qarang

Adabiyotlar

  1. ^ Dudka, Komil. "RRV - Radiosity Renderer va Visualizer". dudka.cz. Olingan 1 fevral 2013.
  2. ^ "Sindi Goral, Kennet E. Torrance, Donald P. Greenberg va B. Battaile,Tarqoq yuzalar orasidagi yorug'likning o'zaro ta'sirini modellashtirish ",, Kompyuter grafikasi, Jild 18, № 3. (PDF )
  3. ^ "T. Nishita, E. Nakamae,Ko'p o'lchovli skanerlash usuli yordamida 3 o'lchamli ob'ektlarni tekis qirralar bilan yarim tonnada aks ettirish ",,IPSJ jurnali, 25-jild, №5, 703-711,1984-betlar (yapon tilida) (PDF )
  4. ^ G Uolton, To'siq qilingan ko'rish omillarini adaptiv integratsiya yordamida hisoblash, NIST hisoboti NISTIR-6925, Shuningdek qarang http://view3d.sourceforge.net/
  5. ^ Uolles, Jon R.; Koen, Maykl F.; Greenberg, Donald P. (1987 yil avgust). "Renderlash tenglamasining ikki yo'lli echimi: nurlarni izlash va nurlanish usullarini sintezi". SIGGRAPH hisoblash. Grafik. 21 (4): 311–320. doi:10.1145/37402.37438. ISSN  0097-8930.
  6. ^ "Yaltiroq global yoritish uchun klasterlash". Arxivlandi asl nusxasi 2006-10-12 kunlari. Olingan 2006-12-29.

Qo'shimcha o'qish

Tashqi havolalar

  • RADical, Parag Chaudhuri tomonidan (GLUTRAD dan Kolbek tomonidan kengaytirilgan OpenGL tezlashuvi bilan progressiv radiosit algoritmini tortish va saralash variantini amalga oshirish)
  • Radiosity Renderer va Visualizer (radiosity rendererni sodda tarzda amalga oshirish OpenGL )
  • Ma'rifat (Kompyuter o'yinlari dasturlari uchun real vaqtda radiositni ta'minlaydigan litsenziyalangan dasturiy ta'minot kodi. Buyuk Britaniya kompaniyasi tomonidan ishlab chiqilgan Geomerika )