230 likes | 309 Views
Learn about shading and coloring surface points, lighting effects, and illumination models in 3D graphics, including physics of light, local and global illumination models. Understand reflection and refraction of light on surfaces.
E N D
4.7. Árnyalás –a felületi pontok színe • A tárgyak felületi pontjainak színezése • A fényviszonyok szerint
árnyalás - megvilágítás • Előzmények: egy-egy képpontban: mi látszik • Árnyalás:C(u,v) := {r, g, b} helyüktől, állásuktól, anyaguktól, és fényviszonyoktól függően • Megvilágítási modell ( illumination model ): a fényviszonyok fizikai-matematikai modellje
Összefoglalva Lokális megvilágítási modellünkben (egyszerűsítések!)a képernyő egy pontjában látott szín: a fény visszaverődése szemünkbeC(u,v) = SL [ ILr(u,v) ] + Iar (u,v) = SL [ ILdr(u,v) + ILrs(u,v) ] + Iar (u,v) = . . . 3
Az árnyalás kiinduló adatai Adatszerkezet: testek – lapok – csúcspontok A képernyő minden (u,v) képpontjában ismert: - F[u,v]; melyik lap látszik ott (mutató a listára), - Z[u,v]: a látott pont (x,y,z) koordinátája A sokszög (poligon) adatcella: A, B, C (, …) csúcspontok n; illetve: nA, nB, nC normális (a,b,c,d): a sík-egyenletének együtthatói felületi jellemzők (szín, textúra), befoglaló doboz, rendezés, térfelosztás 4
A fény fizikája • A fény elektromágneses hullám (útján terjedő energia) • A (látható) fény: 380 l 760 nm (n = 1/l) l760 nm : infravörös (vörös „alatti”)l380 nm: ultraibolya (ibolyán túli) • A legtöbb fény: keverék-fény; spektrum: az energia eloszlásalszerint
A fény fizikája • A látható színek érzete (majdnem minden színé) előállítható három alapszín keverékével. • Modellünk közelítése: minden fényt három összetevő erősségével: { r, g, b } vagy { c, m, y}
Egy felületi pontban … • Egy pontban látott fény eredete lehet: fény kibocsátás (emisszió) fény visszaverés (reflexió) fény áteresztés (transzmisszió) (és fény elnyelés)
Egy felület megvilágítása • A felület egy pontjában a megvilágítás erőssége: az időegység alatt, egységnyi felületre eső energia • Egy P pontban az L ff -ból nyert megvilágítás:I m L (P) = I L cos f = I L ( N0 L0 )
A „tökéletes tükör törvénye” • Az ideális fényvisszaverődés törvénye: - (i) „beesési szög = visszaverődési szög”:(N0L0) = (N0 S0) - (ii) N0, L0, S0 egy síkban vannak
A fénytörés törvénye • A Snelius-Descartes törvény . . .
A visszavert fény (színe) • Beeső = visszavert + elnyelt (energia) • A visszavert energia: I v L = k v I f L ; a k v fvv tényező; 0 < k v< 1; de kv(l) !! • Modellünkben: - az L fényforrás fénye: I f L = { r L, g L, b L } - a felület fvv tényezője: k v = { k v r, k v g, k v b } - a visszavert fény: I v L = { r v L, g v L, b v L }; • Számítása: r v L = k v r r L , g v L = k v g g L, b v L = k v r b L
Megvilágítási modellek • Lokális megvilágítási modell: - egy-egy felületi pontban - a többitől függetlenül vizsgáljuk a visszaverődését • Globális megvilágítási modell: - egy zárt térrészben vizsgáljuk -az összes fényjelenséget együtt • Az utóbbi „drága” (l. pl. Szirmay-Kalos könyve)
Egy lokális megvilágítási modell - 1 • A képernyőn, mint ablakon át nézzük a tárgyakat • A szemből egy-egy képponton át: „fordított fénysugarak” • Ez döfi az ott látott felület
Egy lokális megvilágítási modell- 3 • A fényforrások fényének visszaverődése - tökéletes tükrös felületen: I r s - tökéletesen matt felületen: I r d - „tökéletlen” felületen: I r d + I r s • A környezetben eloszlott (ambiens) fény visszaverődése): Ir a • A szemünkbe visszavert fény: I r a + ( I r d+ I r s ) • Egy felület jellemző adatai: ka = {kar, kag, kab} ambiens visszaverési tényező, kd = {kdr, kdg, kdb} szórt visszaverési tényező, ks és n: tükrös visszaverési tényező és fényességi kitevő
A környezetben eloszlott (ambiens) fény • Eloszlott (körülvevő, szórt, ambiens) fény (ambiens = körülvevő, környezeti) • Ködös napon látható fényforrás nélkül is látunk • Feltételezés: minden irányban egyenlő erősségű és egyformán verődik vissza (a szembe is) • Visszaverődésének modellje:Car = ka Ia = {kar ra, kag ga, kab ba} • Nélküle: „villanófényes fénykép” • Csak vele: a térérzet hiánya
A fényforrások fényének visszaverődése • Nincs „tökéletes felület” • Modellünkben: minden felületre kétféle fényvisszaverés: az ff fényének szórt (diffúz) visszaverése, éstükrös (spekuláris) visszaverése (a kettő együtt < mint a beeső fény)
Szórt (diffúz) fény-visszaverés • A „tökéletesen matt” felület minden irányban egyformán veri vissza • A felület szórt visszaverési tényezője kd = { kd r, kd g, kd b} Ird(u,v) = kd If L== kd IL cos a == { kd r rL cos a , kd g gL cos a , kd b bL cos a };cos a = (N0L0)
Tükrös (specular) fény-visszverődés • Az L irányból jövő fény legerősebben S irányba verődik vissza, ettől eltérő irányokban fokozatosan csökken. • A felület tükrös visszaverési tényezője ks = { ks r, ks g, ks b }; gyakran: ks r= ks g= ks b • Az irányfüggő visszaverést cosn b-val modellezve:Ir s = ks If L cosn(b) = ks IL cos a cosn(b) = {ksr rL cos a cosn(b),ksggL cos a cosn(b) ksbbL cos a cosn(b) };cos a = (N0L0), cos(b)= (E0S0)
Összefoglalva • Lokális megvilágítási modellünkben (egyszerűsítések!)a képernyő egy pontjában látott fény (szín):C(u,v) = = Ira (u,v) + SL[ IrdL(u,v) +IrsL(u,v) ] = = kaIa + SL[ kd IL cos(a) + ks IL cos(a)cosn(b) ] = = kaIa + SL[ IL (N0L0) ( kd + ks (E0S0) n ) ] = = {karIar + SL[ ILr(N0L0) ( kdr + ksr (E0S0)n ) ],kagIag+ SL[ ILg(N0L0) ( kdg+ ksg (E0S0)n ) ],kabIab+ SL[ ILb(N0L0) ( kdb+ ksb (E0S0)n ) ]}
Függvény lineáris interpolációja síklapokon • Görbült felület közelítése sokszögekkel • Számított Ni vektor minden csúcsban: a lap-normálisok súlyozott átlaga • Gouraud- interpoláció: a csúcsokban számolt szín interpolációja az éleken, és a pásztákon • Phong-interpoláció: - az N vektor interpolációja az éleken és a pásztákon, - a szín kiszámítása minden képpontban. - Ez lassabb, de szebb.
Az élek simítása • Felületek közelítése sokszöglapokkal • Az éleknél színugrás; látszanak a síklapok! • A Gouraoud és Phong árnyalásezt megszünteti!
Finomítások… • Továbbiak: textúra levegő perspektíva alakos fényforrások globális megvilágítási modell stb.