Bachelor's Thesis

Labyrint ve 3D se šířením zvuku

Final Thesis 4.09 MB

Author of thesis: Bc. Gleb Litvinchuk

Acad. year: 2025/2026

Supervisor: Ing. Michal Vlnas

Reviewer: Ing. Tomáš Chlubna, Ph.D.

Abstract:

This thesis deals with the design and implementation of a three-dimensional labyrinth game in which the player navigates mainly through sound-based and visual echolocation feedback. The solution combines a procedurally generated multi-floor labyrinth, an active echolocation pulse, continuous orientation sounds, terminal objectives, an enemy drone, an orientation map, and run saving. The implementation is created in the Unity engine and uses a grid representation of the level, spatial queries, simplified processing of sound feedback, and a user interface that supports navigation with incomplete information. The resulting prototype was evaluated through functional and user testing.

Keywords:

computer game, labyrinth game, maze, echolocation, spatial audio, procedural generation, Unity, game engine, maze generation, 3D graphics

Date of defence

16.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaBznamka

Grading

B

Process of defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm B.

Topics for thesis defence

  1. Vysvětlete obr. 2.3. Proč chybí výrazná černá stěna na levé hraně buňky č. 6? Jaký je systém číslování buněk? Proč například chybí buňka č. 3?
  2. Ukažte tabulku 2.1 a vysvětlete její poslední řádek. Jak se porovnávané enginy liší. Zdá se, že se jedná pouze o použití jiných slov pro stejnou věc.
  3. Při postupování na další pokus o generování úrovně je v textu uvedeno přičtení kroku 9973 k hodnotě seed pro náhodný generátor. Proč právě toto číslo? O jaký přesně algoritmus náhodného generování se jedná? Nemůže tento velký posun zvýšit šanci pro cyklické generování pseudonáhodných čísel? Většina algoritmů už při posunu o 1 zcela mění vygenerovanou sekvenci. Je seed také upraven například podle aktuálního časového razítka, aby v každém běhu hry došlo k jinému generování?
  4. Ve výsledcích v tabulce B.1 se zdá že nikdy nedojde k tzv. nouzovému režimu při generování úrovně. Toto však bylo měřeno pouze na 20 pokusech. Změřte a uveďte kolikrát k nouzovému režimu dojde například při tisíci pokusech.
  5. V seznamu použitých assetů jsou uvedeny i materiály a textury. K čemu v projektu jsou, když je celé prostředí ponořené v absolutní tmě?
  6. Jak jste řešil problém šíření zvuku ve 3D prostoru? Proč jste nepoužil knihovnu OpenAL nebo její obdobu?

Language of thesis

Czech

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

prof. Ing. Adam Herout, Ph.D. (předseda)
doc. Ing. Michal Bidlo, Ph.D. (místopředseda)
Ing. Jaroslav Dytrych, Ph.D. (člen)
Ing. Ivana Burgetová, Ph.D. (člen)
Dr. Ing. Petr Peringer (člen)

Supervisor’s report
Ing. Michal Vlnas

Celkově lze říci, že se jedná spíše o průměrnou práci. Aplikační část student vypracoval spíše dle sebe a finální verzi jsem neměl možnost vyzkoušet. Student byl aktivní, ale komunikace mnohdy vázla. Navrhuji hodnocení stupněm C.

Evaluation criteria Verbal classification
Information about assignment

Z mého pohledu je obtížnost zadání spíše průměrná. Dle mého názoru šlo dosáhnout lepších výsledků, jak v textové tak i v praktické části.

Work with literature

Student pracoval s literaturou samostatně.

Activity during solution, consultations, communication

Student byl poměrně aktivní, na konzultace chodil zhruba každé 3-4 týdny. Na konzultacích student ukazoval postupný pokrok v práci, nutno však říci, že student spíše postupoval dle svého uvážení a méně dle doporučení vedoucího. Taktéž nutno říci, že občas byl problém v jazykové bariéře.

Activity during completion

Práce byla dokončena včas. Text konzultován byl, včetně posledních verzí. Aplikační část ve finální verzi prezentována nebyla.

Publication activity, awards

-

Points proposed by supervisor: 75

Grade proposed by supervisor: C

Reviewer’s report
Ing. Tomáš Chlubna, Ph.D.

Hra je plně funkční a zajímavá, text neobsahuje kritické chyby, nicméně hodnocení je sníženo kvůli menším nekonzistencím a zbytečné délce zhoršující celkovou pochopitelnost.


Z implementačního hlediska je výsledek hezký a hra má zajímavý potenciál. Text vysvětluje mnoho konceptů dobře, ale zbytečně opakovaně, zatímco některé detaily by mohly být popsány více do hloubky a technicky (např. postup generování úrovní apod.).

Evaluation criteria Verbal classification Points
The difficulty of the assignment

Evaluation level: moderately difficult assignment

Implementace hry může být náročná, ale použití herního enginu práci usnadňuje.

Autor použil externí assety, například i pro vizualizaci echolokace (Simple Sonar Shader Lite), jeden z klíčových prvků hry. Nejvíce obtížná část pravděpodobně byla samotný návrh zvukového rozhraní hry a implementace šíření zvukových impulsů.

Presentation level of the technical report

Text dodržuje standardní strukturu a je pochopitelný, místy však je v implementaci místo technického popisu spíše návrhový vysokoúrovňový pohled.

