4.6. A Fénysugár-követés módszere (ray-tracing) Mi látható a képernyőn, egy-egy képpontban ? (4.4.LÁTHATÓSÁG) A képponton át a szembe jutó fénysugár melyik.

Slides:



Advertisements
Hasonló előadás
L ÁTHATÓSÁG MEGHATÁROZÁSA tavaszi félév.
Advertisements

Derékszögű hármasszöglet és távolságmérő Összeállította: ifj. Zátonyi Sándor, Békéscsaba, 2008.
Készitette:Bota Tamás Czumbel István
A színek számítógépes ábrázolásának elve
Multimédiás segédanyag
Lencsék és tükrök képalkotásai
NEMZETI TANKÖNYVKIADÓ Panoráma sorozat
Árnyalás – a felületi pontok színe A tárgyak felületi pontjainak színezése A fényviszonyok szerint.
 Árnyalási egyenlet  Saját emisszió  Adott irányú visszaverődés.
Sugárkövetés: ray-casting, ray-tracing
Sugárkövetés: ray-casting, ray-tracing Szirmay-Kalos László.
3D képszintézis fizikai alapmodellje
Egy pontból széttartó sugarakat újra összegyűjteni egy pontba
Homorú tükör.
GRAFIKUS PRIMITÍVEK KITÖLTÉSE
Grafika a programban Készítette: Pető László. Bevezetés Valójában nem a célobjektumra rajzolunk, hanem annak festővászon területére (canvas). Csak olyan.
3. Vetületi ábrázolások számítási eljárásai
Ma sok mindenre fény derül! (Optika)
TÉTELEK Info_tech_2012. Simon Béláné. 1. TÉTEL 1.a. A digitális számítógép és a logikai áramkör kapcsolata (6.4.1.) 1.b. Az ÉS logikai áramkörnek adja.
Hullámok visszaverődése
Nevezetes algoritmusok Beszúrás Van egy n-1 elemű rendezett tömbünk. Be akarunk szúrni egy n-edik elemet. Egyik lehetőség, hogy végigszaladunk a tömbön,
6. A 3D grafika alapjai 6.1. A 3D szerelőszalag fölépítése
2. Koordináta-rendszerek és transzformációk
6. A 3D grafika alapjai 6.1. A 3D szerelőszalag fölépítése
3. Vetületi ábrázolások számítási eljárásai
Számítógépes Grafika Megvilágítás Programtervező informatikus (esti)‏
Fény terjedése.
Készítette: Fábián Henrietta 8.b 2009.
Tömbök és programozási tételek
Rendezések és szövegkezelő függvények
-fényvisszaverődés -fénytörés -leképező eszközök
TARTALOM Optikai fogalmak Síktükör képalkotása Homorú tükrök nevezetes sugármenetei Homorú tükör képalkotása Domború tükrök nevezetes sugármenetei Domború.
Matematika feladatlap a 8. évfolyamosok számára
NEMZETI TANKÖNYVKIADÓ Panoráma sorozat
Sugárkövetés: ray-casting, ray-tracing
Vektorok különbsége e-x = [ex-xx ey-xy ez-xz] e e-x x szempozíció
Sugárkövetés: ray-casting, ray-tracing
3D képszintézis fizikai alapmodellje Szirmay-Kalos László Science is either physics or stamp collecting. Rutherford.
Árnyalás – a felületi pontok színe A tárgyak felületi pontjainak színezése A fényviszonyok szerint.
4.4. Láthatóság - takarás A látványban takart részek elhagyása vagy a látható részek kiválasztása.
3. Vetületi ábrázolások számítási eljárásai
Képek feldolgozása 7. osztály.
Készítette:Kelemen Luca
Árnyalás – a felületi pontok színe A tárgyak felületi pontjainak színezése A fényviszonyok szerint.
2.2. Az egyenes és a sík egyenlete
1 Mivel foglalkozunk a laborokon? 7. hét: Do-Loop-Until Do-Until-Looptömbök Function 7. hét: Do-Loop-Until és Do-Until-Loop ciklusok. Egy indexes tömbök,
Bevezetés a számítógépi grafikába 2. Paraméteres görbék Paraméteres görbe: 2D-ben: paraméter: általában: kikötések: legyen folytonos legyen folytonosan.
Raszter-konverzió A képelem látványát alkotó képpontok előállítása Egyenes szakasz képpontjai Sokszög lemez kitöltése.
Máté: Orvosi képfeldolgozás12. előadás1 Regisztrációs probléma Geometriai viszony meghatározása képek között. Megnevezései: kép regisztráció (image registration),
1 Mivel foglalkoz(t)unk a laborokon? 1.Labor: Word alapok Excel alapok: Excel alapok: Cellahivatkozás, munkalapfüggvény, diagram varázsló, trendvonal 2.
4. A grafikus szerelőszalag - áttekintés 4.0. Bevezetés.
Máté: Orvosi képfeldolgozás12. előadás1 Három dimenziós adatok megjelenítése Metszeti képek transzverzális, frontális, szagittális, ferde. Felület síkba.
4.6. A Fénysugár-követés módszere (ray-tracing) Mi látható a képernyőn, egy-egy képpontjában ? És az ott milyen színű ? (4.7. Árnyalás)
Fénytan - összefoglalás
6. A 3D grafika alapjai 6.1. A 3D szerelőszalag fölépítése 6.2. Térbeli alakzatok képe 6.3. Térbeli képelemek és modell-adatszerkezetek 6.4. Képelemek.
Fényvisszaverődés síktükörről
A színes képek ábrázolása. A szín A szín egy érzet, amely az agy reakciója a fényre. Az elektromágneses sugárzás emberi szem által látható tartományba.
FÉNYTAN A fény tulajdonságai.
3D grafika összefoglalás
Vizualizáció és képszintézis
6. A 3D grafika alapjai 6.1. A 3D szerelőszalag fölépítése
6. A 3D grafika alapjai 6.1. A 3D szerelőszalag fölépítése
Árnyalás - a képpontok színe.
Árnyékszerkesztés alapjai
Közönséges (a) és lineárisan poláros (b) fény (Niggli P. után)
6. A 3D grafika alapjai 6.1. A 3D szerelőszalag fölépítése
Bevezetés a programozásba Algoritmikus gondolkodás
Sugármetszés implicit szintfelülettel
Dijkstra algoritmusa: legrövidebb utak
Dijkstra algoritmusa: legrövidebb utak
Előadás másolata:

