Implementace zobrazovacího systému v jazyce Rust
Implementation of rendering system in Rust
dc.contributor.advisor | Bittner Jiří | |
dc.contributor.author | Eduard Lavuš | |
dc.date.accessioned | 2020-06-10T13:57:26Z | |
dc.date.available | 2020-06-10T13:57:26Z | |
dc.date.issued | 2020-06-10 | |
dc.identifier | KOS-857605029405 | |
dc.identifier.uri | http://hdl.handle.net/10467/87753 | |
dc.description.abstract | Vulkan je dnes de-facto štandardom pre otvorené mnoho-platformové vykresľovanie grafiky v reálnom čase. Vývojári môžu vďaka Vulkanu naplno využiť silu grafických kariet na mnohých platformách vďaka jeho jednotnému dizajnu. Vulkan naviac prináša mnoho vylepšení v porovnaní so starším OpenGL. Vulkan je však zameraný na omnoho nižší level ako OpenGL a preto vyžaduje viac práce na strane vývojára. Táto práca predkladá knižnicu v jazyku Rust so základnými typmi a vysokoúrovňovým návrhom na vytváranie a spracovávanie objektov Vulkanu bezpečne vo viac vláknovom prostredí a s minimálnym dopadom na rýchlosť. Diskutované sú aj výhody jazyka Rust pre túto konkrétnu úlohu. Naviac je porovnaná rýchlosť a veľkosť kódu voči Rustovej knižnici ash, ktorá poskytuje priame prepojenia do Vulkan API napísaného v jazyku C. | cze |
dc.description.abstract | Vulkan is today the de-facto standard for open cross-platform real-time graphics rendering. It allows the developers to leverage the performance of GPUs on many platforms thanks to its uniform design and brings many improvements when compared to the older OpenGL API. Contrary to its predecessor, however, Vulkan is much more low-level and requires more work from the developer. This thesis presents a Rust crate (library) with core wrapper types and a high-level API design for creating and managing Vulkan objects safely in concurrent manner, with minimal impact on performance. Advantages of Rust for this specific task are discussed and the performance and verbosity in comparison to the ash crate (library), which provides raw bindings to the C Vulkan API, is evaluated. | eng |
dc.publisher | České vysoké učení technické v Praze. Vypočetní a informační centrum. | cze |
dc.publisher | Czech Technical University in Prague. Computing and Information Centre. | eng |
dc.rights | A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.html | eng |
dc.rights | Vysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.html | cze |
dc.subject | Vulkan | cze |
dc.subject | Vulkayes | cze |
dc.subject | grafické API | cze |
dc.subject | GPU | cze |
dc.subject | počítačová grafika | cze |
dc.subject | abstrakcia Vulkan API | cze |
dc.subject | Vulkan | eng |
dc.subject | Vulkayes | eng |
dc.subject | graphics API | eng |
dc.subject | GPU | eng |
dc.subject | computer graphics | eng |
dc.subject | Vulkan API abstraction | eng |
dc.title | Implementace zobrazovacího systému v jazyce Rust | cze |
dc.title | Implementation of rendering system in Rust | eng |
dc.type | bakalářská práce | cze |
dc.type | bachelor thesis | eng |
dc.contributor.referee | Sloup Jaroslav | |
theses.degree.discipline | Počítačové hry a grafika | cze |
theses.degree.grantor | katedra počítačové grafiky a interakce | cze |
theses.degree.programme | Otevřená informatika | cze |
Soubory tohoto záznamu
Tento záznam se objevuje v následujících kolekcích
-
Bakalářské práce - 13139 [435]