Розроблення ігрового рушія для 3D ігор
dc.contributor.advisor | Фармага, Ігор Вірославович | |
dc.contributor.affiliation | Національний університет "Львівська політехніка" | |
dc.contributor.author | Дворичанський, Олег Сергійович | |
dc.contributor.author | Dvorychanskyi, Oleh Serhiiovych | |
dc.coverage.placename | Львів | |
dc.date.accessioned | 2025-06-29T18:57:07Z | |
dc.date.created | 2024 | |
dc.date.issued | 2024 | |
dc.description.abstract | Розробка ігрових рушіїв є ключовим аспектом сучасної індустрії відеоігор, яка, за прогнозами експертів, продовжуватиме стрімко зростати у 2025–2027 роках завдяки технологічним інноваціям та зростаючому попиту на високоякісну графіку. Сучасні рушії, такі як Unreal Engine та Unity, використовують модульну архітектуру для забезпечення гнучкості, але створення власного рушія дозволяє досягти повного контролю над рендерингом та оптимізацією. Актуальність теми полягає в необхідності створення доступних інструментів для розробки ігор, які можуть бути адаптовані до потреб різних користувачів – від студентів до дослідників. У даній роботі проаналізовано сучасний стан технологій створення ігрових рушіїв, зокрема архітектурні патерни провідних платформ, таких як Unreal Engine, Unity та Godot. Сформовано вимоги до модульної архітектури, спроектовано ключові компоненти рушія: Developer, Scene, MaterialSystem, Renderer3D та RenderableGroup, які забезпечують гнучкість і продуктивність. Реалізовано рендеринг із використанням технологій PBR та IBL, що базуються на принципах фізично базованого рендерингу, описаних у спеціалізованій літературі. Проведено тестування продуктивності на сцені Sponza з використанням RenderDoc, яке показало стабільну роботу рушія з частотою 333 FPS та використанням 1.2 ГБ пам’яті на апаратному забезпеченні NVIDIA RTX 2060. Об’єктом дослідження є ігровий рушій із модульною архітектурою, що забезпечує ефективну обробку графіки. Предметом дослідження є розроблення та оптимізація модульного ігрового рушія з підтримкою сучасних технік рендерингу. Метою роботи є створення ігрового рушія, який забезпечує гнучкість архітектури та ефективну обробку графіки для різних користувачів. Новизна дослідження полягає у створенні модульного підходу до архітектури рушія, який дозволяє динамічно перемикати рендер-пайплайни (Forward та Deferred Rendering) та оптимізувати продуктивність через групування об’єктів, що підтверджується аналізом сучасних технік рендерингу. Практичне значення одержаних результатів полягає в розробці універсального інструменту для створення ігор. Студенти можуть використовувати рушій для навчальних проєктів із симуляцією освітлення в реальному часі, інді-розробники – для створення прототипів із процедурно генерованими матеріалами, а дослідники – для тестування нових технік рендерингу, таких як IBL чи оптимізація ECS, що відповідає сучасним тенденціям у комп’ютерній графіці. У майбутньому рушій може бути розширений для підтримки анімації та фізичних симуляцій, що дозволить створювати складніші інтерактивні сцени. Такий підхід відкриває можливості для інтеграції рушія в освітні програми з геймдеву та дослідницькі проєкти з комп’ютерної графіки. | |
dc.description.abstract | The development of game engines is a key aspect of the modern video game industry, which, according to expert forecasts, is expected to continue rapid growth in 2025–2027 due to technological innovations and the rising demand for high-quality graphics. Modern engines like Unreal Engine and Unity utilize modular architecture to ensure flexibility, but creating a custom engine allows for complete control over rendering and optimization. The relevance of this topic lies in the need to develop accessible tools for game creation that can be tailored to the needs of various users, from students to researchers. This work analyzes the current state of game engine development technologies, including the architectural patterns of leading platforms such as Unreal Engine, Unity, and Godot. Requirements for a modular architecture were defined, and key engine components were designed: Developer, Scene, MaterialSystem, Renderer3D, and RenderableGroup, ensuring flexibility and performance. Rendering was implemented using PBR and IBL techniques, based on principles of physically based rendering described in specialized literature. Performance testing was conducted on the Sponza scene using RenderDoc, demonstrating stable engine operation at 333 FPS and 1.2 GB of memory usage on NVIDIA RTX 2060 hardware. The object of the study is a game engine with a modular architecture that ensures efficient graphics processing. The subject of the study is the development and optimization of a modular game engine with support for modern rendering techniques. The aim of the work is to create a game engine that provides architectural flexibility and efficient graphics processing for various users. The novelty of the research lies in the development of a modular approach to engine architecture, enabling dynamic switching of render pipelines (Forward and Deferred Rendering) and optimizing performance through object grouping, as supported by the analysis of modern rendering techniques. The practical significance of the obtained results lies in the creation of a versatile tool for game development. Students can use the engine for educational projects involving real-time lighting simulation, indie developers can create prototypes with procedurally generated materials, and researchers can test new rendering techniques, such as IBL or ECS optimization, aligning with current trends in computer graphics. In the future, the engine can be extended to support animation and physical simulations, enabling the creation of more complex interactive scenes. This approach opens opportunities for integrating the engine into educational programs in game development and research projects in computer graphics. | |
dc.format.pages | 80 | |
dc.identifier.citation | Дворичанський О. С. Розроблення ігрового рушія для 3D ігор : кваліфікаційна робота на здобуття освітнього ступеня магістр за спеціальністю „6.122.00.00 — Комп'ютерні науки“ / Олег Сергійович Дворичанський. — Львів, 2024. — 80 с. | |
dc.identifier.uri | https://ena.lpnu.ua/handle/ntb/100950 | |
dc.language.iso | uk | |
dc.publisher | Національний університет "Львівська політехніка" | |
dc.relation.referencesen | Godot Engine. (n.d.). Godot Docs – 4.4 branch. Retrieved June 4, 2025, | |
dc.relation.referencesen | from https://docs.godotengine.org/en/stable/ | |
dc.relation.referencesen | Newzoo. (n.d.). Global games market outlook: Key growth drivers and | |
dc.relation.referencesen | challenges | |
dc.relation.referencesen | for | |
dc.relation.referencesen | 2025-2027. | |
dc.relation.referencesen | Retrieved | |
dc.relation.referencesen | June | |
dc.relation.referencesen | 4, | |
dc.relation.referencesen | 2025, | |
dc.relation.referencesen | https://newzoo.com/resources/blog/global-games-market-update-q1-2025 | |
dc.relation.referencesen | from | |
dc.relation.referencesen | Pharr, M., Jakob, W., & Humphreys, G. (n.d.). Physically based | |
dc.relation.referencesen | rendering: From theory to implementation (4th ed.). Retrieved June 4, 2025, from | |
dc.relation.referencesen | https://pbr-book.org/ | |
dc.relation.referencesen | Tomas Akenine-Moller, T., Haines, E., Hoffman, N., Pesce, A., Iwanicki, | |
dc.relation.referencesen | M., & Hillaire, S. (n.d.). Real-time rendering resources. Retrieved June 4, 2025, from | |
dc.relation.referencesen | https://www.realtimerendering.com/ | |
dc.rights.holder | © Національний університет "Львівська політехніка", 2024 | |
dc.rights.holder | © Дворичанський, Олег Сергійович, 2024 | |
dc.subject | 6.122.00.00 | |
dc.subject | ігровий рушій | |
dc.subject | модульна архітектура | |
dc.subject | рендеринг | |
dc.subject | PBR | |
dc.subject | IBL | |
dc.subject | Scene | |
dc.subject | Renderer3D | |
dc.subject | DirectX 11 | |
dc.subject | ECS | |
dc.subject | оптимізація продуктивності. Перелік використаних джерел: 1. Godot Engine. (n.d.). Godot Docs – 4.4 branch. Retrieved June 4 | |
dc.subject | 2025 | |
dc.subject | from https://docs.godotengine.org/en/stable/ 2. Newzoo. (n.d.). Global games market outlook: Key growth drivers and challenges for 2025-2027. Retrieved June 4 | |
dc.subject | 2025 | |
dc.subject | https://newzoo.com/resources/blog/global-games-market-update-q1-2025 3. from Pharr | |
dc.subject | M. | |
dc.subject | Jakob | |
dc.subject | W. | |
dc.subject | & Humphreys | |
dc.subject | G. (n.d.). Physically based rendering: From theory to implementation (4th ed.). Retrieved June 4 | |
dc.subject | 2025 | |
dc.subject | from https://pbr-book.org/ 4. Tomas Akenine-Moller | |
dc.subject | T. | |
dc.subject | Haines | |
dc.subject | E. | |
dc.subject | Hoffman | |
dc.subject | N. | |
dc.subject | Pesce | |
dc.subject | A. | |
dc.subject | Iwanicki | |
dc.subject | M. | |
dc.subject | & Hillaire | |
dc.subject | S. (n.d.). Real-time rendering resources. Retrieved June 4 | |
dc.subject | 2025 | |
dc.subject | from https://www.realtimerendering.com/ | |
dc.subject | game engine | |
dc.subject | modular architecture | |
dc.subject | rendering | |
dc.subject | PBR | |
dc.subject | IBL | |
dc.subject | Scene | |
dc.subject | Renderer3D | |
dc.subject | DirectX 11 | |
dc.subject | ECS | |
dc.subject | performance optimization | |
dc.title | Розроблення ігрового рушія для 3D ігор | |
dc.title.alternative | Development of a game engine for 3D games | |
dc.type | Students_diploma |