4.6. A Fénysugár-követés módszere (ray-tracing) Mi látható a képernyőn, egy-egy képpontban ? (4.4.LÁTHATÓSÁG) A képponton át a szembe jutó fénysugár melyik tárgyról jön ? És az ott milyen színű ? (4.7. ÁRNYALÁS)

2

Tárgytér-módszerek: Tárgytér: valódi távolságok és szögek (N 0 ) SzKR: szem-(kamera-)KR Nézetmező: csonkagúla Közelsík (és távolsík) Mélységvágás (k,t) Oldalvágás (2D)

A fénysugár-követés módszere Fénysugár-követés (ray-tracing) A tárgytérben (SZKR) minden K i j képpontban: ott mi látszik? (melyik felület-elem?) és ott milyen színárnyalat látszik? kiszámítása „megvilágítási módszerrel” „Valószerű képek” (realistic images) egyik módszere fényforrások, árnyékok, fény-visszaverődés, átlátszó testek

Az FSK eljárás váza Előtte: VKR  SzKR (tárgytér), vágás (jelöléssel) Keret kijelölése; raszter: K i j képpontok „fénysugarak:” C  K i j X = O + t · (K i j - O) = t · K i j ; O = (0,0,0) a legközelebbi felület? (ciklus a laplistán végig) C i j = {r, g, b}, megvilágítás C 0 ; C i : visszaverődés, árnyékok, átlátszó felületek

