Název:

Základy počítačové grafiky

Zkratka:ZPG
Ak.rok:ukončen 2004/2005
Semestr:letní
Studijní plán:
ProgramOborRočníkPovinnost
EI-BC-3VTB2.st/1.rčpovinný
EI-MGR-3VTN1.povinný
EI-MGR-5VTI2.st/1.rčpovinný
Vyučovací jazyk:čeština
Kredity:6 kreditů
Ukončení:zkouška (písemná)
Výuka:
hod./sempřednáškasem./cvičenílab. cvičenípoč. cvičeníjiná
Rozsah:3900260
 zkouškatestycvičenílaboratořeostatní
Body:00000
Garant:Kršek Přemysl, doc. Ing., Ph.D., UPGM
Přednášející:Kršek Přemysl, doc. Ing., Ph.D., UPGM
Cvičící:Beran Vítězslav, Ing., Ph.D., UPGM
Herout Adam, prof. Ing., Ph.D., UPGM
Kadlec Jaroslav, Ing., UPGM
Kršek Přemysl, doc. Ing., Ph.D., UPGM
Pečiva Jan, Ing., Ph.D., UPGM
Potúček Igor, Ing., Ph.D., UPGM
Španěl Michal, Ing., Ph.D., UPGM
Fakulta:Fakulta informačních technologií VUT v Brně
Pracoviště:Ústav počítačové grafiky a multimédií FIT VUT v Brně
Navazující:
Počítačová grafika (POG), UPGM
 
Cíle předmětu:
  Získání znalostí k vytvoření aplikací schopných vizualizovat plošné a prostorové scény formou počítačové grafiky. Seznamení studenta se základními moderními algoritmy prostorové počítačové grafiky.

Anotace:
  Předmět obsahuje témata zahrnující popis základních algoritmů 2D a 3D počítačové grafiky. Prezentuje metody rasterizace základních grafických primitiv, postupy transformace, řešení osvětlení, viditelnosti a zobrazení prostorových objektů scén. Jsou vysvětleny praktické metody reprezentace objektů a jejich realistické vizualizace.

Získané dovednosti, znalosti a kompetence:
  Schopnost praktické realizace zobrazovacích algoritmů. Schopnost vytvoření grafické aplikace využívající základních metod počítačové grafiky.

Osnova přednášek:
 

  1. Úvod do současné počítačové grafiky, základní principy zobrazování [1/A4], [4/A4], [6/A4],
    barevný obraz a barevné modely [1/A4], [4/A4], [6/A4],
    monochromatický obraz, [1/A4], [4/A4], [6/A4].
  2. Generování základních objektů v rastru [1/A4], [4/A4], [6/A4],
    vyplňování uzavřených oblastí [1/A4], [4/A4], [6/A4].
  3. Ořezání ve 2D [1/A4], [4/A4], [6/A4].
  4. Křivky v počítačové grafice [1/A4], [4/A4], [6/A4].
  5. Transformace ve 2D [1/A4], [4/A4], [6/A4],
    transformace, projekce a ořezání ve 3D [1/A4], [4/A4], [6/A4].
  6. Reprezentace 3D objektů. Část 1: [1/A4], [4/A4], [6/A4], Část 2: [1/A4], [4/A4], [6/A4].
  7. Řešení viditelnosti 3D objektů [zpg_viditelnost.pdf].
  8. Lokální osvětlovací modely a spojité stínování ploch[zpg_3d_osvetleni_stinovani.pdf].
  9. Vržené stíny [zpg_stiny.pdf],
    Textury a texturování [zpg_textury.pdf].
  10. Raytracing [zpg_raytracing.pdf].
  11. Radiosita [zpg_radiosita.pdf].
  12. Obraz jako vícerozměrný signál, antialiasing.
  13. Fraktály [zpg_fractaly.pdf].


Osnova počítačových cvičení:
 

  1. Úvod do Win32 API pro grafické aplikace. (P. Kršek)
    Během cvičení bude probrány základy Win32 API s ohledem na grafické aplikace a cvičení.
    Materiály na cvičení: [main.cpp], [main.cpp.html], [makefile].
  2. Generování základních objektů v rastru. (J. Pečiva)
    Během cvičení bude probrána rasterizace úsečky Bresenhamovým algoritmem.
    Za domácí úkol bude rasterizace kružnice úsečky Bresenhamovým algoritmem.
    Materiály na cvičení: [main.cpp], [main.cpp.html], [makefile].
  3. Ořezávání ve 2D. (J. Kadlec)
    Během cvičení bude probráno ořezání úsečky.
    Za domácí úkol bude ořezání polygonu.
    Materiály na cvičení: [main.cpp], [main.cpp.html], [makefile], [main_vzor.cpp], [main_vzor.cpp.html].
  4. Vyplňování uzavřených objektů ve 2D. (I. Potůček)
    Během cvičení bude probráno semínové vyplňování.
    Za domácí úkol bude řádkový vyplňovací algoritmus.
    Materiály na cvičení: [main.cpp], [main.cpp.html], [makefile], [seed.pdf].
  5. Zobrazování 2D spline křivek. (V. Beran)
    Během cvičení bude probráno vykreslení Bezierovy kubiky.
    Za domácí úkol bude vykreslení NURBS křivky.
    Materiály na cvičení: [main.cpp], [main.cpp.html], [makefile], [deboor.htm].
  6. 3D transformace. (M. Španěl)
    Během cvičení bude na příkladu krychle probrána jedna základní transformace.
    Za domácí úkol budou doplněny zbývající transformace.
    Materiály na cvičení: [main.cpp], [main.cpp.html], [makefile].
  7. Stínování a texturování 3D objektu. (A. Herout)
    Během cvičení bude probráno Gourandovo stínování krychle.
    Za domácí úkol bude jednoduché texturování krychle.
    Materiály na cvičení: [main.cpp], [main.cpp.html], [makefile].

Pokyny pro odevzdávání domácích úkolů:
  1. Odevzdání všech souborů se provádí prostřednictvím IS FIT
  2. Soubory se odevzdávají nekomprimované, jak jsou v textové formě
  3. Odevzdávají se pouze zdrojové kódy a makefile připravený pro fungování na účebnách (nedodržení znamená ztrátu bodů)
  4. Termín odevzdání je neděle po konzultačním cvičení pro dané téma (přesný termín je uveden u každého termínu cvičení)
  5. Odevzdání po termínu = 0 bodů
  6. Přesný rozsah úkolu určuje cvičící, který také provádí hodnocení