A számítógépes grafika elméleti alapjai / 57239148 / 1. A számítógépes grafika elméleti alapjai



Hasonló dokumentumok
(Solid modeling, Geometric modeling) Testmodell: egy létező vagy elképzelt objektum digitális reprezentációja.

Láthatósági kérdések

Számítógépes Grafika SZIE YMÉK

A színérzetünk három összetevőre bontható:

OPTIKA. Szín. Dr. Seres István

Görbe- és felületmodellezés. Szplájnok Felületmodellezés

OPTIKA. Hullámoptika Színek, szem működése. Dr. Seres István

A digitális képfeldolgozás alapjai

Színek

Számítógépes grafika. Készítette: Farkas Ildikó 2006.Január 12.

SZE, Doktori Iskola. Számítógépes grafikai algoritmusok. Összeállította: Dr. Gáspár Csaba. Felületmegjelenítés

Bevezetés a színek elméletébe és a fényképezéssel kapcsolatos fogalmak

Bevezetés a színek elméletébe és a fényképezéssel kapcsolatos fogalmak

1. Fénysugár követő és festő algoritmus (3p) fénysugárkövető módszer Festő algoritmus: 2. Fények, fény, fény az opengl-ben, anyagtulajdonság (12pt)

OPTIKA. Hullámoptika Diszperzió, interferencia. Dr. Seres István

Hajder Levente 2017/2018. II. félév

Tartalom. Tartalom. Anyagok Fényforrás modellek. Hajder Levente Fényvisszaverési modellek. Színmodellek. 2017/2018. II.

Termék modell. Definíció:

x = cos αx sin αy y = sin αx + cos αy 2. Mi a X/Y/Z tengely körüli forgatás transzformációs mátrixa 3D-ben?

Geometriai modellezés. Szécsi László

Alapfogalmak folytatás

Fénytechnika. A szem, a látás és a színes látás. Dr. Wenzel Klára. egyetemi magántanár Budapesti Műszaki és Gazdaságtudományi Egyetem

B8. A CIE 1931 SZÍNINGER-MÉRŐ RENDSZER ISMERTETÉSE;

Képszerkesztés elméleti feladatainak kérdései és válaszai

Transzformációk. Grafikus játékok fejlesztése Szécsi László t05-transform

Képszerkesztés elméleti kérdések

FÉNYTAN A FÉNY TULAJDONSÁGAI 1. Sorold fel milyen hatásait ismered a napfénynek! 2. Hogyan tisztelték és minek nevezték az ókori egyiptomiak a Napot?

Információ megjelenítés Számítógépes ábrázolás. Dr. Iványi Péter

1. Bevezetés 1. Köszönetnyilvánítás A számítógépes játékfejlesztésről 3

I. Elméleti kérdések és feladatok

Geometria. a. Alapfogalmak: pont, egyenes, vonal, sík, tér (Az alapfogalamakat nem definiáljuk)

3D számítógépes geometria és alakzatrekonstrukció

Maga a tématerület így nagyon nagy. A fények pontos fizikai szimulációja kimondottan számításigényes

EÖTVÖS LORÁND SZAKKÖZÉP- ÉS SZAKISKOLA TANÍTÁST SEGÍTŐ OKTATÁSI ANYAGOK MÉRÉS TANTÁRGY

Számítógépes grafika

A számítógépes grafika alapjai kurzus, vizsgatételek és tankönyvi referenciák 2014

OPTIKA. Fotometria. Dr. Seres István

Területi primitívek: Zárt görbék által határolt területek (pl. kör, ellipszis, poligon) b) Minden belső pont kirajzolásával (kitöltött)

Világítástechnika I. VEMIVIB544V A fény és tulajdonságai, fotometriai alapfogalmak és színmérés

Renderelés megjelenésmódok, fények, anyagjellemzők

Hajder Levente 2016/2017.


Transzformációk. Szécsi László

A SZÍNEKRŐL III. RÉSZ A CIE színrendszer

OPTIKA. Fotometria. Dr. Seres István

Térbeli transzformációk, a tér leképezése síkra

Tartalom. Hajder Levente 2016/2017. I. félév

1.1 Emisszió, reflexió, transzmisszió

Tartalom. Tartalom. Hajder Levente 2018/2019. I. félév

Területi primitívek: Zárt görbék által határolt területek (pl. kör, ellipszis, poligon)

SZÍNES KÉPEK FELDOLGOZÁSA

Területi primitívek: Zárt görbék által határolt területek (pl. kör, ellipszis, poligon)

A tér lineáris leképezései síkra

Tipikus megvilágítás szintek a szabadban (délben egy napfényes napon) FISHER LED

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Geometria III.

Feladatok. Tervek alapján látvány terv készítése. Irodai munka Test modellezés. Létező objektum számítógépes modelljének elkészítése

Számítógépes Grafika mintafeladatok

Hajder Levente 2018/2019. II. félév

Képfeldolgozás Szegmentálás Osztályozás Képfelismerés Térbeli rekonstrukció

Dr. Nagy Balázs Vince D428

