Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

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)

Hasonló előadás


Az előadások a következő témára: "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)"— Előadás másolata:

1 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)

2 2

3 Tárgytér-módszer: 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 Oldalvágás (2D)

4

5 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: melyik felület-elem látható? Az ott látott színárnyalat 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, stb.

6 Az FSK eljárás váza Előtte: VKR  SzKR (tárgytér), vágás (jelöléssel) Keret, raszter: K i j képpontok Minden képpontra: O - K i j „fénysugár”: X = O + t · (K i j - O) = t · K i j ; O = (0,0,0) minden felülettel: döféspont C i j = {r, g, b}, megvilágítás C 0 ; C i : visszaverődés, árnyékok, átlátszó felületek

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

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

9 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, 1 – u - v  1 ) then // a háromszögön belül Időben kritikus  gyorsítás kell

10 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

11 Megjegyzések Láthatóság: (i,j)  a K i j -ben látható felület (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 !

12 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?)

13 Rekurzív FSK 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 s1: elsődleges sugár: a néző iránya s2v: másodlagos, visszavert sugár s2a másodlagos, áteresztett sugár; Jöhet-e fény s2v és s2a felől Csak véges számú visszaverést számolunk Csak az ideális visszaverési irányt számoljuk

14


Letölteni ppt "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)"

Hasonló előadás


Google Hirdetések