460-4033/02 – Počítačová grafika II (PG II)

Garantující katedraKatedra informatikyKredity4
Garant předmětuIng. Petr Gajdoš, Ph.D.Garant verze předmětuIng. Petr Gajdoš, Ph.D.
Úroveň studiapregraduální nebo graduálníPovinnostpovinně volitelný
Ročník1Semestrletní
Odkaz na webJazyk výukyčeština
Rok zavedení2015/2016Rok zrušení
Určeno pro fakultyFEIUrčeno pro typy studianavazující magisterské
Výuku zajišťuje
Os. čís.JménoCvičícíPřednášející
GAJ03 Ing. Petr Gajdoš, Ph.D.
Rozsah výuky pro formy studia
Forma studiaZp.zak.Rozsah
prezenční Klasifikovaný zápočet 2+2
kombinovaná Klasifikovaný zápočet 10+5

Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi

Cílem předmětu je doplnit a rozšířit témata, se kterými se mohl posluchač seznámit v předmětu Počítačová grafika I. Jedná se zejména o práci s OpenGL a řešení dílčích úloh nad tímto API. Získané znalosti a vědomosti: - definování základních částí OpenGL API, jejich návaznost a význam - srovnání a prezentování výstupů v závislosti na změnách jednotlivých stavů OpenGL - identifikace míst v kódu způsobující nežádoucí grafický výstup, úprava kódu - zapamatování nejdůležitějších příkazů jazyka OpenGL - konstrukce složitějších grafických scén a jejich optimalizace - rozeznání společných vlastností geometrických objektů a jejich promítnutí do finálního kódu aplikace - rozlišení mezi jednotlivými osvětlovacími modely, jejich matematickou interpretací a realizací v OpenGL - pochopení základních rozdílů mezi OpenGL a GLSL Studenti budou umět využít OpenGL k vytvoření 3D scény. Cílem je, aby uměli demonstrovat své získané znalosti na konkrétní úloze.

Vyučovací metody

Přednášky
Individuální konzultace
Cvičení (v učebně)

Anotace

Náplň tohoto předmětu si klade za cíl rozšířit posluchačovy znalosti získané v předmětu Počítačová grafika I. Předpokládá se, že student dokáže přenést své znalosti do konkrétního implementačního prostředí, např. OpenGL v C++. Teoretické poznatky a charakteristiky dílčích úloh budou sloužit jako základ pro praktickou implementaci konkrétních příkladů na cvičeních. Cvičení budou korespondovat s přednáškami.

Povinná literatura:

[1] Bjarne Stroustrup. The C++ Programming Language, 4th Edition. Addison-Wesley Professional, 4th edition, 5 2013. [2] Sumanta Guha. Computer Graphics Through OpenGL: From Theory to Experiments, Second Edition. A K Peters/CRC Press, 2nd edition, 8 2014. [3] Graham Sellers, Richard S. Wright, and Nicholas Haemel. OpenGL SuperBible: Comprehensive Tutorial and Reference (6th Edition). Addison-Wesley Professional, 6th edition, 7 2013.

Doporučená literatura:

[1] Bjarne Stroustrup. The C++ Programming Language, 4th Edition. Addison-Wesley Professional, 4th edition, 5 2013. [2] Sumanta Guha. Computer Graphics Through OpenGL: From Theory to Experiments, Second Edition. A K Peters/CRC Press, 2nd edition, 8 2014. [3] Graham Sellers, Richard S. Wright, and Nicholas Haemel. OpenGL SuperBible: Comprehensive Tutorial and Reference (6th Edition). Addison-Wesley Professional, 6th edition, 7 2013. [4] Dave Shreiner, Graham Sellers, John M. Kessenich, and Bill M. Licea-Kane. OpenGL Programming Guide: The Ocial Guide to Learning OpenGL, Version 4.3 (8th Edition). Addison-Wesley Professional, 8th edition, 3 2013. [5] David Wolff. OpenGL 4 Shading Language Cookbook - Second Edition. Packt Publishing, 2nd revised edition edition, 12 2013. [6] Dan Ginsburg, Budirijanto Purnomo, Dave Shreiner, and Aaftab Munshi. OpenGL ES 3.0 Programming Guide (2nd Edition). Addison-Wesley Professional, 2nd edition, 3 2014.

