1 / 19

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

millie
Télécharger la présentation

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. Tárgytér-módszerek: • Tárgytér: valódi távolságok és szögek (normál-vektor!) • SzKR: szem-(kamera-)KR • Nézetmező: csonkagúla • Közelsík (és távolsík) • Mélységvágás • Oldalvágás (2D)

  3. Képtér-módszerek: • Projektív transzformáció után • Nézetmező: téglatest • A vetítősugarak párhuzamosak • Távolságok és szögek torzulása • A Z-vel ||-ak összetartása • De: • A függőlegesség marad • A Z sorrend változatlan (a nézetmezőben) • A „hátranézők” képe hátranéző

  4. 6.5. Láthatóság, takarás • A vetítés irányából nézve látható/takart elemek • Drótváz: takart vonalak, vonal darabok eltávolítása • Árnyalt kép: egy képpontban látható felület-elem • A tárgytér csonkagúlájában, vagy • Az NPKR téglában • Időben, és/vagy tárolóban drága: minden lap takarhat minden (más) lapot

  5. Helyzetelemzés • Több darabra széteshet, akár többször is • Három sokszög kölcsönösen takarhatja egymást • Két konkáv sokszög kölcsönösen takarhatja egymást

  6. 1. A hátsó lapok ritkítása (egyelés) • A nézőponttól elforduló lapok kiszűrése, a tárgytérbenkb. 50%-ot elhagy • Egy laphoz vezető vetítősugár és a külső normális szöge • n = PiPi-1Pi+1Pi,(ha azórajárás szerint) • v = CPi • nv>0: a lap hátra néznv<0: a lap előre néz • (! A PT lap hátra!)

  7. A hátsó lapok ritkítása (egyelés) • A projektív transzformáció elrontja a szögeket • De a takart lapok az NPKR téglában valóban hátrafelé néznek • Az újra számolt normálvektor hátrafelé néz;z összetevője nz pozitív!

  8. 2. Festés a távolság szerinti sorrendben • A képelemeket legkisebb z értékük szerintcsökkenő sorrendbe rendezzük. • A legtávolabbi képelemet festjük először, • Majd előre haladva sorban • A mélységben átfedő elemeket előbb föl kell darabolni

  9. 3. A Z-puffer eljárás • Gyakran használják, hardverben is • Az NPKR téglában a vetületi kép: az XY vetület, a vetítősugarak képe párhuzamos, távolság: növekvő Z • Az XY keretben kijelöljük a képpontokat • Keressük mindegyikben az ott látható felület-elemet és annak színét • Az eredmény egy KPP-ben keletkezik

  10. A Z-puffer eljárás (f) • Paramétere: lapok listája az NPKR-ben, vágás után • Adatszerkezet: ZP[0..xmax,0..ymax]; z értékek FP[0..xmax,0..ymax]; lapokra mutatók • Kezdő értékek: ZP[i,j] = zmax, FP[i,j] = a háttér (függöny) –re mutató

  11. A Z-puffer eljárás (f) • foreach S in sokszögLista doforeach pixel [y,x] in S dobegin{1}z := az S sokszög z értéke (y,x)-ben {2}if z < ZP[y,x] thenbegin FP[y,x] := az S-re mutató;{az itt látható}ZP[y,x] := z;{ilyen messze van}end {if};end {foreach pixel}; • {1} az S lap XY dobozában lévő képpontok, amelyek S-ben tényleg benne vannak • {2} z interpolációja az élek mentén y-ban adott y mellett állandó lépésközzel x-ben

  12. A Z-puffer eljárás (f) - gyorsítások • A lapok befoglaló XY-dobozán belüli képpontok • A lapok rendezése min z szerint növekvően ha a következő lap min z-je > ZP[y,x] akkor nem kell folytatni !!! • Mozgó testek, vagy mozgó kamera: újra rendezni • De statikus háttérnek lehet külön ZP-je. • Térfelosztás; BSP • Hardverben is. (>= 4 MB tárolóval)

  13. A Z-puffer eljárás (f) – „kifordítva” • foreach pixel [y,x] doforeach S in sokszögLista dobegin{if min S(x,y) > ZP[x,y]then BREAK; }if pixel in S dobeginz := az S sokszög z értéke (y,x)-ben {2}if z < ZP[y,x] thenbeginFP[y,x] := az S-re mutató;ZP[y,x] := z;end {if z};end; {if pixel}end; {foreach S}{end foreach pixel}

  14. 4. Drótvázas kép, takart élek • Paraméter: lapok listája, élek listája • Adatszerkezet: szakaszok listája az élek több darabra eshetnek szét • Eredmény: látható szakaszok listája (kezd: NIL)

  15. Drótvázas kép, takart élek (f) • foreach él EinélekdobeginE -> szakaszok; {az E látható szakaszai maradnak itt}foreach lap Linlapokdobeginforeach szakasz SinszakaszokdoifS nem éle az L –nek thenifL és S dobozában átfedés thenbegin{1}S metszéspontjaiL határaival XY-ban {2}if metszés van thenbegin{3} mélység (z) ellenőrzése;S földarabolásaés helyettesítése a szakaszok-ban;end; {metszés van}end; {L takarhatja S-et}end; {foreach lapok}láthatók := láthatók + szakaszok; {lista beolvasztása}end; {foreach élek}

  16. Drótvázas kép, takart élek (f) • Az E él rákerül a szakaszok listára és itt darabolják a többi lapok • {1} A takarást XY vetületben. S és L doboza átfedi-e egymást • {2} Két szakasz metszéspontja:X=A+t*(B-A) és X=C+s*(D-C); 0<=s,t<=1 ? • {3} z dönti el, hogy melyik van előbbre • konvex lap egy szakaszból 0,1,2 látható darabot hagy • S-et helyettesítjük a látható darabjaival • És nézzük, hogy a többi lap mit csinál a szakaszokkal

  17. 5. Kétváltozós függvények képének láthatósága • Párhuzamos vetítés • „Kartonok” • Festés hátulról előre

  18. Kétváltozós függvények képének láthatósága (f) • Torz négyszögháló • Átlókkal háromszögek • Két karton között: háromszög-sáv • Festés sávonként; hátulról előre • (Folytonos árnyalás; később.)

  19. 6. BSP • Folyt.köv.

More Related