1 / 29

6. A 3D grafika alapjai

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 összeállítása, leképezés és vágás (6.1-6.4 jórészt a 3. fejezet megfelelő részeit idézik föl.) 6.5. Láthatóság, takarás

livi
Download Presentation

6. A 3D grafika alapjai

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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 összeállítása, leképezés és vágás (6.1-6.4 jórészt a 3. fejezet megfelelő részeit idézik föl.) 6.5. Láthatóság, takarás 6.6. A fénysugár-követési módszer 6.7. Árnyalás, a képpontok színe 6.8. Irodalom 6.9. Egyebek

  2. 6.1.Bevezetés: a 3D grafikus szerelőszalag fölépítése • AP, GM, GRASZ (pl. OpenGL) • Szerelőszalag: alapműveletek sorozata- Képelemek összeállítása:- Leképezés a VKR-ből a KKR-be,.- Vágás: a kívül eső képrészek elhagyása.- Láthatóság-takarás. - Árnyalás és textúra.- Utókezelés: különböző módszerek az elkészült kép minőségének javítására. • KR: VKR, SKR, TKR, SZKR, NPKR, KKR • Gyorsítás: dobozolás, térfelosztás, rendezés, koherencia

  3. 6.2. Térbeli alakzatok képe • Térbeli látás: tanult, két szemmel • Fénykép, TV: „egy szemmel” – ezt is megtanultuk • A térbeliség mozzanatai (depth-cues)- testek takarása- megvilágítás- árnyékok, a fény visszaverődése- a méretek látszólagos távolsági csökkenése- párhuzamosok látszólagos távolsági összetartása- levegő perspektíva: színeltolódás, kontúrok elmosódása- megszokott jelek (féknyomok az úton)- kinetikus mélységhatás: a távolabbi lassabban mozog • Ezeket utánozzuk; mennél jobban, annál drágábban

  4. Emberi látás és a képernyő • Látómezőnk: 120x100 fok, ovális • Képernyőnk (50 cm-re): 40x30 fok tájkép: egy szűk ablakon át nézünk a világra • A szem fölbontása: 1 szögperc • A képernyő raszter-távolsága: 0,25 mm, 2 szögperc

  5. 6.3. Színterek geometrikus kódolása • Leírónyelv (eseti teszt-leírás, vagy pl. VRML) teszt-adatok, archiválás, adatcsere • Adatszerkezet (eseti, vagy GMR) dinamikus építés dinamikus elhalás Poligon: különböző méretű cellák poligon: n, Pi, n, ni, doboz, P,Q,R, … • GRASZ-hívások sorozata (pl. OpenGL)

  6. A képet meghatározó adatok • A testek geometriájaés a felületek anyaga (színe) • Nézet (kamera) • Megvilágítás (fényforrások) • Időbeli változások

  7. Térbeli „képelemek” • 2 helyett 3 koordináta • háromszög-sáv • négyszögháló

  8. A szerelőszalag fölépítése és műveletei ·Alkalmazási Program, Geometriai Model GRAfikus alapSZoftver: rajzolás alapműveletek sorozata: szerelőszalag képelemek előkészítése a VKR-ben ·leképezés a tárgytérből a képtérbe, ·képkivágás;a képkereten kívüli képrészek elhagyása ·láthatóság-takarás:takart elemek elhagyása (3D) ·raszter-konverzió: a képpontok színe (képpont-puffer)

  9. A szerelőszalag műveletei 1. Képelemek előkészítése geometriai elemből képelem(ek), elhelyezés a VKR-ben2. Leképezés a VKR-ből a KKR-be 3. Képkivágás a kereten kívüli részek elhagyása4. Láthatóság-takarás a takart elemek elhagyása (főleg 3D-ben)5. Raszter-konverzió az elemet szemléltető képpontok előállítása, a képpontok színe, a képpont a KPP-be

  10. 6.4. Szesza 1: Képelemek összeállítása • SKR -> VKR - hasonlósági transzformáció: TSR - összetett tárgyak hierarchiája • Geometriai elemekből képelemek

  11. A képelemek előkészítése • Rajzoláskor: az APbejárja a geometriai modellt, kiválasztja az elemeket, és átadja a GRASZ-nak. • A GRASZ egyenként átveszi az elemeket és ráteszi a szerelőszalagra • A sze.-sza. első művelete: a képelemek előkészítésegeometriai elem helyett képelem(ek) és a képelemek elhelyezése: SKR -> VKR (eltolás, forgatás, léptékezés)

  12. H: háromszög alakú luk, saját SKR-jében K: kereszt alak, saját SKR-jében K’: lukas kereszt SKR-jében: K’=K+SiNiH   S: sáv széleivel (V) és lukas keresztekkel:S = V + Sj MjK’ = V + Sj Mj( K + Si NiH ) Mj és Ni: transzformációk.

  13. A szerelőszalag műveletei 1. Képelemek előkészítése2. Leképezés3. Képkivágás4. Láthatóság-takarás5. Raszter-konverzió

  14. 6.4. Szesza 2: Leképezés • Középpontos- vagy párhuzamos vetítés • Elvileg: VKR -> KKR • Gyakran: VKR -> NPKR NPKR-ben láthatóság-takarás • A fénysugár-követésnél: a képernyő rasztert vetítjük a SZKR-be és ott számolunk.

  15. Leképezés a tárgytérből a képtérbe A tárgyak leképezése a tárgytérből a képtérbe Koordináta-transzformáció A pontok helyvektorának szorzása a leképezés mátrixával: P’ = M·P

  16. 2D Leképezés: • Nézetmező (keret), tárgytér:GsetWCSFrame(Kba,Kjf:Gpoint2); • Képmező, képtérGsetSCSViewPort(Mba,Mjf:Gpixel); • Leképezés:GmapWCStoSCS(P:Gpoint2; P1:Gpixel);

  17. 3D Leképezés: • Párhuzamos, vagyközéppontos vetítés • VKR->KKR3 • Nézetmező: csonkagúla  3D képmező: téglatest • Kép: síkvetület a téglatest alapjára • Előtte: takarások (láthatóság) a téglatestben • (5-6. Fejezet)

  18. A szerelőszalag műveletei 1. Képelemek előkészítése2. Leképezés3. Képkivágás4. Láthatóság-takarás5. Raszter-konverzió

  19. 6.4. Szesza 3: Vágás • Nézetmező: csonkagúla: Cyrus-Beck-3D • NPKR téglatest: Cohen-Sutherland-3D • Mélységvágás: Közelsík és távolsík • Oldalvágás: x-y-ban; síkbeli feladat

  20. Képkivágás A kép keretén kívül eső képrészek elhagyása. Vágó-tartomány (mire, mivel vágunk?): téglalap (téglatest), vagy félsík (féltér) A vágott elemek (mit vágunk?): minden képelem típusra más-más vágó eljárás! Legtöbbször a képtérben, de lehet a tárgytérben is.

  21. Normálvektoros szakasz vágás a síkban(a Cyrus-Beck eljárás) • Adott: a PQ szakasz és • egy félsík h határegyenese;R pontjával és n normálisával. • Keressük a PQ szakasznak afélsíkba eső részét (PM)

  22. sg(P) = n(P-R) (előjel!) • Észrevétel:sg(P) > 0, ha P a félsíkban = 0, ha P a határon< 0, ha P kívül van. • Ha sg(P) és sg(Q) >= 0:mindkettő belül, a szakasz „triviálisan látható”Ha sg(P) és sg(Q) < 0:mindkettő kívül, a szakasz „triviálisan eldobható” • Különben: „vágni kell”: M = a h és PQ metszéspontja

  23. Az M pont kiszámítása: • Az M pont rajta van a határon:(M-R)n = 0, azaz:(mx - rx)nx + (my - ry)ny = 0 • Az M rajta van a PQ szakaszon:M = P + t (Q - P), valamilyen t paraméterrel, azaz:mx = px + t (qx – px) ésmy = py + t (qy – py);. • Három egyenlet, három ismeretlen: t, mx, my;megoldás mindig van (ha nem „triviális” a helyzet)

  24. Megjegyzések: • Tetszőleges konvex n-szögre:mindegyik határra, egymásután. • Tengelyállású téglalapra: 4xa P és Q sarok kétszer-kétszer,az n vektor: (0,1), illetve (1,0) • A térben: szakasz vágása féltérre;(M-R)n = 0 skalár-egyenlet ésM = P + t (P – Q) három skalár-egyenletet ad. • A térben is: téglatestre és tetszőleges konvex sokszöglapra (poliéderre) alkalmazható.

  25. Cohen-Sutherland szakasz-vágás a síkban • Adott: a PQ szakasz és • Egy téglalap b, a, j, f (bal-alul-jobb-felül) határaival • Keressük a PQ szakasz téglalapba eső részét.

  26. A végpontok BAJF-kódja: • BAJF(P)=1000, ha balra kívül, van 0110, ha alul és jobbra kinn 0000, ha belül van. • Belül BAJF(P)=0a sarkokban 2 bit 1-es, másutt 1 bit 1-es. • BAJF(P) : négy összehasonlítás • „Triviális vizsgálatok”:ha BAJF(P)=0 és BAJF(Q)=0: „triviálisan belül”ha BAJF(P) & BAJF(Q)  0 : „triviálisan eldobható” • Különben „vágni” kell

  27. Térbeli elemek vágása • Normálvektoros vágás: féltér, téglatest, konvex soklap (poliéder)például: a nézetmező csonkagúlája (6. Fejezet) • Cohen-Sutherland:téglatest, 27 mező, BAJFEH-kód • Mélység-vágás: a Z tengelyre merőleges „közelsík” és „távolsík” • Oldal-vágás: XY irányban; síkbeli vetületben

  28. 6.5.- … a Szesza folytatása • Láthatóság-takarás; a képpontokban látható felület-elemek • Árnyalás és textúra; a képpontok színe. • Utókezelés: az elkészült kép minőségének javítására.

More Related