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.

Posudky

Posudek vedoucího

Chlubna, Tomáš

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.

Dílčí hodnocení
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.
Navrhovaná známka
A
Body
100

Posudek oponenta

Starka, Tomáš

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í.

Dílčí hodnocení
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.
Navrhovaná známka
A
Body
95

eVSKP id 153549