Způsob průběžné kontroly znalostí během semestru

Podmínky udělení zápočtu: Řešitelská skupina odevzdá projekt, který bude řešit zadané téma. Jeho funkční část bude prezentována v rámci cvičení v zápočtovém týdnu. Každý bude mít krátkou prezentaci na zvolené téma z oblasti počítačové grafiky.

E-learning

Další požadavky na studenta

Předpokládá se, že má student znalosti programování v C, C++.

Minimální znalostní požadavky

Prerekvizity

Předmět nemá žádné prerekvizity.

Korekvizity

Předmět nemá žádné korekvizity.

Osnova předmětu

Přednášky: 1. Představení standardů OpenGL, DirectX, stručná historie, srovnání, přehled aplikačních oblastí 2. OpenGL Pipeline, zaměření na programovatelnou část pipeline, GLSL 3. Práce s buffery, způsob jejich konstrukce, možnosti využití, mapování. 4. Pokročilé stínování, materiály, práce s mnoha světelnými zdroji 5. Pokročilé techniky texturování, projekce, efekty 6. Pokročilé osvětlovací modely, ambientní okluze, apod. 7. Modelování povrchů, teselace 8. Pokročilé shadery I - efekty 9. Pokročilé shadery II – deferred shading 10. Vizualizace specifických dat – částicové systémy 11. Integrace fyzikálního modelu do scény 12. Bone systémy, L-systémy 13. Stereoprojekce 14. Herní engin Cvičení na počítačové učebně: 1. Zprovoznění demo projektu s využitím standardu OpenGL, představení základních tříd pro kontrukci scény, management scény, přidání objektů do scény 2. Vytvoření základních shaderů v jazyce GLSL, integrace do managementu scény, aplikace jednoduchých shaderů na vybraných objektech 3. Práce s buffery (geometrickými i obrazovými). 4. Pokročilé stínování, materiály, práce s mnoha světelnými zdroji 5. Pokročilé techniky texturování, projekce, efekty 6. Pokročilé osvětlovací modely, ambientní okluze, apod. 7. Bump mapping, normal mapping, displacement mapping, parallax mapping, … 8. Implementace vybraných efektů v GLSL 9. Implementace deferred shadingu a jeho využití 10. Vytvoření a vizualizace vybraného částicového systému 11. Integrace bone systému do scény 12. Stereoprojekce s využitím jedné karty 13. Úprava demo aplikace a přiblížení se hernímu enginu. Na cvičení se řešit konkrétní úlohy z probrané oblasti. Požaduje se dobrá znalost C++, C# nebo Javy. Primárním jazykem je C++.

Podmínky absolvování předmětu

Prezenční forma (platnost od: 2015/2016 zimní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodů
Klasifikovaný zápočet Klasifikovaný zápočet 100  51

Výskyt ve studijních plánech

Akademický rokProgramOborSpec.FormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
2017/2018 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P čeština Ostrava 1 povinně volitelný stu. plán
2017/2018 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K čeština Ostrava 1 povinně volitelný stu. plán
2016/2017 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P čeština Ostrava 1 povinně volitelný stu. plán
2016/2017 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K čeština Ostrava 1 povinně volitelný stu. plán
2015/2016 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P čeština Ostrava 1 povinně volitelný stu. plán
2015/2016 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K čeština Ostrava 1 povinně volitelný stu. plán

Výskyt ve speciálních blocích

Název blokuAkademický rokForma studiaJazyk výuky RočníkZLTyp blokuVlastník bloku