Detail předmětu
Základy počítačové grafiky
FIT-IZGAk. rok: 2018/2019
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
Počet kreditů
Garant předmětu
Zajišťuje ústav
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.
- Student se naučí řešit jednoduché problémy, individuálně i v týmu, formou domácích úkolů.
- Zdokonalí se v praktickém užívání programátorských a ladících nástrojů jakož i v praktickém užívání programovacího jazyků C/C++.
Prerekvizity
- Je nezbytné mít základní znalosti programování v jazyku C.
Způsob a kritéria hodnocení
- Projekt - 18 bodů.
- Plnění úkolů na cvičeních, 6 x 3 bodů - 18 bodů.
- Půlsemestrální písemka - 12 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ů.
Podmínky zápočtu:
Pro získání zápočtu a tím pro připuštění ke zkoušce musí student získat celkově nejméně 20 bodů dohromady z projektu, cvičení a půsemestrální písemky. Pokud však bude odhalena nedovolená spolupráce na projektech (plagiátorství), zápočet nebude udělen a dále bude zváženo zahájení disciplinárního řízení.
Učební cíle
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
Doporučená literatura
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.
Zařazení předmětu ve studijních plánech
Typ (způsob) výuky
Přednáška
Vyučující / Lektor
Osnova
- Rastrová a vektorová grafika. Barvy a barevné modely. Redukce barevného prostoru, barevný a monochromatický obraz.
- Generování základních objektů v rastru.
- Antialiasing. Ořezání ve 2D.
- Vyplňování uzavřených oblastí.
- Transformace ve 2D a 3D.
- Základní principy 2D grafických API, minimalistické 2D kreslítko.
- Křivky v počítačové grafice.
- Základy vykreslování 3D scény, 3D transformace a projekce.
- Reprezentace 3D objektů.
- Lokální osvětlovací modely a spojité stínování ploch. Úvod do OpenGL.
- Řešení viditelnosti 3D objektů.
- Textury a texturování. Moderní počítačová grafika a 3D grafická API.
- Základy fotorealistického zobrazování, raytracing a radiozita.
Cvičení na počítači
Vyučující / Lektor
Osnova
- Grafické formáty, redukce barevného prostoru obrazu.
- Generování základních objektů v rastru.
- Zobrazování 2D spline křivek.
- Vyplňování uzavřených objektů ve 2D.
- 3D transformace.
- Základy OpenGL.
Projekt
Vyučující / Lektor
Osnova