Tömörítés, kép ábrázolás A tömörítés célja: hogy információt kisebb helyen lehessen tárolni (ill. gyorsabban lehessen kommunikációs csatornán átvinni

OPTIKA. Geometriai optika. Snellius Descartes-törvény szeptember 19. FIZIKA TÁVOKTATÁS

A Vonallánc készlet parancsai lehetővé teszik vonalláncok és sokszögek rajzolását.

VÍZUÁLIS OPTIKA. A színlátás. Dr Wenzel Klára. egyetemi magántanár Budapesti Műszaki és Gazdaságtudományi Egyetem Budapest, 2018

1.4 fejezet. RGB színrendszerek

Összeadó színkeverés

Síklapú testek. Gúlák, hasábok Metszésük egyenessel, síkkal

A geometriai optika. Fizika május 25. Rezgések és hullámok. Fizika 11. (Rezgések és hullámok) A geometriai optika május 25.

Egyenes mert nincs se kezdő se végpontja

Látható felszín algoritmusok

14. Fotórealisztikus megjelenítés

Követelmény a 7. évfolyamon félévkor matematikából

Számítógépes grafika

4. Felületek Forgásfelületek. Felületek 1. Legyen adott egy paramétersíkbeli T tartomány. A paramétersíkot az u és v koordinátatengelyekkel

Szilárd testek sugárzása

16. tétel Egybevágósági transzformációk. Konvex sokszögek tulajdonságai, szimmetrikus sokszögek

3D - geometriai modellezés, alakzatrekonstrukció, nyomtatás

Lengyelné Dr. Szilágyi Szilvia április 7.

Az Ampère-Maxwell-féle gerjesztési törvény

Klár Gergely 2010/2011. tavaszi félév

11. előadás. Konvex poliéderek

A Planck-eloszlásokról és a fényforrások ekvivalens színhőmérséklet -eiről Erbeszkorn Lajos

1. ábra Tükrös visszaverődés 2. ábra Szórt visszaverődés 3. ábra Gombostű kísérlet

Benapozásvédelmi eszközök komplex jellemzése

Lencse típusok Sík domború 2x Homorúan domború Síkhomorú 2x homorú domb. Homorú

Gráfelméleti alapfogalmak-1

Koordináta-geometria feladatok (emelt szint)

Diszkréten mintavételezett függvények

Képszerkesztés. Letölthető mintafeladatok gyakorláshoz: Minta teszt 1 Minta teszt 2. A modul célja

1. előadás. Lineáris algebra numerikus módszerei. Hibaszámítás Számábrázolás Kerekítés, levágás Klasszikus hibaanalízis Abszolút hiba Relatív hiba

Geometria 1 normál szint

6. Függvények. Legyen függvény és nem üreshalmaz. A függvényt az f K-ra való kiterjesztésének

Az informatika kulcsfogalmai

Geometria 1 normál szint

22. GRÁFOK ÁBRÁZOLÁSA

Infobionika ROBOTIKA. X. Előadás. Robot manipulátorok II. Direkt és inverz kinematika. Készült a HEFOP P /1.0 projekt keretében

Plakátok, részecskerendszerek. Szécsi László

Optika és Relativitáselmélet II. BsC fizikus hallgatóknak

EGY ABLAK - GEOMETRIAI PROBLÉMA

Átírás:

A számítógépes grafika elméleti alapjai / 57239148 / 1 A számítógépes grafika elméleti alapjai

A számítógépes grafika elméleti alapjai / 57239148 / 2 Az emberi látás Az ember számára a fény az elektromágneses sugárzás azon része, melyet a szem érzékelni képes és amelynek hatására agyában képérzet alakul ki. Biológiai alapok: Az emberi szemben kb. 126 millió fényérzékelő receptor található, amelyek az elektromágneses sugárzást felfogva a keletkezett ingerületet az idegrendszer útján ( a szemben kb. 1 millió idegszál található ) az agyba továbbítják. A retinában elhelyezkedő receptorok ú.n. csapok ( kb. 6 millió ) és pálcikák ( kb. 120 millió ) lehetnek. A pálcikák ( rodes ) a fényerősséget és a világosságot érzékelik, a csapok ( cones ) viszont az ember színlátásában játszanak fontos szerepet. Az ember a fényt a 380 nm-es ultraibolya és a 780 nm-es infravörös hullámhossz tartományában képes érzékelni. Ezen belül a színeket a szemben található P típusú ( vörös fényre érzékeny ) D típusú ( zöld fényre érzékeny ) T típusú ( kék fényre érzékeny ) színérzékelő csapok különböző erősségű ingerlése alapján látjuk. Színérzékelésünket a P, D, T csapok együttes, "vegyes" ingerületi állapota határozza meg. A csapok ingerületi állapotának eredője eredményez egy színárnyalatot. Az emberi szem kb. 200 színárnyalat eltérését képes megkülönböztetni. Ez nem független a hullámhossztól, szemünk a legnagyobb érzékenységet az 555 nm környékén ( zöld szín közelében ) mutatja és ez jelentősen csökken, ahogy a látható színtartomány szélei felé haladunk. Amennyiben a látható spektrumban egyenletesen sugároz egy fényforrás, akkor a P, D, T csapok ingerületi állapota azonos lesz. Az eredmény a fehér színérzet. A fényerősség ill. világosság érzését a szemünkbe érkező fényenergia mennyisége határozza meg. Az emberi szem a nagyon kis teljesítményű, 10-6 lumen alatti fényt nem érzékeli, a 10 4

A számítógépes grafika elméleti alapjai / 57239148 / 3 lumen feletti teljesítményű fény pedig elvakít minket. A világosságban szemünk kb. 50 fokozatot képes megkülönböztetni. A színes képek érzékelését a szín telitettsége is befolyásolja. A színtelitettség a szín fehér színnel való felhígítottságának, fátyolosságának mértéke. Ha a vörös fény telitettségét csökkentjük, fokozatosan rózsaszint kapunk. Szemünk egy konkrét színezeten belül kb. 20 telítettségi fokozatot tud megkülönböztetni. Összefoglalva: az ember színlátásában az alábbi összetevők játszanak szerepet: színárnyalat vagy színezet ( hue ) színtelitettség ( saturation ) fényerősség ( brightness )

A számítógépes grafika elméleti alapjai / 57239148 / 4 Kontúrlátás, térlátás és mozgókép érzékelés A szem felbontó képességének határa a kísérletek szerint 0,4 mm, így ahhoz, hogy két pontot meg tudjunk különböztetni, legalább ekkora távolságra kell legyenek egymástól. A monitorok és a nyomtatók felbontóképességénél van ennek nagy jelentősége. Vizuális emlékezetünk jórészt a kontúrlátáson alapul., azaz egy tárgy felismerésében annak körvonalaira, főbb vonalaira támaszkodunk. Képesek vagyunk a képből annak lényegét alkotó részeit kiemelni és azt elraktározni. Gondoljunk a karikatúrákra és nekik megfelelő fotók alapvető különbségére. Hogy mennyire kontúrlátásunk rabjai vagyunk, itt egy példa: A feladat, hogy meghatározzuk az oldalnézetet ( a nehézség, hogy agyunk a kocka alakját őrzi ) Ha különböző távolságokban lévő tárgyakat nézünk, ehhez szemünk a szemlencse fókusztávolságának módosításával automatikusan alkalmazkodik. A pupilla nyílásának automatikus változtatása pedig a szemünkbe jutó megfelelő fénymennyiséget biztosítja. Egy kép térhatásúnak tűnik, ha a közelebbi tárgyakat arányosan nagyobb a távolabbiakat arányosan kisebb méretben ábrázolja, a tárgyak képén árnyalásokat, takarásokat használ. Ez javarészt tapasztalatainkon alapuló vizuális emlékezetünknek tulajdonítható. Ezeknek a modellezése, a tárgyak és a fényviszonyok ismeretében kiszámítása valósághű képek előállításához vezet.

A számítógépes grafika elméleti alapjai / 57239148 / 5 Egy kép tudatos érzékeléséhez legalább 1/15 másodpercig kell látnunk a képet. Ennél rövidebb időre felvillanó képet nem érzékelünk tudatosan.a tudat alatti érzékeléshez kellő idő ennél rövidebb. Amerikában betiltották azt a fajta reklámot, amikor a mozifilmek kockái közé 1/15 másodpercnél rövidebb ideig megjelenő képeket eredményező filmkockákat tettek. ( pl. egy kellemes tengerparti szerelmi jelenet kockái közé üdítőitalok fényképeit csempészték azzal a céllal, hogy a nézőben kellemes képzettársítás alakuljon ki az üdítőről. ) Az animációknál, filmeknél fontos, hogy egy másodperc alatt legalább 25 teljes állóképet jelenítsenek meg. Ennyi kell ahhoz, hogy a szem villogásmentes folyamatos mozgóképet lásson. A TV a váltottsoros vagy interlaced technikát használja, amely másodpercenként 50 félképet jelenít meg.

A számítógépes grafika elméleti alapjai / 57239148 / 6 Fénytani alapfogalmak Sugárzási teljesítmény: ( radiant energy ) Pontszerű fényforrás adott idő alatt kisugárzott energiája. / Watt / Kisugárzás erősség: ( radiant intensity ) Pontszerű fényforrás időegység alatti, egységsugarú gömb egységnyi térszögébe kisugárzott energiája. Besugárzás erősség: ( irradiance ) Adott felület besugárzásának mennyisége, amely Lambert távolság és cosinus törvényével fogalmazható meg. A távolságtörvény kimondja, hogy pontszerű fényforrásnál, azonos beesési szögnél a besugárzás erőssége fordítottan arányos a felületnek a fényforrástól mért távolsága négyzetével. A cosinus törvény szerint a felület besugárzás erőssége akkor a legnagyobb, ha a fénysugár iránya azonos a felület normálvektorával, azaz először a vállcsúcsunk és az orrunk ég le a napon, vagy a déli órákban kell tartani jobban az UV sugárzás ártalmaitól. Sugársűrűség: ( radiance ) Ha egy pontszerű testünk van, akkor a megvilágított testeknek éles árnyékhatáruk van. Kiterjedt testeknél viszont azt vehetjük észre, hogy az árnyékos terület fokozatosan megy át világosból sötétbe. Ennek az az oka, hogy felületformájú kisugárzó testeknél a besugárzás erősség nem csak a sugárzás irányától, hanem a helyétől is függ.igy a fogalom adott térszögből időegység alatt az egységnyi felületre eső sugárzási energiát jelenti. A fenti sugárzásfizikai mennyiségeknek megvan a fotometriai megfelelőjük. A fotometria a sugárzásfizika alkalmazásában figyelembe veszi az emberi látás törvényszerűségeit is.igy a besugárzás erősség fotometriai megfelelője a megvilágitáserősség,melynek közismert mértékegysége a LUX. pl.

A számítógépes grafika elméleti alapjai / 57239148 / 7 éjszakai holdsugárzás : 0,2 lux déli napfény: 70000 lux olvasólámpa: 100 lux munkavégzéshez 500 lux Fotometriai mennyiségek: fénymennyiség: quantity of light

A számítógépes grafika elméleti alapjai / 57239148 / 8 fényáram: liminous flux fényerősség:liminous intensity megvilágitáserősség: illuminance fénysűrűség: luminance Fényt sugárzó testek: ( emisszió ) A fényt kisugárzó testeket a sugársűrűséggel vagy a fénysűrűséggel jellemezzük. Az irányfüggetlen fénysűrűség a radiosity fotorealisztikus renderelő eljárásnak legfontosabb alapfeltevése. Azokat a testeket, amelyek ilyen módon sugároznak ki fényt, Lambert féle testeknek nevezzük. Fényvisszaverődés testek felületéről: A testek felületéről visszavert fénysugárzást legáltalánosabb formában a spektrális visszaverődési tényezővel tudjuk leírni, amely a visszavert fény sűrűségének és a beeső sugárzás megvilágítás - erősségének az aránya. Az arányt szolgáltató függvényt a szakirodalomban "bidirectional reflection distribution function" azaz BRDF elnevezéssel illetik. A visszeverődésnek három típusát szokták megkülönböztetni: 1. ideálisan diffúz visszaverődés: Ez a matt, ill. a durva felületek jellemzője. A diffúz visszaverődést szemléletesen úgy képzelhetjük el, hogy a felület - erős nagyítás esetén látható - mikroszkopikus tükröző felületelemekből áll, amelyeknek síkjai a legkülönbözőbb szögekben állnak. Ezért bármilyen irányból nézzük a testet, a visszavert fény képe ugyanolyan. 2. ideálisan tükröződő visszaverődés: pl. a síktükör így tükröz vissza.a beeső fény szöge egyenlő a visszavert fény szögével. A hagyományos raytracing algoritmusok ezt alkalmazzák. 3. irányított diffúz visszaverődés: ( spekulare reflexion ) A fenti kettő a természetben nagyon ritka. Gyakori viszont, hogy a visszaverődésnek van egy kitüntetett iránya, amely irányban a felület a legtöbb fényt veri vissza, majd ahogy ettől az iránytól távolodunk, a visszavert fény mennyisége egyre csökken. Ezt az esetet irányított diffúz visszaverődésnek nevezzük.

A számítógépes grafika elméleti alapjai / 57239148 / 9 Átlátszó testek, fénytörés: A fénysugár megtörik, ha egy optikailag ritkább anyagi közeg és egy optikailag sűrűbb anyagi közeg határán halad át. Az átlátszó testeken történő fényáthaladásnak megkülönböztetjük négy esetét hasonlóan a visszaverődéshez. 1. diffúz áthaladás 2. irányított diffúz áthaladás 3. durva törés 4. ideális törés Az átlátszó közegek fontos jellemzője a visszaverő és az áteresztő képesség.

A számítógépes grafika elméleti alapjai / 57239148 / 10 levegő és víz találkozásakor: visszaverő képesség: 2% áteresztő képesség: 98 %.

A számítógépes grafika elméleti alapjai / 57239148 / 11 Színterek A színkeverés alapjai: A monitoron található képpontok három részből állnak, melyek egy-egy színösszetevőnek felelnek meg. Minden egyes képpontrészt különböző intenzitással lehet felgyújtani és ezek általában a vörös ( RED ), zöld ( GREEN ) és a kék ( BLUE ). A színeknek megfelelő képpontrészeket 256 intenzitásszinten lehet felvillantani. A szem ezeket külön nem érzékeli, ezek hatása egy egységes színingerré áll össze bennünk. Az intenzitási szintek alapján összesen 256 3 színárnyalat megjelenítésére van lehetőség, ez összesen kb. 16 millió különböző színárnyalatot jelent. Grassmann - féle színkeverési törvények: 1. A keverékfény színezetét az összetevők szabják meg. 2. Bármely színinger előállítható három szín additív keverésével, ezért minden színezet megadásának szükséges és elégséges feltétele három független színezeti jellemző megadása. 3. A színérzet a világossággal nem változik. Ez tehát azt is jelenti, hogy a színérzetet elvonatkoztatva a világosságtól új fizikai jellemzőt nyerünk: ez a színérzet jellemző. A második törvényből az is következik, hogy a színek egy három dimenziós matematikai struktúrát alkotnak, azaz megfeleltethetők egy 3D-s vektortér vektorainak. E vektorteret szintérnek hívjuk, a tér egyes vektorait színvegyértékeknek. A vektorok hossza megfeleltethető a fénysűrűségnek ( színérték ) a vektorok iránya pedig a szintopust határozza meg. A szintér három alapszínét elsődleges vegyértékeknek nevezzük pl. Red, Green, Blue. Az RGB, a CMY, a CMYK és a HSB színterek: Elsődleges fényforrások, amelyek maguktól kibocsátanak fényt ( Nap, lámpa, gyertya stb. ). Másodlagosak azok a fényforrások, amelyek nem képesek önállóan fény kibocsátására, csak azt visszaverhetik, átereszthetik. A színkeverésnek két alapvető módja van aszerint, hogy elsődleges vagy másodlagos fényforrásról van -e szó.

A számítógépes grafika elméleti alapjai / 57239148 / 12 Az összeadó, vagy additív színkeverésnél a vörös, a zöld és a kék alapszínekből vett meghatározott mennyiségeket adunk össze és így kapjuk a színárnyalatokat. Ezzel az ún. elsődleges fényforrások színeit tudjuk előállítani. A szubsztraktiv vagy kivonó szinkeverésnél az alapszínek komlementereiből ( ciánkék, bíborvörös, sárga ) állítjuk elő a színeket. Ezzel lehet modellezni a különböző tárgyak által visszavert fényt. Két szín egymásnak komplementere, ha additív keverésükkor fehéret, szubsztraktiv keverésüknél pedig feketét kapunk. A színes, például piros felület a fehér fényből csak a pirosat veri vissza, a többi más hullámhosszú fényt elnyeli, abszorbeálja. RGB szintér: vörös, zöld, kék ( red, green, blue ) alapszínekből kikeverhető színeket tartalmazza, az additív színkeverés modellezéséhez használjuk. CMY szintér: ciánkék, bíborvörös, sárga ( cyan, magenta, yellow ) alapszínekből kikeverhető színeket tartalmazza, a szubsztraktiv színkeverés modellezéséhez használjuk. CMYK szintér: megegyezik a CMY szintérrel, csak még hozzáadódik a fekete szín, tekintve, hogy a CMY alapszínekből csak szürkét tudunk előállítani, a nyomdatechnikában viszont szükség van a teljesen fekete színre is. Az RGB és a CMY színterek közötti átszámítás kölcsönösen egyértelmű: [ C,M,Y] = [1,1,1] - [ R,G,B] [R,G,B] = [1,1,1] - [ C,M,Y] Az RGB és a CMYK színterek között nem lehetséges kölcsönösen egyértelmű megfeleltetés. Az RGB alapszínek intenzitását 0 és 255 közötti értékkel adjuk meg, a nyomdatechnikában pedig CMYK alapszíneket 0 és 100 közötti fedettségi értékkel jellemezzük. HSB szintér: ( HUE : színárnyalat, SATURATION: szintelitettség, BRIGHTNESS : világosság ) Az RGB alapszínek mellett a színek előállításához szükséges színtelitettség és világosság értékeit is felhasználják. Szokás még HLS szintérnek is nevezni. A HSB szintér jobban alkalmazkodik az emberi érzékeléshez, mint az RGB vagy a CMY.

A számítógépes grafika elméleti alapjai / 57239148 / 13 Indexelt színkezelés palettával: A színek kódolására kezdetben 8 bitet használtak, ez 256 fajta színárnyalat kezelését teszi lehetővé. Ekkor egy színnek a kódját egy 256 elemű színtáblázatra, azaz palettára való hivatkozás jelentette. A programcsomagok általában több paletta kezelését tették lehetővé. Többcsatornás színkódolás: A hardver fejlődésével egyre inkább a többcsatornás szinkódolás vált általánossá. Itt a szintér alapszíneinek intenzitás értékét külön külön adjuk meg. Ha három alapszínünk van, akkor csatornánként meg kell határozni, hogy hány biten kódoljuk az adott alapszín intenzitásértékét: HIGH-COLOR szinmegjelenités: a három alapszín csatornáját összesen! 16 biten tároljuk,azaz 2 16, kb. 32000 különböző színárnyalat megjelenítését tesszük lehetővé. TRUE COLOR szinmegjelenités: a három alapszín intenzitását 3X8=24 biten tárolják, ami 2 24, azaz kb. 16 millió színárnyalat megjelenítését tesszük lehetővé. Az egyes alapszínek intenzitását itt a felhasználó egy 0 és 255 közti érték megadásával állíthatja be.

A számítógépes grafika elméleti alapjai / 57239148 / 14

A számítógépes grafika elméleti alapjai / 57239148 / 15

A számítógépes grafika elméleti alapjai / 57239148 / 16 A vektorgrafika általános jellemzői A vektorgrafika egy 3D-s lebegőpontos világ-koordináta-rendszert használ, ezáltal lehetővé teszi a geometriai pontosságú szerkesztést és transzformációkat. A vektorgrafika absztrakt modelltérbeli tárgyakkal dolgozik. Ezek az önálló objektumok / entitások /, melyekkel műveleteket lehet végezni a képernyőn való megjelenéstől függetlenül is. A vektorgrafikában a grafikus objektumokat adatbázisban tárolják, mely lehetővé teszi az egyes testek, tárgyak modelljeinek egyedi visszakeresését és az ezek közötti kapcsolatok rögzítését és kimutathatóságát. A modelltér és a vektorgrafikus adatbázis kapcsolata Vektorgrafikus geometriai objektumok adatbázis adatai Az adatbázisban nem tárgyak, testek képeit, hanem a megfelelő 3D-s világtérbeli geometriai objektumok matematikai és strukturális adatait dolgozzuk fel. Ezeknek az adatoknak a konkrét tartalma és megjelenési formája ( pl. csak egy poliéder csúcsainak koordinátáit tároljuk, vagy

A számítógépes grafika elméleti alapjai / 57239148 / 17 emellett még lapjainak normálvektorát is ) a kiválasztott geometriai modellezési eljárástól függ. A vektorgrafikus objektumok kapcsolatrendszere A geometriai objektumok közötti kapcsolatok lehetnek: 1. alá-fölérendeltségi hierarchikus viszonyok, melyek jellemző változata a tartalmazás ( pl. háztetőszerkezet-tetőablak ) 2. mellérendeltségi viszonyok -szerkezeti jellegű kapcsolatok ( a hierarchia azonos szintjén lévő objektumok közötti kapcsolatok ) -illeszkedési jellegű kapcsolatok, amikor az objektumok valamilyen formában csatlakoznak egymáshoz ( egy kocka csúcsából kiinduló 3 él ) -megjelenités jellegű kapcsolatok, amikor több objektum egy megjelenítéshez ( scene ) tartozik. A vektorgrafikus geometriai objektumokhoz rendelt tulajdonságok Az objektumoknak nem csak a strukturális adatait, hanem kifejezetten megjelenés-orientált jellemzőit is csatolhatjuk az adatbázishoz. szín, vonalstílus, felületi jellemzők : textúrák, fényvisszaverőképesség, érdesség stb. szövegek.

A számítógépes grafika elméleti alapjai / 57239148 / 18

A számítógépes grafika elméleti alapjai / 57239148 / 19 A modelltér geometriai objektumaihoz hozzárendelt mennyiségi és szervezési információk Jó példa ide a vektorgrafikus térkép, amelyben az úthálózat gráfjához hozzárendeljük az egyes

A számítógépes grafika elméleti alapjai / 57239148 / 20 útszakaszokhoz tartozó sebességkorlátozást is.

A számítógépes grafika elméleti alapjai / 57239148 / 21 A geometriai modellezés alapjai A geometriai modellezés lehet: 1. adatorientált 2. eljárás-orientált Adatorientált esetben a térbeli alakzat jellemző adatait tároljuk a számítógépes rendszerben ( pl. háromszög esetében a csúcspontokhoz vezető vektorok koordinátáit ) míg eljárás-orientált esetben a térbeli alakzat generáló programját ( pl. körgeneráló rutin a kör egyenlete a középpont és a sugár paraméterei alapján ). A vektorgrafikai geometriai modellek az alábbi adatokkal jellemezhetők: 1. a modell neve, azonosítói, a geometriai alakzatot felépítő geometriai építőelemek fajtái, 2. az építőelemek kapcsolódására vonatkozó információk, adatok, 3. a geometriai alakzatra vonatkozó méret-, nagyságadatok, 4. a geometriai alakzatra vonatkozó hely- és helyzetadatok a modellezési világkoordinátarendszerben, 5. a geometriai alakzat tulajdonság adatai, 6. a geometriai alakzat megjelenítésének adatai. Azokat az építőelemeket, melyek tovább már nem bonthatók fel geometriai primitivek nevezzük. A legtöbb vektorgrafikus rendszerben a geometriai alakzatokat primitívek összeépítésével hozzák létre. Primitívek: 2D: - a vonal ( szakasz ) - a téglalap ( négyzet )

A számítógépes grafika elméleti alapjai / 57239148 / 22 - az ellipszis ( kör ) - a sokszög 3D: - hasáb ( beleértve a téglatestet és a kockát is ) - gúla ( csonka gúla ) - henger - kúp ( csonka kúp ) - gömb - tórusz

A számítógépes grafika elméleti alapjai / 57239148 / 23 Egyszerűbb modellezőrendszerek a térbeli íveket és felületeket szakasz ill. háromszögközelitéssel modellezik. Ennél hatékonyabb módszer,ha paraméteres köbös ívdarab és kétparaméteres köbös felületfolt primitívekkel állítják elő a térbeli íveket és felületeket ( B- Spline és NURBS felületek). A vektorgrafikában többféle geometriai modellezőrendszert használunk, a legelterjedtebbek: - huzalvázas ( drótváz ) modellezés - palástfelületekkel való modellezés ( b-rep ) - tömör testmodellezés ( CSG ). - térfogat-modellezés / csak az utóbbi időben terjedt el a számítógépek teljesítménynövekedésének köszönhetően / Fontos, hogy a különböző modellezési módszerek kombinált alkalmazását a konkrét vektorgrafikus rendszerek általában megengedik, és ezeket az adatbázis-kezelés szintjén összekapcsolják. Így például lehetőségünk van egy palástfelületekkel modellezett test huzalvázas megjelenítésére.

A számítógépes grafika elméleti alapjai / 57239148 / 24 Görbe és felület modellezési módszerek A görbék és a felületek modellezésénél a felhasználó szemléletes, geometriai adatokat közöl / kijelöli a nézeten egy pont helyét az egérrel / a vektorgrafikus rendszerrel, mely ez alapján generálja / állítja elő / a megfelelő görbét vagy felületet. A leggyakrabban olyan térbeli pontokat adunk meg, amelyeken a az előállítani kivánt görbének vagy felületnek át kell haladnia. Interpoláció és approximáció A térbeli görbék és felületek közül azok kiválasztását, amelyek a tér előre adott P1... Pn pontjain áthaladnak, egy interpolációs feladat megoldásának nevezzük. Például legyen adott a P0, P1, P2, P3 pont az r0, r1, r2, r3 vektorokkal. Keressük azt az r = r(t) vektor skalár függvényt, mely kielégíti a következő feltételt: található olyan t0, t1, t2, t3 paraméter, hogy r0 = r(t0), r1=r(t1), r2=r(t2), r3=r(t3) teljesül. Ebben az esetben az r(t) vektor skalár függvényt interpolációs görbének, a P0, P1, P2, P3 pontokat pedig az interpolációs görbe kontrollpontjainak nevezzük. A térbeli görbék és felületek modellezésének másik elterjedt módszere az approximáció. Ebben az esetben egy görbecsaládból ( pl. n-edfokú polinomok ) azt a görbét választjuk ki, mely az

A számítógépes grafika elméleti alapjai / 57239148 / 25 előre megadott pontokat a lehető legjobban megközelíti. Az approximáció esetén a közelítő görbe kontrollpontjainak csak egy része helyezkedik el a görbén. A számítógépes grafikában a térgörbék és felületek modellezésére a harmadfokú polinomokat választották. A harmadfokú polinomokkal modellezhetők olyan geometriai tulajdonságok, mint az önmetszés, csúcspont, vagy az inflexiós pont ( ahol az érintő átmetszi a görbét). Tehát a görbéket az r=a 0 +a. 1 t+a. 2 t 2 +a. 3 t 3 alakú köbös paraméteres ívekkel, a felületeket pedig kétparaméteres köbös felületekkel közelítjük ( a felületeknél x(u,v), y(u,v), z(u,v) u és v harmadfokú polinomja). A spline és a köbös kétparaméteres felületfolt Az interpolálással és approximálással képzett görbék és felületek előállítására két eltérő módszer létezik. 1. Az össze interpolálandó vagy approximálandó pontot figyelembe véve egyetlen görbét vagy felületet határozunk meg. 2. Az interpoláló vagy approximáló görbét vagy felületet egymáshoz folytonosan kapcsolódó részekből állítjuk össze.

A számítógépes grafika elméleti alapjai / 57239148 / 26 A számítástechnikában a második módszer vált egyeduralkodóvá, mert egy kontrollpont változtatása kihat az egész görbére. Ha a modellezendő térgörbét több egymáshoz folytonosan kapcsolódó ívből állítjuk össze, akkor ezt a görbét spline-nak nevezzük. A ma leggyakrabban használt NURBS szabvány is ilyen. A spline-ok tehát polinomivdarabokból álló görbék, mely ívdarabokat a paramétertartomány t 0 <= t 1 <= t 2 <=... <=t n felosztásával képzünk minden [ t i, t i+1 ] intervallumban külön külön. Az ívdarabok összeillesztése folytonosan, differenciálisan / érintőmeghatározás / történik. Ha a paramétertartományt azonos közökre osztjuk fel, azaz t i+1 -t i értéke minden i-re azonos, akkor a spline-t uniformnak nevezzük. Ha egy modellezendő felületet részekből állítunk össze, akkor ezt spline-felületnek nevezzük. A spline felületek részeit leggyakrabban köbös polinomokkal generáljuk, ezeket két paraméteres köbös felületfoltoknak ( bicubic patch ) nevezzük. Fontos, hogy a görbékhez, a spline-okhoz léteznek olyan eljárások, amelyek görbékhez poligonokkal, felületekhez háromszöglapokból álló összefüggő poliéderfelületekkel közelítenek. A videokártyák chipkészlete alapvetően a háromszögekkel modellezett felületek megjelenítésére van felkészítve.

A számítógépes grafika elméleti alapjai / 57239148 / 27

A számítógépes grafika elméleti alapjai / 57239148 / 28 Vektorgrafikus geometriai modellezés Típusok: - Huzalvázmodellezés - Palástmodellezés ( b-rep ) - konstruktív tömör testmodellezés - térfelosztással való modellezés Huzalvázmodellezés A műszaki rajzok szabványain alapuló 2D-s vektorgrafikus rendszerek vonalas ábrázolásának a háromdimenziós általánosítása. A huzalváz modell a 3D-s alakzatot csúcsaival és éleivel jellemzi, ennek megfelelően a modell csak a csúcsokat és az ezekhez rendelt összekötő éleket tartalmazza. A huzalváz modellek legnagyobb előnye, hogy a számítógépes megvalósításuk algoritmusigénye a többi modellező módszernél lényegesen kisebb, így viszonylag kis erőforrású számítógépen is

A számítógépes grafika elméleti alapjai / 57239148 / 29 használhatók. A huzalvázmodellek legnagyobb problémája, hogy egy huzalvázmodellnek több test is megfelelhet. Nem mindig tehető különbség a tömör és üreges test között a modell alapján, és a testet határoló felületek görbültségét sem tudjuk kezelni. A huzalvázmodellezés a nem teljes értékű modellezések csoportjába tartozik, ami azt jelenti, hogy a modell nem tartalmazza a valós test leírásához szükséges összes geometriai és csatlakoztatási ( topológiai ) információt.

A számítógépes grafika elméleti alapjai / 57239148 / 30 A huzalvázmodell adatstruktúrájának lényege a csúcs, az él és az él-csúcs táblázatok együttese, amelyeket a relációs adatbázis-kezelés szabványainak megfelelően építenek fel. Itt a csúcstáblázat tartalmazza a modellezett objektum egyes csúcsaihoz tartozó azonosítót és koordinátaértékeket, az él-csúcstáblázat meghatározza, hogy egy él milyen azonositójú csúcsokat köt össze és hivatkozik az éltáblázatra, mely az élek generálásához szükséges információkat tartalmazza.a műszaki tervezés gyakorlatában a huzalvázmodellezést alkalmazzák, mivel gyorsan kiszámítható az eredmény pl. egy transzformációnál és gyorsan láthatóvá is tehető. A szemléltetési és egyértelműségi problémák kezelésére egyes CAD rendszerekben a modellezést továbbfejlesztették és a görbült felületeket felületvonalakkal szemléltetik. Ezt felületvonalas huzalváz modellnek nevezzük. Palástmodellezés: A palástmodellezésnél a geometriai objektumokat a vektorgrafikus modelltérben határolófelületeikkel ( beleértve e felületek csatlakoztatására vonatkozó adatokat is ) jellemzzük. Ez a műszaki gyakorlatban előforduló testek esetében teljes értékű geometriai modellezést jelent, mivel a testeket határoló felületeik vagy palástjuk pontjainak összessége a szükséges pontossággal és egyértelműséggel leírja. A módszer neve az angol szakirodalomban

A számítógépes grafika elméleti alapjai / 57239148 / 31 BOUNDARY-REPRESENTATION, vagy röviden B-REP. A palástmodellezés részét képezi a huzalvázmodellezésnél megismert csúcs, él együttes, de ez kiegészül a testhatároló lapok felületfoltjaival és ezek geometriailag pontos csatlakoztatására vonatkozó algoritmusokkal. A palástmodellező eljárásokat a lapok geometriai jellemzői szerint szokták osztályozni: 1. ha a palástot képező lapok síkbeli sokszögekből állnak, akkor poliédermodelleket kapunk, 2. ha a palástot képező lapok változó görbületű felületfoltok is lehetnek, akkor valósághű palástmodellezésről beszélünk. Palástmodelleket létrehozhatunk lépésenkénti szerkesztéssel. Ekkor a test határoló felületeit egyenként definiáljuk a térbeli felületek csatlakoztatási lehetőségeinek függvényében. A lépésenkénti szerkesztés legegyszerűbb elemi lépéseit Euler-operátoroknak nevezik. Ezek pl. a következők lehetnek: - képezz csomópontot, élet és palástot, - kapcsolj ki ( törölj ) csomópontot, élet. Ezekkel az operátorokkal az Euler féle poliéder tétel miatt "konvex poliéderekhez hasonló" testek létrehozása egyértelműen leírható. Minden B-REP test létrehozható az Euler operátorok véges számú sorozatával, amely eleget tesz az alábbi feltételeknek: 1. A véges számú felületfolt egyesítése a test határfelületét adja, 2. Éleit mindig két csúcs zárja le, 3. Az él két ( vagy páros számú ) határoló felületfolt találkozásakor keletkezik, 4. Minden felületfoltot élek véges számú, záródó sorozata határol, 5. konvex. Ekkor igaz a b-rep testekre Euler poliéder tétele: lapszám+csúcsszám = élszám + 2

A számítógépes grafika elméleti alapjai / 57239148 / 32 Ezt először konvex poliéderekre bizonyították, de ez a gömbbel homeomorf topológiai alakzatokra is általánosítható. Ezért az Euler féle operátorokkal felépíthetünk görbült felületfoltokat tartalmazó b-rep testeket is. A műszaki gyakorlatban azonban különböző üreges elemek, térbeli "lyukak" képzésére is szükségünk van. Ehhez úgynevezett kiegészítő operátorokat alkalmaznak, melyek az egyszeresen vagy többszörösen lyukas ( tórusz vagy többszörös tórusszal egyenértékű ) testek létrehozását is biztosítják. A lépésenkénti szerkesztés mellett a B-REP modellek létrehozásának fontos eszköze a már tárgyalt "pásztázás" ( SWEEP). A műszaki tervezőrendszerek fejlettebb változatai már alkalmazzák a "valósághű palástmodellezés" címszó alatt a B-Spline, a Bézier és a NURBS felületfoltokat is. A palástmodellek lényegi, egyszerűsített adatstruktúrájának relációs modellje: Az egyes entitások N:M kapcsolatban állnak, így az adatstruktúra ennek megfelelő számú csúcsél, él-lap stb. kapcsoló táblát is tartalmaz. Az adatbázis szerkezete egyben a b-rep modellezés lényegét is kifejezi: a felületfoltokat nem egyszerűen egymás mellé rakjuk a modellben, hanem ezek kapcsolata is beépül az adatbázisba. A palástmodellezést elterjedten a CAD rendszerekben alkalmazzák, mivel a 3D-s műszaki tervezésben szükséges testek teljes körű geometriai leírását biztosítja és lehetővé teszi a felhasználó számára a modellezés során a testek "kényelmes", interaktív szerkesztését. Elterjedését a poliéder modellek parametrizálhatósága is elősegítette valamint az is, hogy a palástmodellek huzalvázmodellé való konvertálásához szükséges algoritmusok rendelkezésre állnak. A felületek teljes értékű leírása különösen előnyös lehet az NC ( számjegyvezérlésű )

A számítógépes grafika elméleti alapjai / 57239148 / 33 automaták programozásában. Konstruktív tömör test modellezés: Constructive Solid Geometry CSG A CSG az összetett testeket primitív testekből halmazműveletek ( UNION, DIFFERENCE, INTERSECTION ) / egyesítés, negáció, metszet / alkalmazásával építi fel. Az elfajulások elkerülése érdekében regularizált halmazműveleteket használunk, azaz először kivesszük a halmazokból a határfelületeket, elvégezzük a belső pontokra a halmazműveletet majd a keletkező halmazt lezárjuk, azaz hozzávesszük annak határpontjait. A CSG továbbfejlesztéseként jött létre a testpalást modellezés vagy Constructive Shell Representation: CSR, amely a CSG és a B-REP palástmodellezés előnyös tulajdonságait próbálja ötvözni: - a modellezésben részt vevő testeket fa struktúrával írja le, - a levelek b-rep modellek is lehetnek. A műszaki tervezés során szükséges testek döntő része előállítható néhány egyszerű geometriai test ( primitív ) megfelelő kombinációjából. Térfogatmodellezés elemi sejtekkel / 2D pixel helyett 3D voxel /:

A számítógépes grafika elméleti alapjai / 57239148 / 34 A térfogat-modellezésnél egy tömör tárgyat több egymáshoz csatlakozó, de egymást nem metsző kisebb tömör tárgyra, azaz sejtekre bontunk fel. A sejteknek két típusa van: 1. A sejtek azonos típusú alakzatok ( pl. hasábok ), de méretük egy paramétertől függően változhat, 2. A sejtek azonos típusú és méretű alakzatok, ekkor ezeket voxelnek ( volument element ) nevezzük. Az azonos formátumú és méretű voxelekkel való kitöltése a modellezendő testnek, ha a voxeleket elegendő kis méretűre választjuk, a test relatíve pontos leírását eredményezi. A leggyakoribb voxeltipus a kocka. A modellezendő objektumokat a voxelekkel úgy írjuk le, hogy minden egyes a testhez teljes egészében vagy csak részben hozzátartozó voxel adatait hozzárendeljük a testhez. Pontos közelítést minél kisebb voxelekkel tudunk elérni, így azonos térfogatra kisebb voxelek azok nagyobb számát jelentik. Nagy teljesítményigényű számítógépet igényel a módszer, ugyanakkor a gépek teljesítményének exponenciális növekedésével a módszer a jövőben nagy szerepet tölt majd be. Pl. a CT vizsgálat során a berendezés anyagsűrűséget mér és ez alapján a hozzákapcsolt számítógépben egy térbeli "köd" adatai jelennek meg. Ha az azonos sűrűségnek megfelelő térrészek modelljét voxelekkel töltjük ki, megkaphatjuk pl. bármely belső szerv 3D - s képét. Egyenlőre a térfogat-modellezéssel kapott adatokat hagyományos modellezési eljárásokban használható adatokká konvertálják át.

A számítógépes grafika elméleti alapjai / 57239148 / 35 Műveletek a modelltér vektorgrafikus objektumaival Művelettípusok: - új objektum létrehozása, - egy létező objektum transzformálása, másolása, törlése - meglévő objektumokkal végzett halmazalgebrai műveletek - struktúra képzés - jelenetek ( scene ) megjelenítése Új objektum létrehozása: - primitívpéldányokra való hivatkozással, - szerkesztéssel, - pásztázással. Objektum létrehozása szerkesztéssel: A felhasználó adja meg a vektorgrafikus rendszer számára az összes információt, amely alapján a térbeli test összeállítható. A módszer tipikusan jellemző a testek palástfelületekkel való modellezésére ( b-rep ), amikor a felhasználó egyenként meghatározza az egyes fedőlapok, felületek jellemzőit és ezek csatlakozására vonatkozó adatokat. Objektum definiálása pásztázással / SWEEP / : Pásztázásnál egy 2D felületelemet mozgatunk egy vezérgörbe mentén, és ennek során a felületelem által "súrolt" térbeli pontok egy testet határoznak meg. A pásztázásnak két speciális esete van : - a kihúzás ( EXTRUDE ) - a forgatás ( ROTATE )

A számítógépes grafika elméleti alapjai / 57239148 / 36

A számítógépes grafika elméleti alapjai / 57239148 / 37 Másolás, törlés, transzformáció A másolás a kijelölt vektorgrafikus objektum egy eltérő nevű ( azonositójú ) példányát hozza létre a világkoordinátarendszer egy másik helyén. A törlés egy korábban definiált struktúrába nem beépített objektumot szüntet meg, ami azonosítójának törlését és a megfelelő adatbázisrész felszabadítását jelenti.

A számítógépes grafika elméleti alapjai / 57239148 / 38 Transzformációk: eltolás, elforgatás ( tükrözés is ), léptékváltás / scale / ( nagyítás, kicsinyítés, összenyomás, széthúzás ). Objektumokkal végzett halmazalgebrai műveletek: Két test között Bool algebrai műveleteket végezve egy új testet kapunk. - egyesítés ( UNION ) - kivonás ( DIFFERENCE v. SUBSTRACT ) - metszet ( INTERSECTION ) Az objektumok között strukturális kapcsolatok létesítése és megszüntetése A csoportképzéssel ( GROUP ) objektumokat összefoghatunk egy egységbe, illetve ezt meg is szüntethetjük. A csoportok általában több szinten hierarchiában is felépíthetők és rendszerparancsok egy része a csoportokra is értelmezett. A csoportok közül népszerű a rétegek vagy fóliák ( LAYER ) használata, amelynél a az objektumok a felhasználó által megadott csoportosításban külön fóliákra kerülhetnek, melyek a rendszerben külön kezelhetők. Egymásra rakva a fóliákat, láthatjuk a teljes rajzot is. Az egyes fóliák "lefagyaszthatók", ekkor tartalmuk például a képernyőn nem jelenik meg. Amennyiben viszont később a lefagyasztott fóliára szükségünk van, azt elővehetjük és így többcélúan felhasználhatjuk. A fóliák segítségével például egy ház építészeti terveit épületgépészeti vagy belsőépítészeti célokra is felhasználhatjuk.

A számítógépes grafika elméleti alapjai / 57239148 / 39 Kivágás és leképezés Képgenerálási pipeline: 1. Meg kell adni a modelltér objektumait megvilágító fényforrásokat a világkoordinátarendszerben. 2. Rögzítenünk kell a nézőpontot vagy a kameraállást a világkoordinátarendszerben. 3. El kell döntenünk, hogy a modelltér milyen objektumait kívánjuk szerepeltetni a generálandó képben. Ehhez egy ablakot kell definiálni a világkoordinátarendszerben, amelyen keresztül a jelenetet látjuk. 4. A jelenetben szereplő objektumokat a világkoordinátarendszerből affin és perspektiv transzformációval egy normalizált ábrázolási térbe kell leképeznünk. 5. Az ábrázolási térben meg kell határozni az objektumok takarási viszonyait, azaz a nézőpontból látható éleket és felületeket. Ez a látható kép meghatározó algoritmusokkal történik. 6. A látható felületelemek képpontjaihoz ezt követően hozzárendeljük a fényviszonyoknak és a textúráknak megfelelő színeket. 7. A raszteres képernyőn kiválasztott ablaknak megfelelő pixelekre "vetítjük" a felületelemek képpontjainak színértékeit a monitor fizikai eszközkoordináta - rendszerében. A jelenet nézőpontjának definiálásához nyilván meg kell adni annak a pontnak a koordinátáit a világkoordinátarendszerben, ahova a "fényképezőgépet" elhelyezzük. Szükség van még a fényképezőgépben lévő film síkjának és az objektív térbeli irányának meghatározására is.

A számítógépes grafika elméleti alapjai / 57239148 / 40 xf,yf,zf a kamera koordinátarendszer origójának koordinátái a világkoordinátarendszerben u,v sík a keletkező kép síkja n az objektív iránya ( a fényképezőgépbe eső fénysugarak "fő iránya" ) A számítógépben a fényképezőgép egy program, a vele felvett tárgyak pedig vektorgrafikus adatállományok. A jelenet képét az ( u,v ) síkban definiált ablakra történő vetítéssel állítjuk elő. Ez lehet középpontos vagy párhuzamos vetítés.

A számítógépes grafika elméleti alapjai / 57239148 / 41

A számítógépes grafika elméleti alapjai / 57239148 / 42 Látható kép meghatározó algoritmusok A modelltér elemeinek láthatóságát meghatározó algoritmusoknak nyilvánvalóan a 3D-s látótérben kell működniük, mivel a megjelenítő eszköz 2D-s koordináta-rendszerére való vetítés megsemmisíti a takarási viszonyokat. Hátsó felületek eltávolítása: ( Back Face culling ) A zárt, sokszögekből álló objektumokat teljesen körbezárják a felületüket alkotó poligonok. Ha a poligonok normálvektorait úgy állítjuk be, hogy az objektumból kifelé mutassanak, akkor azok a poligonok, melyek normálvektorai nem a néző felé mutatnak, biztosan takarva lesznek az objektum közelebbi felülete által. Ezeket a takarásba kerülő, úgymond hátrafelé néző poligonokat back face poligonoknak nevezzük és az objektumot leíró adatbázisból való eltávolításukat eredményező eljárást pedig back face cullingnak. A back face poligonok könnyen azonosíthatók a normálvektoruk és a vetítés középpontjából a poligonhoz mutató vektor skalárszorzata által: pozitiv érték esetén a poligon hátrafelé néz. Ha egy konvex poliédert kell ábrázolnunk, akkor nincs probléma, viszont a front ( elülső ) poligonok is takarhatják egymást. Az eljárás a poligonok és az őket metsző fénysugár döféspontjainak számát, így a metszés ill. a döféspontokkal és így a pixelekkel kapcsolatos számításokat megfelezi, tekintve hogy

A számítógépes grafika elméleti alapjai / 57239148 / 43 megközelítőleg annyi poligon van hátul, mint amennyi elöl. Minimum maximum teszt: Az objektumok takarási viszonyainak meghatározását segítheti, ha ezeket egyszerűbb testekbe zárjuk, melyek térbeli elhelyezkedését hatékonyabb algoritmusokkal tudjuk kezelni. Ezeket a befoglaló testeknek (bounding volume) nevezik.a leggyakrabban használt befoglaló testek a tégla és a gömb. A renderelési eljárást azért gyorsíthatja, mert azokkal a fénysugarakkal eleve nem foglalkozik, amelyek nem metszik a befoglaló testet. a. A két térbeli háromszög nem takarhatja egymást b. Takarják egymást c. Nem takarják egymást, de ez min/max teszttel nem dönthető el. A Z-BUFFER vagy mélységtároló algoritmus: Az algoritmus két tároló területet használ: A frame-buffert, amely a képernyő pixeljeihez tartozó színértékeket tárolja, induló feltöltése a háttérszín. A Z-buffert, amely az egyes pixelekhez rendelt Z értéket tárolja a normalizált látótérből, kezdeti értéke a hátsó kivágósik Z koordinátája.

A számítógépes grafika elméleti alapjai / 57239148 / 44 A tér minden egyes normalizált látótérbeli objektumára az alábbi kerül végrehajtásra: 1. egy (x,y) koordinátájú pixelhez tartozó vetítősugárhoz kiszámoljuk az összes metszett objektumhoz tartozó z értéket, 2. ha z értéke kisebb, mint egy korábban a z bufferben letárolt érték, akkor ezzel felülírjuk a korábban letárolt értéket és egyúttal a neki megfelelő színértékkel felülírjuk a frame buffer ( x,y ) koordinátájú tárolóhelyét. Ezzel kiszámoljuk az egy raszterponthoz tartozó vetítősugárnak az objektumoknak a nézőponthoz legközelebb fekvő döféspontját. Teljes megoldást kapunk a takarásra, de nem megoldott az áttetszőség problémája, valamint tiszta formában alkalmazva rettentő forrásigényes eljárás, tekintve, hogy a raszterpontok száma milliós nagyságrendű is lehet. Mélységi rendező algoritmusok ( Depth-Sort): A megjelenítendő objektumokat a nézőponttól való távolság függvényében sorba kell állítani. A helyes takarási viszonyok úgy alakulnak ki, hogy a nézőhöz közelebb eső objektum képe felülírja a távolabbit. Ezek az algoritmusok általában az objektumok poligonokkal, legtöbbször háromszögekkel való felületi közelítését tételezik fel. Ha egy háromszög z irányban egyértelműen takarja a másikat, akkor a megjelenítésnél képével felül kell írnia azt, ha nem

A számítógépes grafika elméleti alapjai / 57239148 / 45 dönthető el egyértelműen a takarás, akkor a háromszögeket addig bontjuk részháromszögekre, amíg a takarás egyértelműen el nem dönthető. A mélységi rendező algoritmusokat általában valamilyen képpontosság eljárással pl. (scan line) együtt szokták alkalmazni, mert a feldarabolást a kép pontossága határozza meg. Bináris térfelosztó fák ( BSP = Binary Space Partitioning ): Az ábrázolandó jeleneteket ( scene ) úgy is tekinthetjük, mint objektumcsoportok gyűjteményét. Ha található olyan sík, amely elválaszt egymástól két objektumcsoportot, akkor az a csoport, amelyik oldalán a nézőpont is van, eltakarhatja a másik csoportot, de a másik csoport által sohasem kerülhet fedésbe. Minden egyes csoport rekurzívan tovább osztható, ha van olyan sík, amely megfelelően szeparál. Így kellő mélységű szeparálás után egyfajta hierarchiát kapunk, amely leírja az egész objektumtér takarási és láthatósági viszonyait.a nézőpont változása nem módosítja a BSP fát, azaz a hierarchiát. Scan-line algoritmusok: A scan line algoritmusok pixelsoronként készítik a képet a poligonok ( háromszögek ) frame bufferbe történő soronkénti konvertálásával. Az objektumokról az algoritmus táblázatokat készít: 1. Képsíkra vetített, nem vízszintes élek táblázata 2. Poligonok fontosabb paramétereinek táblázata 3. az éppen vizsgált azaz aktív él táblázata. Egy-egy pixelsor vizsgálatakor az él táblázatnak azok az elemei, amelyek metszik a sort, áttöltődnek az aktív élek táblázatába. A pixelsor és a háromszögek közös részét szegmensnek nevezzük. Ha a pixelsor szegmense csak egy háromszöghöz tartozik, akkor ezt egyszerűen meg kell jeleníteni. Ha egy pixel több szegmenshez tartozik, ekkor a megfelelő háromszögek mélységi vizsgálatával el kell dönteni, hogy melyik háromszög felületi pontjait kell kirajzolni. / Ezt legcélszerűbben a háromszög csúcskoordináták interpolációjával oldhatjuk meg. )

