Charles Explorer logo
🇨🇿

Realtime grafika na GPU

Předmět na Matematicko-fyzikální fakulta |
NPGR019

Sylabus

Zobrazovací řetězec: aplikace, geometrická fáze, rasterizace, shadery, buffery

Reprezentace 3D scén pro realtime: ploškové modely, sítě trojúhelníků, indexované pole, hierarchické reprezentace, úroveň detailu (LoD), skinning, billboards, point sprites

Techniky používané na GPU: viditelnost, akumulace, poloprůhlednost, interpolace veličin, mlha, textury, environment mapy, normálové mapy, stencil buffer, výstupní buffery

Efektivní předávání dat do GPU: buffery, atributy vrcholů, instancing

Programování GPU: shadery (vertex, geometry, tesselation, fragment), jazyk GLSL, srovn. s HLSL (Cg), komunikace aplikace se shaderem

Konkrétní API: OpenGL, GLSL, nadstavba (pro C# i C++ - SDL, ..), nejnovější vývoj (OpenGL 4.x, Vulkan)

GPGPU: systém paralelních výpočtů na GPU - CUDA, OpenCL

Anotace

Přednáška se věnuje realtime grafice implementované na grafické kartě (GPU). Architektura moderních GPU, jejich programování (shadery), konkrétní 3D API (OpenGL) a různé techniky používané při realtime 3D renderingu na GPU. Počítání na GPU (GPGPU) v systémech CUDA a OpenCL.

Přednáška je doplněna cvičeními v počítačové laboratoři. Cvičení se věnují praktickým aspektům předmětu, konkrétnímu programování GPU (OpenGL, GLSL, CUDA..) a zadávání průběžných zápočtových úkolů.