Výkonná implementace stromů chování pro Unity
Performance-wise Implementation of Behavior Trees for Unity
diplomová práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/171779Identifikátory
SIS: 220654
Kolekce
- Kvalifikační práce [11987]
Autor
Vedoucí práce
Oponent práce
Ježek, Pavel
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Počítačová grafika a vývoj počítačových her
Katedra / ústav / klinika
Katedra softwaru a výuky informatiky
Datum obhajoby
8. 2. 2022
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Čeština
Známka
Velmi dobře
Klíčová slova (česky)
výkonné systémy|vývoj počítačových her|inteligentní virtuální agenti|stromy chování|UnityKlíčová slova (anglicky)
performant systems|video game development|intelligent virtual agents|behavior trees|UnityPředstavujeme vám Bursted Behavior Trees framework (BBT) pro Unity, který vyu- žívá technologie Unity - Job system a Burst compiler, a je doplněn node-based vizuálním editorem. BBT je v současnosti jediná implementace behavior trees pro Unity engine, která používá worker vlákna Unity enginu a zároveň je kompatibilní s Burst překlada- čem a představuje node-based vizuální editor. Uživatel může jednoduše vytvořit nejenom vlastní listové uzly (senzory a akce), ale také vnitřní uzly (composite, decorator), které implementují vlastní strategii výběru podstromu. Rozebíráme technické výzvy implemen- tování tohoto řešení a porovnáváme jeho hlavní funkce a výkon se dvěma populárními implementacemi behavior trees v Unity. Ukazujeme, že BBT zvládne zpracování více stromů v rámci jednoho snímku a že zároveň lze lépe rozšiřovat než srovnávaná řešení. 1
We present Bursted Behavior Trees (BBT) for Unity, which makes use of Unity's Job system, Burst compiler, and is complemented with a node-based visual editor. BBT is currently the only behavior tree solution for Unity capable of execution on Unity worker threads while being Burst compiler compatible and featuring a node-based visual editor. A user can easily create not only custom leaf nodes (sensors and actions) but also inner nodes (composites and decorators) implementing custom behavior selection strategies. We discuss technical challenges implementing such a solution and compare its core features and performance with two popular behavior tree Unity assets. We show that BBT allows for the execution of more trees per frame while being more extendable than its selected competitors. 1
