mirror of
https://github.com/kuhyx/praca_magisterska.git
synced 2026-07-04 11:43:16 +02:00
feat: replaced abstract and keywords
This commit is contained in:
parent
4059b950b8
commit
59d6211319
@ -55,13 +55,9 @@
|
||||
%-------------------------------------
|
||||
\cleardoublepage % Zaczynamy od nieparzystej strony
|
||||
\abstract
|
||||
Niniejsza praca przedstawia kompleksowe porównanie dwóch wiodących silników gier komputerowych: Unity oraz Unreal Engine. Badania obejmują zarówno analizę ilościową (testy wydajnościowe z~wykorzystaniem NVIDIA Nsight Graphics), jak i~jakościową (wywiady z~ośmioma deweloperami gier posiadającymi praktyczne doświadczenie w~obu silnikach). W~ramach pracy zaimplementowano identyczną grę z~gatunku bullet hell w~obu środowiskach, co pozwoliło na bezpośrednie porównanie procesu deweloperskiego oraz wydajności końcowych aplikacji.
|
||||
Przez ostatnią dekadę rynek tworzenia gier komputerowych zdominowały dwa silniki: Unity oraz Unreal Engine. Niniejsza praca podejmuje się wyzwania przeprowadzenia analizy porównawczej obu tych silników pod kątem wydajności oraz procesu programowania gier. W~tym celu wykorzystano narzędzie do profilowania NVIDIA Nsight, służące do oceny wydajności aplikacji graficznych, w~szczególności do pomiaru czasu klatki, obciążenia GPU oraz efektywności renderowania. Przeprowadzono również wywiady środowiskowe z~osobami związanymi profesjonalnie z~tworzeniem gier na obu platformach, jak również opisano proces twórczy, napotkane trudności oraz przewagi każdego z~silników. Na potrzeby pracy stworzono dwie gry w~tym samym gatunku --- \emph{bullet hell} --- słynącym z~mnogości elementów na ekranie i~efektów specjalnych, a~jednocześnie będącym relatywnie łatwym do zaimplementowania. Jedna gra została stworzona w~języku C\# (Unity), druga w~C++ (Unreal Engine). Następnie obie gry zostały poddane analizie w~programie NVIDIA Nsight w~celu oceny możliwości optymalizacji obu silników. Na podstawie wywiadów oraz analizy procesu twórczego scharakteryzowano również inne aspekty obu silników, takie jak próg wejścia, współpraca z~systemami kontroli wersji oraz architektura silnika. Praca stara się wypełnić niszę w~literaturze i~badaniach związanych z~oceną obu silników do gier.
|
||||
|
||||
Wyniki badań wskazują, że Unity oferuje niższy próg wejścia, lepsze wsparcie dla gier 2D oraz szybszy cykl iteracji dzięki natywnej obsłudze hot reload. Unreal Engine natomiast wyróżnia się zaawansowanymi możliwościami graficznymi, systemem wizualnego programowania Blueprints oraz lepszym wsparciem dla produkcji AAA. Testy wydajnościowe wykazały różnice w~zarządzaniu pamięcią wynikające z~odmiennych podejść architektonicznych: garbage collector w~Unity (C\#) versus ręczne zarządzanie pamięcią w~Unreal (C++).
|
||||
|
||||
Praca dostarcza praktycznych rekomendacji dotyczących wyboru silnika w~zależności od typu projektu, doświadczenia zespołu oraz wymagań technicznych. Wyniki mogą być przydatne zarówno dla początkujących deweloperów podejmujących decyzję o~wyborze pierwszego silnika, jak i~dla doświadczonych zespołów rozważających migrację między platformami.
|
||||
|
||||
\keywords silnik gier, Unity, Unreal Engine, porównanie wydajności, bullet hell, profilowanie GPU, NVIDIA Nsight, tworzenie gier
|
||||
\keywords Gry, Silniki do gier, C\#, C++, Unreal Engine, Unity, Gry \emph{bullet hell}, NVIDIA Nsight, Wydajność, Wywiady, Analiza porównawcza, Profilowanie, Renderowanie, Optymalizacja, Programowanie gier, Tworzenie gier, Czas klatki, Architektura silnika, Kontrola wersji, GPU
|
||||
|
||||
%----------------------------------------
|
||||
% Streszczenie po angielsku dla \langpol
|
||||
@ -69,13 +65,9 @@ Praca dostarcza praktycznych rekomendacji dotyczących wyboru silnika w~zależno
|
||||
%----------------------------------------
|
||||
\clearpage
|
||||
\secondabstract
|
||||
This thesis presents a~comprehensive comparison of two leading game engines: Unity and Unreal Engine. The research encompasses both quantitative analysis (performance testing using NVIDIA Nsight Graphics) and qualitative analysis (interviews with eight game developers with practical experience in both engines). As part of the study, an identical bullet hell game was implemented in both environments, enabling direct comparison of the development process and final application performance.
|
||||
Over the past decade, the video game development market has been dominated by two engines: Unity and Unreal Engine. This thesis undertakes the challenge of conducting a~comparative analysis of both engines in terms of performance and game programming workflows. To this end, the profiling tool NVIDIA Nsight was utilized to evaluate the performance of graphics applications, particularly for measuring frame time, GPU load, and rendering efficiency. Expert interviews were also conducted with professionals involved in game development on both platforms, and the creative process, encountered difficulties, and advantages of each engine were described. For the purposes of this study, two games were developed in the same genre --- \emph{bullet hell} --- known for its abundance of on-screen elements and special effects, while being relatively straightforward to implement. One game was created in C\# (Unity), the other in C++ (Unreal Engine). Both games were then analyzed using NVIDIA Nsight to assess the optimization capabilities of both engines. Drawing from the interviews and analysis of the creative process, other aspects of both engines were also characterized, such as the learning curve, integration with version control systems, and engine architecture. This thesis aims to fill a~gap in the literature and research concerning the evaluation of game engines.
|
||||
|
||||
The findings indicate that Unity offers a~lower entry barrier, better support for 2D games, and a~faster iteration cycle due to native hot reload support. Unreal Engine, on the other hand, excels in advanced graphical capabilities, the Blueprints visual programming system, and better support for AAA productions. Performance tests revealed differences in memory management resulting from distinct architectural approaches: garbage collector in Unity (C\#) versus manual memory management in Unreal (C++).
|
||||
|
||||
The thesis provides practical recommendations for engine selection depending on project type, team experience, and technical requirements. The results may be useful for both novice developers making decisions about their first engine choice and experienced teams considering migration between platforms.
|
||||
|
||||
\secondkeywords game engine, Unity, Unreal Engine, performance comparison, bullet hell, GPU profiling, NVIDIA Nsight, game development
|
||||
\secondkeywords Games, Game engines, C\#, C++, Unreal Engine, Unity, Bullet hell games, NVIDIA Nsight, Performance, Interviews, Comparative analysis, Profiling, Rendering, Optimization, Game programming, Game development, Frame time, Engine architecture, Version control, GPU
|
||||
|
||||
\pagestyle{plain}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user