Praćenje zrake (grafika)
Ovaj članak ili neki od njegovih odlomaka nije dovoljno potkrijepljen izvorima (literatura, veb-sajtovi ili drugi izvori). |
Ray Tracing je jednostavna i moćna surface rendering (u slobodnom prevodu rendering površine) tehnika koja se u računarskoj grafici koristi za dobijanje foto-realističnih slika, ali za procesiranje zahtijeva mnogo vremena. Ray Tracing predstavlja globalizaciju Ray Casting procedure. Postupak se zasniva na praćenju zraka svjetlosti (engl. rays) i njihovoj interakciji sa objektima u sceni u cilju računanja globalnog osvjetljenja scene.
Ray Tracing Algoritam
[uredi | uredi izvor]Za perspektivnu projekciju pogleda scene, za svaku vidljivu tačku, željeli bismo odrediti koliko svjetlosti dolazi na nju sa drugih objekata u sceni. Sa jedne referentne tačke projekcije se šalje zraka koju, nakon što je pogodila prvi vidljivi objekat u sceni, nastavljamo da bacamo uokolo, skupljajući pri interakciji sa drugim objektima scene različite vrijednosti intenziteta svijetlosti. Nakon što zraka pogodi površinu prvog objekta moguće je odrediti njegovu iluminaciju (osvjetljenje) na tački dodira. Potrebni parametri za izračunavanje iluminacije na tački dodira su: osobine površine, relativna pozicija površine u sceni, boja, pozicija i karakteristike izvora svjetlosti te pozicija i orijentacija ravni gledanja. Tri nova tipa zraka mogu da se generišu nakon prvog kontakta sa objektom: refleksija (engl. reflection), refrakcija (engl. refraction) i sjena (engl. shadow). Tip koji se generiše zavisi od osobina površine objekta kojeg je zraka pogodila. Reflektovana ili refraktovana zraka, nazvana još i secondary ray (druga zraka) putuje dalje dok ne stupi u dodir sa sljedećim objektom ili izvorom svjetlosti. Doprinosi intezitatu piksela se skupljaju na objektima interakcije.
Ray Tracing počiva na zakonima geometrijske optike. Zrake svjetlosti sa površina u sceni proizilaze, tj. emituju se u svim smjerovima, i neke od njih će proći kroz piksel pozicije na raster displeju( projekcionoj površini). Zraka koje se emituju može biti beskonačno mnogo. Zato, da bi odredili doprinose intenzitetu piksela, sa piksel pozicije pratimo zraku svjetlosti nazad u scenu. U osnovnom Ray Tracing algoritmu, jedna povratna zraka se generira za svaki pojedni piksel.
Ovakav postupak omogućuje dovoljno kvalitetnu tehniku za dobijanje globalnih efekata refleksije i transmisije, samim tim i realističnog prikaza scene.