Detail předmětu

Základy počítačové grafiky

FIT-IZGAk. rok: 2022/2023

Přehled základních principů počítačové grafiky (vektorová, rastrová) a jejich důsledků pro tvorbu reálných grafických aplikací. Specifikace základních operací rovinné (2D) a prostorové (3D) počítačové grafiky. Specifikace principů a použití hlavních grafických rozhraní. Metody a algoritmy pro: rasterizaci úseček, kružnic a křivek (Bezier, NURBS), ořezávání polygonů, vyplňování vektorových i rastrových uzavřených oblastí. Metody a algoritmy pro: transformaci objektů ve 2D a 3D, řešení viditelnosti, osvětlení, stínování, texturování. Základní principy metod fotorealistického zobrazení 3D scén. Metody geometrické reprezentace 3D objektů. Problematiku vzniku aliasu a metody jeho odstranění.

Jazyk výuky

čeština

Počet kreditů

6

Výsledky učení předmětu

  • Studenti porozumí základním principům rovinné (2D) a prostorové (3D) počítačové grafiky.
  • Studenti porozumí základním principům a použití hlavních grafických rozhraní.
  • Seznámí se s 2D algoritmy pro rasterizaci a ořezávání objektů a vyplňování oblastí.
  • Seznámí se s 3D algoritmy pro transformace objektů, řešení viditelnosti, osvětlení, stínování a texturování.
  • Seznámí se s metodami pro fotorealistické zobrazení 3D scén.
  • Seznámí se s metodami geometrické reprezentace 3D objektů.
  • Porozumí principům vzniku aliasu a metodám antialiasingu.
  • Naučí se vytvářet grafické aplikace pro zobrazení rastrových i vektorových dat.

Prerekvizity

   - Je nezbytné mít základní znalosti programování v jazyku C.

Způsob a kritéria hodnocení

  • Projekt - 20 bodů.
  • Plnění úkolů na cvičeních, 6 x 3 bodů - 18 bodů.
  • Půlsemestrální test - 10 bodů.
  • Závěrečná písemná zkouška - 52 bodů.
  • Minimum pro závěrečnou písemku je 20 bodů.
  • Hranice pro úspěšné absolvování předmětu podle pravidel ECTS - 50 bodů.

Učební cíle

Získat přehled v oblasti základních principů rovinné (2D) a prostorové (3D) počítačové grafiky. Seznámit se základními algoritmy a metodami tvorby grafického zobrazení vektorových objektů ve 2D a 3D scénách, především: rasterizace 2D objektů; ořezávání a vyplňování 2D oblastí; transformace objektů; řešení viditelnost, osvětlení, stínování a texturování 3D objektů. Seznámit s principem a použitím hlavních 2D a 3D grafických rozhraní. Naučit se získané znalosti implementovat a používat v reálných grafických aplikacích.

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

  • Bodovaný projekt studenti odevzdávají elektronicky prostřednictvím informačního systému a je hodnocen na konci semestru.
  • Počítačová cvičení jsou hodnocena v jejich průběhu.
  • Písemná půlsemestrální a závěrečná písemka.
  • V odůvodněných případech lze cvičení nahradit v jiném, než zapsaném termínu a půlsemestrální zkoušku rozšířením závěrečné zkoušky.

Základní literatura

Beneš, B., Sochor, J., Felkel, P., Žára, J.: Moderní počítačová grafika, 2. vydání, ComputerPress, 2005 (CS)

Doporučená literatura

Course slides and lecture recordings (EN)
Gomes J., et al., Computer Graphics: Theory and Practice, CRC Press, 2012.
Hughes, John F., et al., Computer Graphics: Principles and Practice, Third Edition, Addison-Wesley, 2014
Lengyel, E.: Mathematics for 3D Game Programming and Computer Graphics, Third Edition, 3rd Edition, 2012
Materiály k přednáškám a video záznamy přednášek (CS)
Sellers, G., et al., OpenGL Superbible: Comprehensive Tutorial and Reference, 7th Edition, 2015.
Watt, Alan H., 3D Computer Graphics, 3rd Edition, Addison-Wesley, 1999. 

