Přednáška v češtině se koná každou STŘEDU OD 14:00 v posluchárně S3 (Malá Strana)
(informace o anglické přednášce)
Cvičení jsou rozdělena do několika skupin, viz rozvrh v SISu.
Přednášky 2024/25: nová videa budou vznikat jen výjimečně, playlist je z archivu
Playlist
přednášek 2022/23.
Cvičení 2024/25:
Playlist
cvičení 2024/25. Je tam záznam prvního cvičení, další zatím neplánuji.
POZOR: neplatí konkrétní úlohy a zmínky o Microsoft Teams (Teams už nepoužíváme).
Archiv
přednášek 2020/21.
Archiv
cvičení 2023/24.
Archiv
cvičení 2022/23.
Archiv
cvičení 2021/22.
Archiv
cvičení 2020/21.
Data přednášek a cvičení se vztahují k výuce J. Pelikána, u ostatních se mohou dny lišit.
Plán přednášek a cvičení, motivační příklady ze života, literatura, ostatní přednášky..
Systém cvičení, za co je zápočet, předvedení programovacího prostředí
(jazyk C#, MS Visual Studio, GIT repository, AI asistenti).
GIT repository NPGR003-24
a jak s ní pracovat! Úkol 00-GIT.
ChatGPT konverzace o command-line programu, který má vytvořit obrázek
s dvojbarevnou šachovnicí (ukazuje se tam i knihovna SixLabors.ImageSharp)
je archivován zde.
Video:
Úvodní video 2024/01 –
zápočet, tabulka bodů, GIT repo, ChatGPT ukázka
Lidský zrak a jeho vlastnosti (fyziologie a psychologie, vady), světelné spektrum, metamery, obraz a jeho reprezentace v počítači, základní barevný systém RGB, doporučení pro používání barev. Rastrová a vektorová grafika. Virtuální barevná primitiva XYZ, barevný gamut displeje, barevné systémy CIE-xyY, RGB, CMY(K), HSV (zatím jen stručně)
Barva v SixLabors.ImageSharp (Rgba32), formáty pixelu, převod RGB <-> HSV,
Adobe Color online,
rastrový obrázek v SixLabors.ImageSharp (Image
Opakování: RGB a HSV prostor, aditivní a subtraktivní skládáni barev,
CMY(K), převody RGB<->HSV, barevné standardy.
Gamma korekce a mýty s ní spojené.
Úvod do rastrových formátů: pořizování rastrového obrazu.
Jména barev X11 color names.
Vektorový formát SVG
(PDF prezentace),
adresář s jednoduchými SVG příklady.
Ukázka gamma (testovací rastry: Gamma 1,
Gamma 2 (color)).
Pixelové formáty, ukládání obrazu, základní grafické formáty a jejich použití (PNM/PGM, PNG, GIF, JPEG). JPEG komprese, [ukázky artefaktů a velikostí souborů ze slajdů].
Ukázky grafických formátů, artefakty JPEG komprese prakticky, porovnání kvality a velikosti zkomprimovaných obrázků, prakticky s IrfanView.
HDR grafika, pořizování HDR obrazu vícenásobnou expozicí, ukázky HDR souborů (Picturenaut), tone-mapping. Příklady – viz HDR stránka. Průhledné obrázky a operace s nimi (kompozice pomocí alfa-kanálu).
HDR: pořízení HDR obrázku vícenásobnou expozicí
(Picturenaut).
Ukázky operací s průhledností (alpha channel) –
ukázka Genesis Effect
z filmu "Star Trek II".
Histogram a operace s ním, ekvalizace, přechodová funkce, filtrace konvolucí,
rank-filtry, umělecké efekty.
Základy rasterizace (kreslení grafických primitiv do rastrového obrazu):
úsečka.
Ukázky: filtry (medián, rozmazání...) v GiMP
Jak vyrobit video z jednotlivých obrázků.
Rasterizace – pokračování: úsečka (Bresenham = midpoint), kružnice, vyplňování n-úhelníka, anti-aliasing.
Ukázky rasterizace v JaGrLib: lines (sBresenham.xml),
anti-aliased lines (sAntialias.xml),
ellipses – 2 algorithms (sEllipse.xml,
Bresenham's circle,
Bond's general ellipse),
polygon (sPolygon.xml), polygon with anti-aliasing (sPolygonAnti.xml),
Gallery – anti-aliased polygon fill, thick line clipping.
Přehled volitelných přednášek – rasterizace: složitější křivky (diferenční algoritmus na kubickou křivku),
flood-fill.
Zbytek 2D grafiky: kreslení písma, kódování obrazu/masky – RLE, quad-tree,
X-transition list.
Schéma 3D grafického systému, lineární geometrické transformace,
maticové transformace, homogenní souřadnice.
Přehled volitelných přednášek – dokončení: ořezávání, půltónování a rozptylování,
palety, redukce počtu barev (GIF), [Ukázky půltónování, redukce barevné palety..]
Motivační ukázky 3D grafiky (Euro Truck Simulator 2,
CS, Virtual-O).
Základy OpenGL I:
architektura GPU, pipeline s shadery, základ zobrazování 3D scény.
Video (2020/21),
Video part I (2022/23),
Video part II (2022/23),
Dokončení transformací: konstrukce složených zobrazení, vzájemný převod souřadných systémů,
klasifikace lineárních projekcí, rovnoběžné a středové promítání,
implementace projekčních transformací, perspektivně korektní interpolace...
Objemové a povrchové reprezentace 3D scén: buňky, octree, CSG,
Základy OpenGL II:
posloupnost souřadných systémů a transformací v OpenGL,
data posílaná na GPU, kreslená primitiva, shadery...
Ukázky
OpenGL v Silk.NET, příklady z našeho GITu:
Silk3D – 01-FlatWorld
a 02-Trackball.
[Ukázky z 3D grafiky v GrCis: 086shader, 048rtmontecarlo-script.]
VHS(T), Atributy vrcholů a stěn, okřídlená hrana, půlhrana, trojúhelníkové sítě, corner table, Eulerovy operátory.
Případně ještě Ukázky
Open v Silk.NET, příklady z našeho GITu:
Silk3D – 01-FlatWorld
a 02-Trackball.
Zmínka o stínování (GrCis: 086shaders), jen na ukázku k nové úloze.
Hierarchický model obecně, scene graph, hierarchie transformací.
Transformace normálových vektorů, posloupnost souřadných soustav v OpenGL.
Reprezentace orientace: Eulerovy úhly, kvaterniony, interpolace kvaternionů, SLERP.
Animační křivky: aproximace a interpolace, spline křivky, Hermitova interpolace,
Catmul-Rom, Kochanek-Bartels... aplikace na trajektorii i orientaci,
aplikace na polohu i orientaci (myšlenka kvaternionového spline)
Ukázka animačních křivek a kvaternionů (Sample05, Sample06 z
ogl repository).
[Praktická ukázka projektu 086shaders s dalšými technickými detaily (podle času).]
Ještě jednou příklady z našeho GITu:
Silk3D – 01-FlatWorld
a 02-Trackball.
Malířův algoritmus a hloubkové třídění, Z-buffer.
Jednoduchý model osvětlení (Phong) – normálové vektory, bodový zdroj světla, atributy materiálu.
Konstantní a spojité stínování – Gouraudova a Phongova metoda.
Praktická ukázka projektu 086shaders znova podrobněji stínování...
Ukázky odevzdaných animací (úloha
05-Animation) .
Základy paprskového zobrazování: CSG, ray-casting, ray-tracing.
[Začlenění stínování do GPU pipeline (shadery) a do paprskových metod (ray-tracing)]
Jaké přednášky navazují v LS.
Ukázky stínování, ray-casting a ray-tracing prakticky (grcis), ukázky moderního Monte-Carlo
renderingu (Corona renderer?), další detaily 3D úloh, pokud bude zájem.
Připravte si dotazy, budeme mít čas se jim věnovat!
Na této stránce si přečtěte příklady otázek, se kterými se můžete setkat u zkoušky.
Copyright (C) 2001-2024 J.Pelikán, last change: 2024-12-11 10:29:22 +0100 (Wed, 11 Dec 2024)