A számítógépes grafika elméleti alapjai / 57239148 / 46 Területfelosztó algoritmusok: Warnock algoritmusa: A képsíkot több képrészre osztjuk. Warnocknál ez 4. A negyedelést kellő finomság eléréséhez igény szerint rekurzívan folytathatjuk. 1.Ha a képrésznek nincs közös része a poligonnal akkor a háttér szín jelenik meg. 2. A képrészben csak egyetlen poligonnak a darabja található. Ekkor a háttér szín mellett ezt is meg kell jeleníteni. 3. Az adott képrész a poligon teljesen lefedi, ekkor a poligon színét és jellemzőit kell megjeleníteni. 4. Több poligon is metszi a képrészt, ekkor pl. z buffer eljárással kapott sorrend szerint egymásra kell festeni a poligonokat. Ha olyan esettel találkozunk, hogy nem sorolható a fenti négy eset valamelyikébe ( pl. egymást a képrészben kölcsönösen metsző háromszögek ) akkor a képrész újranegyedelésével előbb utóbb eldönthetjük a festés színét. Sugárkövetéses algoritmusok: ( Raytracing ) A raytracing algoritmusok a felületek láthatóságát a nézőpontból kiinduló, képzeletbeli fénysugarak követésével határozzák meg. Működésükhöz egy nézőpontot és egy tetszőleges

