Lepenka - Modulárny framework umožňujúci tvorbu hier pre platformu .NET
Lepenka - Modular framework for games development on the .NET platform
Lepenka - Modulární framework umožňující tvorbu her pro platformu .NET
bachelor thesis (DEFENDED)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/176099Identifiers
Study Information System: 243756
Collections
- Kvalifikační práce [10932]
Author
Advisor
Referee
Kofroň, Jan
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Computer Science with specialisation in Programming and Software Development
Department
Department of Distributed and Dependable Systems
Date of defense
12. 9. 2022
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
Slovak
Grade
Excellent
Keywords (Czech)
framework|modulární|.NET|hryKeywords (English)
framework|modular|.NET|gamesVytváření her pomocí datové architektury Entity Component System vy- žaduje změnu přístupu k programování. Současné frameworky .NET předpo- kládají, že uživatel zná principy ECS. Proto s rostoucím zájmem o tvorbu her pomocí ECS roste i potřeba frameworku, který by umožnil intuitivní osvojení těchto principů. Výsledkem této práce je datově řízený framework s archety- pální organizací dat umožňující paralelizaci systémů. Kromě toho framework hojně využívá generování kódu, což uživatele vede k dosud neprozkouma- nému deklarativnímu způsobu vytváření her. V kombinaci s nezávislostí na platformě je Lepenka jediným řešením pro platformu .NET, které má výše uvedené vlastnosti. Další důležitou vlastností je opakované použití kódu v různých hrách, které zajišťují moduly umožňující úplnou abstrakci herních systémů a komponent.
Creating games using the Entity Component System data architecture requires a change in programming approach. Current .NET frameworks as- sume that the user is familiar with the principles of ECS. Therefore, as the interest in creating games using ECS grows, so does the need for a framework that allows intuitive learning of these principles. The result of this work is a data-driven framework with an archetypal data organization allowing for parallelization of systems. In addition, the framework makes extensive use of code generation, leading the user to a previously unexplored declarative way of creating games. Combined with platform independence, Lepenka provides the only solution for the .NET platform that takes on the aforementioned characteristics. Another important feature is code reusability across games, provided by modules allowing full abstraction of game systems and compo- nents.