Ke Karlovu 3, Praha, 121 16
Tel.: 95155 1289
E-mail: mff@matfyz.cuni.cz
Cíl studia
Programování počítačových her; problematika herních mechanik, herní návrhové vzory, skriptování her. Architektura herních engine; vrstvy architektur, výpočetní modely, entity-component system, správa paměti, příklady konkrétních instancí architektur. Herní design; kdo je herní designér, osy herního designu, herní žánry, specifika herních platforem, game design dokument (vlastnosti, struktura, UML diagramy pro popis herních mechanismů, herní prostor, postavy, specifikace dialogů), historie herního trhu. Vývojový cyklus počítačové hry; fáze vývojového cyklu, herní design řízený daty, správa dat, testování počítačových her, vývojářské role, herní analytiky, vodopádový model a agilní metodiky návrhu her, obchodní modely komercializace her. Narativita a hry; rozdíl mezi games of emergence a games of progression, chtěná a nechtěná emergence, environmentální storytelling, procedurální rétorika, ludonarativní disonance.
Homogenní souřadnice, afinní a projektivní transformace v rovině a v prostoru, kvaterniony. Spline funkce, interpolace kubickými spliny, Bézierovy křivky, Catmull-Rom spliny, B-spliny. Vzorkování a kvantování obrazu, anti-aliasing, textury, změna kontrastu a jasu, kompozice poloprůhledných obrázků. Reprezentace 3D scén, výpočet viditelnosti, výpočet vržených stínů, měkké stíny, rozptyl světla pod povrchem, modely osvětlení a stínovací algoritmy, rekurzivní sledování paprsku, fyzikální model šíření světla (radiometrie, zobrazovací rovnice), algoritmus sledování cest, předpočítané globální osvětlení, výpočet globálního osvětlení v reaálném čase, stínování založené na sférických harmonických funkcích, předpočítaný přenos radiance. Animace postav, skinning, rigging, morphing. Architektura grafického akcelerátoru, předávání dat do GPU, textury a GPU buffery, programování GPU – shaderů. Základy OpenGL, GLSL, CUDA a OpenCL. Principy komprese rastrové 2D grafiky, standard JPEG, komprese videosignálu.
Architektura autonomního agenta; percepce, mechanismus výběru akcí, paměť; psychologické inspirace. Metody pro řízení agentů; symbolické a konekcionistické reaktivní plánování, hybridní přístupy, prostor rozhodování, if-then pravidla, skriptování, sekvenční konečný automat, stromy chování. Problém hledání cesty; lokální navigační pravidla (Raynoldsovy steeringy, VO, RVO, Context steering), hledání cesty (A*, JPS+, goal bounding, RRT, RRT*, LPA*, MPAA*, obousměrné prohledávání), reprezentace prostoru (geometrie, viditelnost). Komunikace a znalosti v multiagentních systémech, ontologie, řečové akty, FIPA-ACL, protokoly. Distribuované řešení problémů, kooperace, Nashova ekvilibria, Paretova efektivita, alokace zdrojů, aukce. Metody pro učení agentů; zpětnovazební učení, základní formy učení zvířat. Procedurální modelování stavového prostoru (forward model) a jeho prohledávání; A*, ABCD, MCTS a UCB a další varianty, PGS, PGS-II, prostor skriptů (Kiting, AV, NOK-AV), efektivní implementace. Klasifikace metod procedurálního generování. Přístupy pro generování terénu, vizuálních efektů, hudby, předmětů, bludišť a dungeonů. Šumové funkce (Perlin, Simplex, Worley). Celulární automaty, L-systémy, grafové a tvarové gramatiky. Answer set programming. Algoritmus kolapsu vlnové funkce. Metody smíšené iniciativy.
Teorie herních studií; definice herních studií, vztah herních studií k dalším vědním oborům, kulturní, sociální a politické aspekty počítačových her, definice počítačové hry, rozdíl mezi počítačovými hrami a jiných audiovizuálních médií a implikace pro výzkum. Historie počítačových her; okolnosti vzniku počítačových her, technologické a kulturní kořeny počítačových her, klíčové milníky historie počítačových her, archeologie médii v herních studiích, konvergentní evoluce. Metody výzkumu v herních studiích; druhy metod výzkumu, formální obsahová analýza her. Výzkum systémů pravidel ve hrách; metody výzkumu, subjektivní zkušenost ze hry, hráčské komunity. Sociální aspekty počítačových her; pozitivní a negativní sociální aspekty počítačových her, herní komunita, demografický profil hráče počítačových her a jeho vývoj v čase, MMO a výzkum sociálních aspektů her. Psychologické a kognitivní aspekty počítačových her; pozitivní a negativní psychologické aspekty počítačových her, metody výzkumu, vliv paměti, emoce, pozornost a motivace hráče na herní zážitek, vztah mezi násilím zobrazeným ve hrách a agresivním chování, vliv krátkodobého a dlouhodobého hraní her na rozvoj kognitivních schopností, imerze a flow ve vztahu k počítačovým hrám. Vážné, výukové a persvazivní hry; definice, procedurální rétorika a její význam pro herní studia, teoretické základy koncepce výuky pomocí počítačových her, výhody a nevýhody zapojení počítačových her do formální výuky, počítačové hry a jejich vliv na postoje hráčů, gamifikace a její výhody a limity.
Studijní plán
Studijní plán nabízí posluchačům dvě úzce propojená zaměření, která se liší okruhy, z nichž jsou pokládány otázky u státní závěrečné zkoušky. Předměty je vhodné volit tak, aby svým obsahem tyto zkušební okruhy pokryly. Část výuky může probíhat v anglickém jazyce.
Profil absolventa
Absolvent je zdatným programátorem v jazycích typu C++, C# či Java, umí vytvářet programy pro klasické i masivně paralelní procesory (GPU) a pro malá zařízení (tablety, mobilní telefony). Umí využívat nástroje pro správu rozsáhlých softwarových projektů, je schopen navrhnout a realizovat komplexní grafický systém anebo počítačovou hru. Podle zvoleného zaměření je vybaven buď hlubokými znalostmi z počítačové grafiky a analýzy obrazu, anebo – v zaměření na vývoj počítačových her – jeho znalosti pokrývají programování rozsáhlých herních projektů, aplikací pracujících v reálném čase, programování malých zařízení, jakožto i základy umělé inteligence a základy počítačové grafiky v kontextu počítačových her. Absolvent umí tyto znalosti aplikovat při řešení konkrétních praktických úkolů.