A számítógépes grafika elméleti alapjai / 57239148 / 47 vetítési síkon felvett ablakot kell definiálni. Az ablak rácsozata a képernyő pixeljeinek felel meg. A nézőpontból vetítő sugarat indítunk az ablak minden egyes pixelén keresztül a scene objektumai felé. Az adott pixel színét a sugár által a nézőponthoz legközelebb metszett objektum színe határozza meg.

A számítógépes grafika elméleti alapjai / 57239148 / 48 Megvilágítás és árnyalás A modelltér egy objektumának felületén látható színárnyalatokat a következő tényezők befolyásolják: a fényforrás típusa ( pontszerű, kiterjedt stb. ), a fényforrás sugárzásának erőssége a felület fényvisszaverő képessége a felület és a fényforrás távolsága a felület normálisa és a fénysugár által bezárt szög. Fényforrások modellezése: Szórt háttérvilágítás ( ambient light ) : A fizikában nem értelmezhető. A számítógépes grafikában azért vezették be, hogy a felhasználó az ábrázolt jelenet összes objektumának a megvilágítását szabályozhassa. Hatása jó közelítéssel a nappali fénynek felel meg egy erősen felhős égbolt esetén, amikor a testek egyenletesen, minden irányból kapnak fényt. A tér minden objektuma így a tér minden irányából azonos fénnyel lesz megvilágítva. Ehhez általában háttérvilágítást állítunk be, a jobb láthatóság kedvéért. A háttérvilágítás nem eredményez árnyékot.

