Grafika 2. ZH H csoport megoldás

### **1. Ismertesse, hogy mi a min/max teszt alapgondolata!**

Az objektumok vetületeit téglalapokkal vesszük körül, és ha ezeknek a téglalapoknak nincs közös része, akkor biztosak lehetünk abban, hogy a vetületeknek megfelelő felületek sem fedik egymást.

### **2. Mit nevezünk lokális és globális megvilágítási modellnek? Mutassa be az algoritmus lényegét!**

A lokális megvilágítási modellekben az objektumok színét, világosságát más objektumok nem befolyásolják, ezek csak az objektumtól, a fényforrásoktól és a nézőponttól függnek. Ilyenek a háttérmegvilágítás, valamint a diffúz és csillogó fényvisszaverődés.

A globális megvilágítási modellekben az objektumok színe nem csak közvetlenül a fényforrásoktól, hanem a más objektumokon áthaladó, illetve a más objektumok által visszavert fénytől is függ. A modelltér objektumainak kölcsönhatását figyelembe kell venni a tükröződő fényvisszaverésnél, az árnyékképzésnél és az átlátszóság kezelésénél.

### **3. Melyek a raytracinggel készített képek fontosabb jellegzetességei ? Mi a rekurzív sugárkövetés lényege ? Ismertesse a rekurzív sugárkövetés algoritmusát! Mit értünk backward raytracing alatt? Mikor lesz egy pixelnek elsődleges színe a sugárkövetéses algoritmusnál ?**

 objektumok egymásra vetett árnyékai,

 többszörös tükröződések,

 átlátszóság kezelése fénytöréssel.

A rekurzív sugárkövetés algoritmusának alapelve egy mondatban megfogalmazható: a 3D-s modelltérben definiált objektumok és fényforrások alapján a nézőpontból a geometriai optika törvényei szerint követve a többszörösen visszaverődő és megtörő fénysugarakat egy fotóminőségű képet számolunk ki és jelenítünk meg.

A rekurzív sugárkövetés algoritmusához a 3D-s térben definiáljuk a megfigyelő nézőpontját és egy ablakot, amelyet a képernyő felbontásának megfelelő számú cellára felosztunk. (Tehát például 800×600- as felbontás esetén ez 480.000 cellát jelent.) A fény terjedésével ellentétben nem a fényforrásokból kiinduló sugarakat kezdi vizsgálni, hanem azokat a nézőpontból indított vetítősugarakat elemzi, amelyek visszafelé eljutnak a fényforrásba. Ezt a megoldást „hátrafelé történő sugárkövetésnek”, vagy backward raytracingnek nevezik.

Ha egy elsődleges sugár visszaverődve egy felület egy pontjáról „eltalál” egy fényforrást, és nem kell tükröződést illetve fénytörést figyelembe venni, akkor az elsődleges sugár képzésénél felhasznált cellának megfeleltetett pixel színe a megvilágítási modellből közvetlenül számítható.

### **4. Ismertesse az OpenGl rendering pipeline-jét! Hogyan adjuk meg a primitíveket az OpenGl-ben? Mikor történik a fényforrások hatásának a figyelembe vétele az OpenGl-ben? Mi történik raszterizálás során az OpenGl-ben? Mire szolgálnak a képtöredékek (fragments) az OpenGl-ben? Milyen a feladatmegosztás az OpenGl és a Windows között?**

A grafikus információkat a rendszerrel csúcsponti adatok (vertex) formájában közölhetjük.A következő lépésben az OpenGL a primitíveket egy vetítéssel leképezi a látótérbe. Ebben a fázisban történik a fényforrások kihatásainak figyelembe vételéhez szükséges számítások elvégzése is.Az úgynevezett raszterizálással megtörténik az átalakítás 2D-s egész koordinátákra. Ekkor veszi a rendszer figyelembe a különböző bitmap és pixelmezőket, amelyek közé számítják a textúrákat is. A raszterizálás során kapott pontokhoz a színértékek és a pont z értéke is hozzá lesz rendelve.

A raszterizálás után kapjuk a képtöredékeket (fragments), amelyek alapján z-buffer eljárással határozzák meg a végső láthatóságot. Az OpenGL megengedi, hogy a frame bufferből adatokat kiolvassunk.

A rendering pipeline utolsó lépését a frame bufferből való képkirajzolást a monitor képernyőjére nem az OpenGL, hanem az alkalmazott ablakozó rendszer hajtja végre. Ez összhangban van az OpenGL alapkoncepciójával, amely szerint a konfiguráció és grafikus input készülék vezérlése a Windows feladata. Így például a Windows kezeli a képernyő ablakait, a színtáblázatot stb.

### **5. Soroljon fel három kereskedelmi forgalomban kapható, majd három ingyenesen használható grafikus szoftvert! Fogalmazza meg, jellemzően milyen területen használjuk azokat, mi az egyedi bennük/miben különböznek az elérhető más szoftverektől !**

 Autodesk Mental ray – azért a legnépszerűbb, mert integrálták a Mayaba. Magas minőségben képes képek rendelésére sugárkövetéssel: használják a filmiparban, műsorszórásban, digitális könyvkiadásban és látványtervezésben.

 SketchUp, épületek és nem organikus modellek készítésére tervezték. Rugalmas és megfizethető ára miatt játék- és animáció-készítésben is használják.

 Adobe Photoshop CC - viszonylag magas árú, sokoldalúan használható, főleg fotómanipulálás terén népszerű

Ingyenesen használható szoftverek:

 Make Human – a vele készített karakterek használhatók pl a Blenderben úgy, hogy a csontváz megfelelősen van súlyozva a vertexekhez, a karakternek van ruhája és haja. A karakter megjelenése/jellemzése grafikus felületesen intuitíven adhatók meg.

 Wings3D – Izware által fejlesztett, ingyenes, nyílt forráskódú hierarchikus felületelosztásos modellező program.