A kép kerete A szemtől (O) d (~ 50 cm) távolságra a  b (~30  40 cm) oldalú K i j képpontok: i = 0,1,…,umax, j = 0,1,…,vmax x i = - a / 2 + du y j = - b / 2 + dv for j := 0 to vmax do for i := 0 to umax do begin … end; A fénysugár: X = t · K i j ; t > 1

A ciklus magja: // minden i és j-re (azaz: minden képpontra): sugár : „ X = t · K i j ” ; zxy := zmax; lapxy := háttérlap; // a háttér följegyzése foreach felületelem do begin „P(x,y,z, u,v,t) := döféspont”; // -ot keresünk if (van döféspont) then if z < zxy then begin // közelebb van? zxy : = z; lapxy := lap; // a f.elem följegyzése end; // if-if end; // foreach lap putPixel(i,j, „a lapxy színe a zxy pontban”); // árnyalás

A metszéspontok kisszámítása Időben kritikus: minden képpontnál - minden lapra Felület-elem: háromszög, gömb, másodrendű paraméteres felület, stb. Sugár és háromszög metszéspontja: a sugár: X = t · K i j a háromszög: X = Q + u · (P - Q) + v · (R - Q) metszéspont a PQR síkkal: { u, v, t } if ( 0  u, v, u + v  1 ) then // a háromszögön belül Időben kritikus  gyorsítás kell

Gyorsítások foreach y foreach x foreach lap … „vágás”: a kereten kívüliek megjelölése Testek-lapok dobozolása lapok rendezése legkisebb z szerint Szabályos (reguláris) térháló Nyolcasfa BSP-fa

Megjegyzések Láthatóság: (i,j)  a K i j -ben látható háromszög, (x, y, z) putPixel(i,j, „a lapxy színe a zxy pontban”); // árnyalás az árnyalási modell szerint: F i j (lap, x, y, z): a képpont színe első közelítés „Láthatóság”: egy FF látható-e az (x.y.z)-ből !

Rekurzív FSK „Első ütközés”: a látott pont, színe: a közvetlen megvilágításból A testek között fény-visszaverődés (és átlátszó testeken fény áthaladás) Milyen fény esik a látott pontba másokról visszaverten? (A testen áteresztve?)

Rekurzív FSK és fénytörés Az ideális visszaverődés törvénye: (LN) szög = (SN) szög; egy síkban A fénytörés törvénye: sin  / sin  = n k / n b ; egy síkban s 1 : elsődleges sugár: a néző iránya s 2v : másodlagos, visszavert sugár s 2a másodlagos, áteresztett sugár; Jöhet-e fény s 2v és s 2a felől Jöhet-e fény ezek felől? Csak véges számú visszaverést számolunk Csak az ideális visszaverési irányt számoljuk

Olvasmány, a rekurzív fsk egy eljárásának vázlata:

for j := 0 to ymax do for i := 0 to xmax do begin s1 := „P= t · K ij ”; szin := FSK ( s1 ); putPixel(i,j, szin); end; {for i,j} Color function FSK( s1:Vector3D ); var mpt: Point3D; ksz: Color; begin (mpt,felület) := aLegközelebbi(s1,felületlista); if (nincs mpt) then FSK := háttérSzín; else begin ksz := megvilágításiModell(felület,mpt); FSK := ksz; end; {if-else: van mpt} end; {FSK function}

Color function rFSK(kpt:Point3D; s1:Vector3D; mélység:Integer); var mpt: Point3D; s2v,s2á:Vector3D; ksz,vsz,ász: Color; begin if mélység > korlát then rFSK := Fekete; else begin (mpt,felület) := aLegközelebbi(s1,felületlista); if (nincs mpt) then szín:=háttérSzín; else begin ksz := megvilágításiModell(felület,mpt); s2v := tükrözés(s1,felület,mpt); vsz := rFSK(metszéspt,s2v,mélység+1); s2t := megtörés(s1,felület, mpt); ász := rFSK(mpt,s2t,mélység+1) rFSK{szín} := kever(ksz,ksúly, vsz,vsúly, ász,ásúly); end; {if-else: van mpt} end; {if-else: mélység<korlát} end; {rFSK function}