A számítógépes grafika elméleti alapjai / 57239148 / 49 Távoli fényforrások ( Distant light ): Ezek párhuzamos fénysugarakat bocsátanak ki oly módon, hogy a fényforrástól távolodva sem csökken a megvilágítás intenzitása. Ezzel modellezhetjük pl. a Napot, ami a nagy távolság miatt gyakorlatilag párhuzamos és változatlan erősségű fénysugarakat bocsát ki. Hatására árnyék képződik. Pontszerű fényforrások ( Point or Bulb light ): A pontszerű fényforrás a modelltér minden irányában azonos intenzitással sugároz. A közeli tárgyak erősebben meg lesznek világítva, mint a távolabbiak a Lambert féle távolságtörvénynek megfelelően. A fényforrástípus éles árnyékot eredményez.

A számítógépes grafika elméleti alapjai / 57239148 / 50 Megvilágítási modellek: A megvilágítási modellekkel írjuk le a modelltér objektumainak és a fényforrásoknak a kapcsolatát. Mindegyik modell egy -egy speciális fényeffektus figyelembevételét teszi lehetővé. Egy fotorealisztikus kép elkészítésénél több modellt is használunk. Ismertebb megvilágítási modellek: 1. Általános háttérmegvilágitás ( ambient light ), amikor az objektumok saját színükkel sugároznak.

