DUBSKÝ, T. Generování a simulace 2D herní vegetace na GPU [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2024.
Výsledná aplikace je na velmi dobré úrovni a student musel řešit pokročilé problémy spojené s optimální implementací simulačních algoritmů na GPU. Student pracoval ve velmi dobrém tempu a plnil vytyčený plán podle představ. Dovoluji si navrhnout zvážit komisi udělení ceny děkana za výbornou práci.
Kritérium | Známka | Body | Slovní hodnocení |
---|---|---|---|
Informace k zadání | Student navázal na předchozí bakalářskou práci a výrazně ji rozšířil. Rozšíření zahrnuje reimplementaci celého projektu do Vulkan API a integraci nových simulačních prvků spojených s růstem vegetace ve 2D světě. Samotná integrace do Vulkan API, ač ne viditelná na první pohled, je náročná a požaduje hlubší porozumění problematice GPU výpočtů. | ||
Práce s literaturou | Student samostatně vyhledal potřebnou literaturu a řídil se doporučeními vedoucího. | ||
Aktivita během řešení, konzultace, komunikace | Konzultace probíhaly pravidelně po celou dobu práce. Student vždy prezentoval viditelné pokroky, měl připravené dotazy a prokázal velmi dobrou orientaci v daném tématu. | ||
Aktivita při dokončování | Práce byla dokončena s předstihem a konzultována. Student rychle reagoval na doporučení, která vhodně zpracoval. | ||
Publikační činnost, ocenění | Publikační činnost není známa. Výsledná hra však má potenciál stát se základem případného herního produktu. Vzhledem ke komplexní implementaci s optimálním využitím GPU byl zaslán návrh na nominaci do soutěže IT SPY 2024. |
Student si pro dané téma zvolil složitější řešení. Navíc portoval existující generátor 2D světa z OGL do Vulkanu, přidal zajímavé a netriviální simulace a vylepšil původní výpočet osvětlení. Práce navíc působí jako dospělý prototyp a textová část je velmi kvalitní.
Kritérium | Známka | Body | Slovní hodnocení |
---|---|---|---|
Náročnost zadání | Zadání je samo o sobě průměrně obtížné. Ztěžuje ho však použití VulkanAPI. | ||
Rozsah splnění požadavků zadání | Student udělal velké množství kvalitní práce. Je to patrné jak z výsledné aplikace, tak i textu, kde je vidět i množství práce v oblasti analýzy a návrhu algoritmů s ohledem na použitý hardware. Už jen zvolený přístup ke generování a vizualizaci vegetace obsahuje drobná rozšíření. Za největší však považuji simulaci interakce s prostředím, jako je fyzikálně inspirované ohýbání ve větru a šíření požáru. | ||
Rozsah technické zprávy | |||
Prezentační úroveň technické zprávy | 95 | Práce je členěna netradičně do samostatných celků, které obsahují svoji teorii, návrh a implementaci. Toto je však z dobrého důvodu. Velmi dobře se čte a je jednoduše pochopitelná, i když se zabývá komplikovanými tématy. Vše je dobře vysvětlené, aniž by student zabíhal do zbytečných detailů. I přesto některé části mohly být rozebrané podrobněji. | |
Formální úprava technické zprávy | 90 | Práce je psána v anglickém jazyce. Je srozumitelná, velmi dobře se čte. Slohové prostředky jsou zvolené dobře. | |
Práce s literaturou | 80 | Nemám výhrady. | |
Realizační výstup | 95 | Práce je pokračováním předchozí bakalářské práce, která se zabývala generováním 2D světa. Původní dílo však bylo přeportováno z OpenGL do Vulkanu a vylepšeno. Což znamená přepsání velké části renderovacího jádra. Na povrch tohoto světa je generována vegetace v mnoha různých variantách pro několik různých biomů. Tato vegetace je pak simulována částečně ve vektorové reprezentaci (vítr) a částečně po rasterizaci (šíření ohně, atp., pomocí celulárních automatů). Za zmínku stojí, že větve jsou rasterizovány "ručně" jako beziérovy křivky. Většina toho je počítána na GPU pomocí compute shaderů. Práce navíc obsahuje možnost uživatele přímo zasahovat do světa. | |
Využitelnost výsledků | Práce je rozdělena na knihovní část s enginem a samostatnou aplikaci. Engine by částečně mohl být po úpravách použit i pro jiné aplikace s podobným účelem. |
eVSKP id 153549