Názvy kapitol by bylo lépe zjednodušit. Hra je v nich označena nekonzistentně různými termíny (hra s echolokační mechanikou / hra se zvukovou orientací / zvukově orientovaná hra).

89
Formal preparation of a technical report

Text je vysázen přijatelně, místy se vyskytují nekonzistence a menší nedostatky.

Ve zprávě se nenachází mnoho chyb až na občasné zvláštní tvary slov a slohový styl odpovídá technickému textu.

Autorovy vlastní obrázky jsou pěkné a názorné, ve vektorovém formátu. Jen obr. 2.7 nevypadá příliš hezky díky opakovanému nadpisu s různou velikostí a viditelným pozadím textu zasahujícím do šipek. V popisku tohoto obrázku je také odkaz na sekce a) a b), ty však nejsou v obrázku vyznačeny. Vrchní část obrázku 4.10 je velmi tmavá. Tabulka 5.3 mohla být raději vysázena jako graf.

Místy je patrná nekonzistence ve značení. Například v nečíslované rovnici v sekci 2.7.1 je směrový vektor vyznačen tučně, avšak bod je vysázen jako skalární proměnná, přičemž se jedná o bod ve 3D prostoru, tedy také vektor. Následně je tato stejná rovnice vysázena v obr. 2.10, kde vektory nejsou vyznačeny vůbec. Algoritmy jsou v textu odkazovány jako algoritmus X, nicméně v samotném vysázeném algoritmu jsou označeny anglicky jako Algorithm X.

89
Realisation output

Výsledná hra je zajímavá a implementuje netradiční herní mechaniky.

Celkový dojem ze hry je dobrý. Autor úspěšně implementoval zajímavý nápad kdy je hráč nucen aktivně využívat několik různých mechanik echolokace k orientaci v 3D prostoru. Na výběr je také několik obtížností, a úrovně jsou procedurálně generovány. Další podpůrné prvky jako menu, mapa s možností anotací a přehrání průchodu úrovní pěkně doplňují herní scénu.

Hra byla také otestována pomocí uživatelské studie a autor velmi pěkně analyzoval výsledky a odvodil případné návrhy na vylepšení.

95
Usability of results

Hra je inovativní a má potenciál, aby byla publikována v budoucnu jako herní produkt.

Hlavní unikátnost hry je v jejím pojetí a návrhu echolokačních mechanik. Algoritmicky neobsahuje nové postupy.

The extent to which the requirements of the assignment have been met

Evaluation level: assignment fulfilled

Všechny body zadání byly splněny.

Extent of the technical report

Evaluation level: exceeds the usual extent

Text je poměrně dlouhý a místy obsahuje redundantní informace.

Podle nástroje FIT Thesis Checker text přesahuje 100 normostran. V textu se nachází několik opakování informací (např. informace o tom, že: Hráč...se musí spoléhat na paměť a odhad vlastní polohy je uvedena dvakrát téměř totožně a dále v několika variacích). Dále definice požadavků na úroveň je uvedena několikrát (např. míra alternativních tras je uvedena ve 4 seznamech, jednom obrázku a ještě několikrát v textu). Zejména několikanásobný výskyt sekce shrnutí, která opakuje již uvedené informace, je zbytečný. Některé delší části textu by bylo možno vyjádřit jednou větou, např. celá sekce 3.4.4, která vysvětluje, že hráč může hru prohrát.

Work with literature

V textu je vhodně citováno na relevantních místech 14 odborných zdrojů.

Poznámky pod čarou se místy nachází na jiné straně než jejich odkaz v textu (např. poznámka 8 na str. 6). Na začátku strany 9 se nachází dvakrát citace na stejné strany zdroje [6] ve dvou větách. Liší se pouze přidanou stranou 11. Tato citace mohla být sloučena.

V odevzdaných souborech je seznam použitých externích assetů s uvedenými zdroji.

95
Topics for thesis defence:
  1. Vysvětlete obr. 2.3. Proč chybí výrazná černá stěna na levé hraně buňky č. 6? Jaký je systém číslování buněk? Proč například chybí buňka č. 3?
  2. Ukažte tabulku 2.1 a vysvětlete její poslední řádek. Jak se porovnávané enginy liší. Zdá se, že se jedná pouze o použití jiných slov pro stejnou věc.
  3. Při postupování na další pokus o generování úrovně je v textu uvedeno přičtení kroku 9973 k hodnotě seed pro náhodný generátor. Proč právě toto číslo? O jaký přesně algoritmus náhodného generování se jedná? Nemůže tento velký posun zvýšit šanci pro cyklické generování pseudonáhodných čísel? Většina algoritmů už při posunu o 1 zcela mění vygenerovanou sekvenci. Je seed také upraven například podle aktuálního časového razítka, aby v každém běhu hry došlo k jinému generování?
  4. Ve výsledcích v tabulce B.1 se zdá že nikdy nedojde k tzv. nouzovému režimu při generování úrovně. Toto však bylo měřeno pouze na 20 pokusech. Změřte a uveďte kolikrát k nouzovému režimu dojde například při tisíci pokusech.
  5. V seznamu použitých assetů jsou uvedeny i materiály a textury. K čemu v projektu jsou, když je celé prostředí ponořené v absolutní tmě?
Points proposed by reviewer: 88

Grade proposed by reviewer: B

Responsibility: Mgr. et Mgr. Hana Odstrčilová