A számítógépes grafika elméleti alapjai / 57239148 / 51 2. Diffúz fényvisszaverődés ( diffuse reflection ), amely matt felületekre jellemző. 3. Csillogó ( fénylő ) fényvisszaverődés ( specular reflection ), amely fénylő felületekre jellemző. 4. Tükröződő fényvisszaverődés ( total reflection ), amely tükörként viselkedő felületekre jellemző. 5. Átlátszóság ( transparency ), mely olyan testekre jellemző, melyeken a fénysugár teljes egészében vagy részben áthalad. 6. Árnyék ( shadow ). A realisztikus képek előállitásához az egyes megvilágítási modelleket a testek anyagi minőségétől függően különböző mértékben használhatjuk fel pl. Anyagfajta Ambient Diffuse Specular Reflection Transparency Kréta erős erős - - - Csiszolt fém - - erős erős - Üveg - - erős átlagos erős Biliárdgolyó átlagos gyenge erős átlagos - A lokális megvilágítási modellekben az objektum színét, világosságát más objektumok nem befolyásolják, ezek csak az objektumtól, a fényforrástól és a nézőponttól függnek. Ilyenek a háttérmegvilágitás, valamint a diffúz és a csillogó fényvisszaverődés. A globális megvilágítási modellekben az objektumok színe nemcsak a fényforrásoktól, hanem más objektumokon áthaladó, illetve más objektumok által visszavert fénytől is függ. Ambient light: Itt nincs fényforrás, az objektumok "saját" fényüket bocsátják ki. Ez megfelel annak, hogy a jelenetet egy irányfüggetlen, szórt fény világítja meg. A megvilágított felületi pont intenzitását leíró megvilágítási egyenlet:

