Vyučující
|
-
Vogeltanz Tomáš, Ing. Ph.D.
|
Obsah předmětu
|
Přednášky: 1. Vývoj počítačových her, vývojový cyklus, historie a současnost, herní průmysl v ČR 2. Herní design, flow, MDA, dokumentace 3. Žánry počítačových her, herní mechaniky a pravidla, platformy, publikování a distribuce 4. Návrhové vzory v herním vývoji (Game Loop, Object Pool, Component, State atd.) 5. Matematické a fyzikální výpočty v počítačových hrách, reprezentace, transformace, částicové systémy 6. Umělá inteligence v počítačových hrách, specifika, role, metody 7. Realizace umělé inteligence v počítačových hrách, návrh, implementace, integrace, agenti, senzory, assety pro AI v Unity 8. Pathfinding a navigace, Dijkstrův algoritmus, A* (A star), Waypoints, Navigation mesh, vizualizace, implementace 9. Hejna a davy, Reynoldsův hejnový algoritmus, Fuzzy logika, návrh a implementace controlleru Fuzzy logiky 10. Testování her, role testera, specifika, softwarové a hardwarové testování, nástroje, tolerance chyb, alfa, beta a gold testování 11. Síťová komunikace v počítačových hrách, real-time loop, autorita serveru, synchronizace, multi-serverová architektura, ochrana proti podvádění, knihovny pro Unity 12. Vývoj her pro mobilní platformy, specifika, optimalizace, Unity Profiler, postup, analýza a realizace, debugování a testování na reálném mobilním zařízení 13. Protipirátské ochrany a jejich možné prolomení 14. Analytické nástroje, práce s daty uživatelů a ochrana uživatelských dat Cvičení: 1. Nástroje pro vývoj, Visual Studio, Github Desktop, Unity, základní prvky a ovládání prostředí, Unity Hub, licence, Unity Asset Store 2. Assety, scény, herní objekty, prefaby a komponenty v Unity 3. Základní skriptování, serializovaná data, ovládání a vstupy, pohyb herních objektů pomocí skriptu 4. Řízení animací a zvuku, eventy (Observer pattern) 5. Fyzika a typy kolizních komponent, triggery (RigidBody a Colliders), částicový systém 6. Uživatelské rozhraní v Unity, řízení prvků hry (game managment) 7. Singleton, Dependency Injection a Object Pool v Unity 8. Návrh umělé inteligence v Unity 9. Implementace umělé inteligence v Unity 10. Navigace a pathfinding v Unity, NavMesh, NavMeshAgent 11. Návrh a implementace controlleru Fuzzy logiky, aplikování v rámci umělé inteligence 12. Síťová komunikace v Unity 13. Vývoj pro mobilní platformu v Unity, práce s Unity Profiler 14. Testování her, testovací aplikace, jednotkové testování
|
Studijní aktivity a metody výuky
|
Monologická (výklad, přednáška, instruktáž), Dialogická (diskuze, rozhovor, brainstorming), Cvičení na počítači, Týmová práce
- Semestrální práce
- 48 hodin za semestr
- Příprava na zápočet
- 8 hodin za semestr
- Účast na výuce
- 42 hodin za semestr
- Domácí příprava na výuku
- 10 hodin za semestr
|
Předpoklady |
---|
Odborné znalosti |
---|
Znalost C# |
Znalost C# |
Znalost objektového programování |
Znalost objektového programování |
Základní znalost návrhových vzorů |
Základní znalost návrhových vzorů |
Základní znalost nástroje GIT |
Základní znalost nástroje GIT |
Základní teoretická znalost 3D modelování a animace |
Základní teoretická znalost 3D modelování a animace |
Odborné dovednosti |
---|
Programování |
Programování |
Výsledky učení |
---|
Odborné znalosti |
---|
Popsat proces herního vývoje |
Popsat proces herního vývoje |
Charakterizovat klíčové oblasti herního návrhu |
Charakterizovat klíčové oblasti herního návrhu |
Vyjmenovat návrhové vzory používané v počítačových hrách |
Vyjmenovat návrhové vzory používané v počítačových hrách |
Porozumět použití umělé inteligence v počítačových hrách |
Porozumět použití umělé inteligence v počítačových hrách |
Porozumět matematice a fyzice v počítačových hrách |
Porozumět matematice a fyzice v počítačových hrách |
Odborné dovednosti |
---|
Používat Unity editor |
Používat Unity editor |
Programovat scripty pro Unity |
Programovat scripty pro Unity |
Programovat mechaniky hry |
Programovat mechaniky hry |
Navrhnout a implementovat jednoduchou umělou inteligenci ve hrách |
Navrhnout a implementovat jednoduchou umělou inteligenci ve hrách |
Vytvořit herní scény |
Vytvořit herní scény |
Vyučovací metody |
---|
Odborné znalosti |
---|
Monologická (výklad, přednáška, instruktáž) |
Monologická (výklad, přednáška, instruktáž) |
Dialogická (diskuze, rozhovor, brainstorming) |
Dialogická (diskuze, rozhovor, brainstorming) |
Týmová práce |
Týmová práce |
Odborné dovednosti |
---|
Přednášení |
Přednášení |
Cvičení na počítači |
Cvičení na počítači |
Praktické procvičování |
Praktické procvičování |
Hodnotící metody |
---|
Odborné znalosti |
---|
Známkou |
Písemná zkouška |
Známkou |
Písemná zkouška |
Analýza výkonů studenta |
Analýza výkonů studenta |
Doporučená literatura
|
-
Alex OKITA. Learning C# Programming with Unity 3D. 2019. ISBN 978-1-138-33681-0.
-
Davide AVERSA. Unity artificial intelligence programming. 2022. ISBN 978-1-80323-853-1.
-
Chihming CHIU. Massively multiplayer game programming with Unity 3D and Mirror. 2021. ISBN 978-0-2288-4410-5.
-
Philip WALKER. Unity certified programmer: exam guide : expert tips and techniques to pass the Unity certification exam at the first attempt. 2020. ISBN 978-1-83882-842-4.
|