Tájékoztató a Számítógépi grafika c. tantárgyhoz

(programtervező, gazdasági és műszaki informatikus szak)


 Előadó: Piller Imre egyetemi tanársegéd


A tárgy lezárásának módja:            

A félévet aláírás és kollokvium zárja.  

A félév elismerésének, az aláírás megszerzésének feltételei:

Egy saját témában választott feladat specifikálása, fejlesztése, határidőre történő elkészítése, személyes bemutatása, az alkalmazással és elkészítésével kapcsolatos kérdések megválaszolása.

A feladatok ki- és beadásának időpontja, értékelésének módja:            

A hallgató a feladatot gyakorlatvezetőjétől kapja, és neki adja be. Törekszünk arra, hogy a feladat kapcsolódjék valamely más tárgyból kapott feladathoz. A ki- és beadási határidőket az ütemterv tartalmazza. Az elégséges szint azt jelenti, hogy a megoldás elvi hibát nem tartalmaz, a program működőképes, áttekinthető, követhető, valamint a hallgató ismertetni és indokolni tudja megoldását. A hallgató a félévi munkájára osztályzatot kap, amely eredményes vizsgadolgozat esetén beszámít a vizsgajegybe.   

Zárthelyi dolgozatok, feladatok pótlásának feltételei:            

Azoknak a hallgatóknak, akik nem szerezték meg az aláírást, a hiányzó feladatot pótolniuk kell az engedélyezett időpontig.

A számonkérés módja:            

A félév végén a tárgy anyagából vizsgára kerül sor. A vizsga anyaga a félév előadásain és gyakorlatain elhangzott tananyag. A vizsga kötelező írásbeli és választható szóbeli részből áll. Az írásbeli dolgozat alapján meghatározásra kerül egy jegy. Az elégséges osztályzathoz 50%-os teljesítmény szükséges. Ha a hallgató nem fogadja el a dolgozatra kapott jegyet, akkor azt szóban, a tárgy témakörében feltett kérdésekre válaszolva javíthatja. A szóbeli vizsga kérdései az írásbeli részéhez hasonlóak egyaránt elméleti és számításos feladatok lehetnek. A számonkérések során a meg nem engedett eszközök, segítség használata automatikusan elégtelen osztályzatot von maga után. A vizsgajegybe az évközi munka az alábbiak szerint számít be:

 K2.png

ahol E az évközi munkára, V a vizsgadolgozatra (és az esetleges szóbelire) kapott jegy.


Előadás jegyzet 

Ajánlott irodalom: 

Juhász Imre, Lajos Sándor: Számítógépi grafika

Juhász Imre: OpenGL, mobiDIÁK könyvtár, 2003.

Szirmay-Kalos László, Antal György, Csonka Ferenc: Háromdimenziós grafika, animáció és játékfejlesztés, 2003.

Steve Marschner, Peter Shirley: Fundamentals of Computer Graphics, CRC Press, 2016.

James D. Foley, Andries van Dam, Steven K. Feiner, John Hughes, Morgan McGuire, David F. Sklar, Kurt Akeley: Computer Graphics: Principles and Practice, Addison-Wesley, 1990.

Samuel R. Buss: 3D Computer Graphics: A Mathematical Introduction with OpenGL, Cambridge University Press, 2003. 

SDL2 könyvek, leírások

Brian W. Kernigham, Dennis M. Ritchie: The C Programming Language, 2002.

 


 ÜTEMTERV

Hét Előadás Gyakorlat
1. Koordinátarendszerek, vektorok, normál vektorok, transzformációk, mátrix verem, színterek, színmélység, pont-egyenes, pont-sík távolsága Fejlesztőkörnyezet beüzemelése. C struktúrák használata.
2. Grafikus input és output eszközök, raszteres és vektorgrafikus megjelenítés Vektorokkal, mátrixokkal, transzformációkkal kapcsolatos feladatok.
3. Rajzoló algoritmusok: szakaszok rajzolása, élsimítás, háromszög kitöltés, ellipszis rajzolása, képelemek vágása, floodfill algoritmus, szoftveres eszközök, GUI toolkit-ek, esemény- és programvezérelt programozás, interaktív grafikus felületek kialakítása, az SDL függvénykönyvtár Szakaszok és körök rajzolásával kapcsolatos feladatok.
4. Térbeli objektumok ábrázolása síkon: perspektivikus és orthogonális vetítés, a kamera működése és beállítása Pong példával kapcsolatos feladatok.
5. Láthatóság, takarási probléma, Z-buffer, triviális lapeldobás, félig átlátszó felületek megjelenítése, modellformátumok (pl.: WaveFront OBJ) Kamerakezeléssel, objektumok megjelenítésével kapcsolatos feladatok.
6. Árnyalás (konstans, Gourand, Phong), fények, anyagjellemzők, árnyaló (shader) programozás Fényekkel, anyagjellemzőkkel kapcsolatos feladatok.
7. Textúrázás, képformátumok, bilineáris interpoláció, textúra piramisok Textúrázással kapcsolatos feladatok.
8. Animáció, csontozás. Fotorealisztikus képszintézis: sugárkövetés, globális illumináció Féléves feladat választása.
9. Szünet Szünet
10. Grafikus szabványok, rendszerek: modern OpenGL, DirectX, Vulkan, WebGL Féléves feladat készítése, azzal kapcsolatos konzultáció.
11. Speciális megjelenítési módok: árnyék, víz, tűz, stencil buffer, tükrök Féléves feladat készítése, azzal kapcsolatos konzultáció.
12. Szövegek megjelenítése: fontok, raszterizálás, kerning, GUI elemek Féléves feladat készítése, azzal kapcsolatos konzultáció.
13. Ütközésvizsgálat, LOD, environment mapping, bump mapping, displacement mapping Féléves feladat készítése, azzal kapcsolatos konzultáció.
14. Aktuális kutatások, eredmények a számítógépi grafikában: light paths, Gaussian splatting, Unreal Engine, Unity Engine Féléves feladat készítése, azzal kapcsolatos konzultáció.