Částicový modul pro GPUEngine

Loading...
Thumbnail Image
Date
ORCID
Mark
B
Journal Title
Journal ISSN
Volume Title
Publisher
Vysoké učení technické v Brně. Fakulta informačních technologií
Abstract
Cílem této práce je implementovat částicový modul, který bude rozšiřovat grafický toolkit GPUEngine. Částicový modul je rozhraní určené k tvorbě částicových systémů. Modul je navržen jako soubor rozšiřitelných tříd, do kterých uživatel doplňuje vlastní implementaci. V práci jsou rozebrány techniky realizace částicových systémů. Do toho spadá způsob uložení dat, ze kterých jsou implementovány techniky Array of Structures a Structure of Arrays. Práce se zabývá rozdíly mezi simulací částicových systémů na CPU a GPU, poskytuje nástroje k jejímu provedení. Výsledkem práce je znovupoužitelná knihovna umožňující tvorbu částicových systémů, určených jak pro typické vizuální použití známé z počítačových her, tak pro účely simulace a procedurálního modelování. Součástí je také demonstrační aplikace s předpřipravenými ukázkami částicových systémů.
The goal of this thesis is to implement a particle module that will be extending the GPUEngine graphic toolkit. Particle module is an interface, used for creating particle systems. The module is designed as a complex of extendable classes, to which an user adds his own implementation. This thesis analyses realization techniques of particle systems. It covers the way of preserving data, from which the techniques Array of Structures and Structure of Arrays are implemented. The thesis deals with differences between particle system simulation from CPU and simulation from GPU, it provides tools for these simulations. The result of this thesis is a reusable library, allowing the creation of particle systems, made not only for typical visual use, known from the computer games, but also for simulations and procedural modeling. Demonstrational app with representative particle systems, prepared in advance, is included too.
Description
Citation
SOBOL, J. Částicový modul pro GPUEngine [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2020.
Document type
Document version
Date of access to the full text
Language of document
cs
Study field
Informační technologie
Comittee
doc. Ing. Peter Chudý, Ph.D., MBA (předseda) doc. RNDr. Pavel Smrž, Ph.D. (místopředseda) Ing. Petr Matoušek, Ph.D., M.A. (člen) Ing. Filip Orság, Ph.D. (člen) doc. Ing. Zdeněk Vašíček, Ph.D. (člen)
Date of acceptance
2020-08-27
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. Otázky u obhajoby: V sekci 4.4.1 je uveden problém: "Když by compute shader prohledával pole částic při několika paralelních spuštěních, nalezl by vždy stejnou nepoužitou částici a tu by se snažil přepsat.". Můžete objasnit? Pokud by každé vlákno mělo přiřazenou jednu částici, jak může dojít ke kolizím?  Proč se podle Vás u synchronizované emise (sekce 4.4.1) "ztrácí výhoda paralelních výpočtů"? Jsou jednotlivé ukázkové scény cíleně rozděleny na GPU a CPU simulace kvůli implementačním problémům, nebo je toto rozdělení náhodné a bylo by možné dané ukázky jednoduše spouštět v obou verzích? Mohl byste zvolit jiný programovací jazyk?
Result of defence
práce byla úspěšně obhájena
Document licence
Standardní licenční smlouva - přístup k plnému textu bez omezení
DOI
Collections
Citace PRO