Elearning

Zařazení předmětu ve studijních plánech

  • Program BIT bakalářský 2 ročník, letní semestr, povinný
  • Program BIT bakalářský 2 ročník, letní semestr, povinný

  • Program IT-BC-3 bakalářský

    obor BIT , 2 ročník, letní semestr, povinný

  • Program BAK-MIn bakalářský 2 ročník, letní semestr, volitelný
  • Program BPC-IBE bakalářský 0 ročník, letní semestr, volitelný
  • Program BPC-TLI bakalářský 0 ročník, letní semestr, volitelný
  • Program BPC-EKT bakalářský 0 ročník, letní semestr, volitelný
  • Program BPC-AMT bakalářský 0 ročník, letní semestr, volitelný
  • Program BPC-MET bakalářský 0 ročník, letní semestr, volitelný
  • Program BPC-SEE bakalářský 0 ročník, letní semestr, volitelný

  • Program BPC-AUD bakalářský

    specializace AUDB-ZVUK , 0 ročník, letní semestr, volitelný
    specializace AUDB-TECH , 0 ročník, letní semestr, volitelný

  • Program VUB bakalářský

    obor VU-D , 2 ročník, letní semestr, volitelný
    obor VU-IDT , 2 ročník, letní semestr, volitelný
    obor VU-VT , 2 ročník, letní semestr, volitelný
    obor VU-VT , 2 ročník, letní semestr, volitelný
    obor VU-VT , 2 ročník, letní semestr, volitelný
    obor VU-VT , 2 ročník, letní semestr, volitelný
    obor VU-IDT , 2 ročník, letní semestr, volitelný
    obor VU-IDT , 2 ročník, letní semestr, volitelný
    obor VU-IDT , 2 ročník, letní semestr, volitelný
    obor VU-IDT , 2 ročník, letní semestr, volitelný
    obor VU-VT , 2 ročník, letní semestr, volitelný
    obor VU-D , 2 ročník, letní semestr, volitelný
    obor VU-VT , 2 ročník, letní semestr, volitelný
    obor VU-IDT , 2 ročník, letní semestr, volitelný
    obor VU-D , 2 ročník, letní semestr, volitelný
    obor VU-IDT , 2 ročník, letní semestr, volitelný

Typ (způsob) výuky

 

Přednáška

39 hod., nepovinná

Vyučující / Lektor

Osnova

  1. Rastrová a vektorová grafika. Barvy a barevné modely. Redukce barevného prostoru, barevný a monochromatický obraz.
  2. Generování základních objektů v rastru.
  3. Vyplňování uzavřených oblastí.
  4. Transformace ve 2D a 3D.
  5. Základy vykreslování 3D scény, 3D transformace a projekce.
  6. Základní principy 2D grafických API, minimalistické 2D kreslítko.
  7. Antialiasing. Ořezání ve 2D a 3D.
  8. Křivky v počítačové grafice.
  9. Reprezentace 3D objektů.
  10. Lokální osvětlovací modely a spojité stínování ploch. Úvod do OpenGL.
  11. Řešení viditelnosti 3D objektů.
  12. Textury a texturování. Moderní počítačová grafika a 3D grafická API.
  13. Základy fotorealistického zobrazování, raytracing a radiozita.

Cvičení na počítači

12 hod., nepovinná

Vyučující / Lektor

Osnova

  1. Redukce barevného prostoru.
  2. Generování základních objektů v rastru.
  3. Vyplňování uzavřených objektů ve 2D.
  4. 3D Transformace.
  5. Zobrazování 2D křivek v rastru.
  6. Zobrazování 3D scény a základy OpenGL.

Projekt

14 hod., nepovinná

Vyučující / Lektor

Osnova

Samostatně řešený projekt vztahující se k problematice předmětu.

Elearning