Metoda praćenja zrake (engl. ray tracing)
Marija Arki i Luka Majstorović
Što je metoda praćenja zrake?
Praćenje zraka (eng.
ray tracing) korištenje je puta kojim svjetlost prolazi kroz piksele kako bi stvorila sliku.
Ono simulira efekt svjetlosnih zraka na objekte na koje nailaze. Slike stvorene praćenjem zraka obično
su bolje kvalitete i imaju viši stupanj realizma, ali potrebno je puno više vremena kako bi se napravile te zahtijevaju
više računalne snage. Stoga, praćenje zraka najčešće se koristi za stvaranje nepokretnih slika.
Na koji način radi?
Softver
ray tracer simulira put pojedinačnih svjetlosnih zraka od virtualnog izvora svjetlosti do virtualne leće kamere.
Virtualna svjetlosna zraka može proći kroz volumen atmosfere i imati kontakt s površinama materijala (metal, staklo, voda i sl.).
Praćenje zraka može generirati vrlo realistične slike, ali je računski
skupo, stoga i vrlo sporo. Na primjer, svaki kadar računalno animiranog filma
Monsters University (Pixar, 2013.),
zahtijevao je 29 sati za renderiranje. Pri 24 sličica u sekundi,
110-minutni film ima približno 160.000 sličica.
Pixar je koristio masivni
Render farm kako bi ga dovršio za nekoliko mjeseci.
Praćenje zraka u prirodi
U prirodi, izvor svjetlosti emitira zraku svjetlosti koja na kraju putuju do površine koja ju prekida. Ovu "zraku"
možemo zamisliti kao tok fotona koji putuje istim putem. U savršenom vakuumu ova zraka bi bila ravna linija. U
stvarnosti se s ovom svjetlosnom zrakom može dogoditi bilo koja kombinacija triju stvari: apsorpcija, refleksija i
lom. Površina može reflektirati cijelu ili dio svjetlosne zrake, u jednom ili više smjerova. Također, može apsorbirati
dio svjetlosne zrake, što rezultira gubitkom intenziteta reflektirane ili lomljene svjetlosti. Ako površina ima bilo
kakva transparentna svojstva, ona lomi dio svjetlosnog snopa u sebe, dok dio apsorbira i eventualno promijeni boju.
Neke od zraka putuju na takav način da pogađaju naše oko, uzrokujući da vidimo
scenu i tako doprinose konačnoj prikazanoj slici. Pokušaj simulacije ovog stvarnog procesa praćenja svjetlosnih zraka
pomoću računala može se smatrati besmislenim, jer bi samo mali djelić zraka u sceni zapravo dospio do oka.
Vrste praćenja zrake
1. Praćenje zraka prema naprijed (eng. Forward Ray Tracing)
Praćenje zraka prema naprijed prati svjetlosne čestice (fotone) od izvora svjetlosti do objekta. Iako praćenje zraka
prema naprijed može najtočnije odrediti boju svakog objekta, vrlo je neučinkovito. Razlog tome je što mnoge zrake
iz izvora svjetlosti nikada ne prolaze kroz ravninu gledanja u oko. Praćenje svake svjetlosne zrake od izvora svjetlosti
prema dolje znači da mnoge zrake neće doprinijeti konačnoj slici kako se vidi okom. Praćenje zraka prema naprijed poznato
je i kao praćenje svjetlosnih zraka i fotonsko praćenje.
2. Praćenje zraka prema natrag (eng. Backward Ray Tracing)
Kako bi praćenje zraka bilo učinkovitije, uvodi se metoda praćenja zraka unatrag. U praćenju zraka unatrag, zraka se
kreira u oku, prolazi kroz ravninu pogleda i dalje u svijet. Prvi objekt na koji očna zraka udari je objekt koji će
biti vidljiv s te točke gledišta. Nakon što
tracer zraka dopusti toj svjetlosnoj zraki da se odbija, otkriva točnu
boju i sjenčanje te točke u ravnini prikaza i prikazuje je na odgovarajućem pikselu na zaslonu monitora računala.
Traženje zraka unatrag poznato je i kao praćenje zraka u očima.
3. Hibridno praćenje zraka (eng. Hybrid Ray Tracing)
Budući da i praćenje zraka prema naprijed i praćenje zraka
unatrag imaju svoje nedostatke, nedavna istraživanja pokušavaju razviti hibridna rješenja koja će uskladiti brzinu
i točnost. U ovim hibridnim rješenjima izvode se samo određene razine praćenja zraka prema naprijed. Algoritam
bilježi podatke, a zatim nastavlja s praćenjem zraka unatrag. Završno bojenje scene uzima u obzir i izračune
praćenja zraka unatrag i proračuna praćenja zraka prema naprijed.