A számítógépes grafika elméleti alapjai / 57239148 / 52 I = k a.i a ahol I a a megvilágított felületelem saját intenzitása, k a a háttér megvilágítás erőssége, mely a jelenet összes objektumára azonos. A háttér k a megvilágitás erősségének mértékét a felhasználó állíthatja be. Ha k = 0, akkor az árnyékban lévő objektumok feketék, k növekvő értékével pedig az objektumok árnyéktere egyre jobban lesz megvilágítva. ( k = 0 érték a világűr viszonyainak felel meg. Diffúz visszaverődés ( diffuse reflection ): A diffúz visszaverődés a matt felületek jellemzője, ezek a Lambert - féle megvilágítási törvényekkel modellezhetők. Ezért a megvilágítási egyenlet pontszerű, I p intenzitású fényforrás esetén: I p =f an.i p.k d.cos(n,l) ahol: f an = a fényforrás távolságtól függő gyengülését kifejező tényező. k d = a felület anyagi minősége szerint beállítandó 0 és 1 közé eső diffúz visszaverődési együttható. cos ( n,l ) = a felület felületi normálisa és a fénysugár iránya által bezárt szög A gyakorlatban a diffúz visszaverődést és a szórt háttérfényt együttesen szokták alkalmazni. Az eddigiek monokromatikus fényforrásokra vonatkoztak, de a megvilágítási egyenletek könnyen általánosíthatók színes megjelenítésre is. Fényes fényvisszaverődés: ( specular reflection ): A sima felületek produkálnak ilyet, nevezetesen hogy a felületen fényes foltokat látunk és a nézőpont változtatatásával ezek is elmozdulnak. Más néven irányított diffúz visszaverődésnek, vagy Phong féle megvilágítási modellnek nevezzük. A Phong féle megvilágítási egyenlet az alábbi formátumú: I = f an.i p.k s.(cos(v,r)) n

A számítógépes grafika elméleti alapjai / 57239148 / 53 ahol k s = a felület fényvisszaverő képességét jellemző specular visszaverődési együttható cos (v,r) = az ideális tükrözésnél kilépő fénysugár és a nézőpont iránya által bezárt szög koszinusza n = az anyag simaságára jellemző specular visszaverődési kitevő Lokális megvilágítási algoritmusok: A megvilágítási modellek alapján a jelenetben szereplő minden egyes objektum minden egyes pontjára meghatározható a pontnak megfelelő pixel szín és intenzitásértéke. A szín és intenzitásértékek minden egyes pontra való meghatározása a számítógép számára is túl hosszú idő lenne. Ha a test határoló felülete poligonokból áll, akkor ( feltéve, hogy fényfolthatással nem kell számolnunk ) elegendő a poligon egy pontjához tartozó szín és intenzitásértéket meghatározni és ezt követően a poligont ezzel a színnel kitölteni. Ebben az esetben a kiszámítás műveleti igénye nem a felületi pontok számával, hanem a testet borító poligonok darabszámával lesz arányos. Így a nem poligon határolta testeket a megvilágítás kiszámításához sokszögekkel, leggyakrabban háromszögekkel szokták közelíteni. A sokszögekre bontott testekre dolgozták ki a lokális megvilágítási algoritmusokat, amelyekkel elég finom felbontás esetén a görbült felületeket is jól meg tudjuk jeleníteni. A legfontosabbak: Flat shading

A számítógépes grafika elméleti alapjai / 57239148 / 54 Gouraud shading Phong Shading

A számítógépes grafika elméleti alapjai / 57239148 / 55 Flat shading: az objektumok árnyalásának az a legegyszerűbb módja, hogy minden egyes poligont azonos színnel jelenítünk meg, ez a constant vagy flat shading. Az eljárás a szórt háttérvilágítás és a diffúz visszaverődés együttes megvilágítási modelljét használja, ezért egy felületi sokszög színének meghatározásához elegendő a poligon normálvektorának kiszámítása és a fényforrás jellemzőinek ismerete. Gouraud shading: Az interpolált árnyalás technikáját először háromszög közelitésű testekre dolgozták ki, melyet Gouraud általánosított tetszőleges poligonokra. Más néven intenzitás interpoláló eljárásnak mondjuk. 1. Minden csúcspontban, ahol háromszögek találkoznak, kiszámítjuk a találkozó lapokhoz tartozó normálisok átlagát, így kapunk csúcspontonként egy ún. "pszeudo-normálist". 2. A szórt háttérvilágítás és a diffúz visszaverődés megvilágítási modellje alapján kiszámítjuk a modelltérben a csúcsok intenzitásértékét a pszeudo-normálisból. 3. Vetítjük a háromszögeket a képsíkra és itt a csúcsok intenzitás értékeit interpoláljuk az élekre és lapokra. Phong shading: A normálvektor interpoláló árnyalásnak is mondott eljárásban a felületi normálvektorokat interpoláljuk és nem az intenzitásértékeket. Specular visszaverődési modell esetén jelentős a különbség a Gouraud és a Phong árnyalás között, az utóbbi sokkal élethűbben adja vissza a felületeken megjelenő fényfoltokat.