From 2add3b3e6ccee980ebd5fb2c762d680f61db6ea6 Mon Sep 17 00:00:00 2001 From: Krzysztof kuhy Rudnicki Date: Sat, 7 Feb 2026 16:43:12 +0100 Subject: [PATCH] chore: added dots everywhere --- latex/main.pdf | Bin 4261436 -> 4262968 bytes latex/main.tex | 8 +- latex/tex/1-wstep.tex | 70 ++++---- latex/tex/2-przeglad-literatury.tex | 12 +- latex/tex/3-silniki-gier.tex | 90 +++++----- latex/tex/4-metodologia.tex | 66 ++++---- latex/tex/5-testy-wydajnosci.tex | 238 ++++++++++++++------------- latex/tex/6-analiza-mozliwosci.tex | 152 ++++++++--------- latex/tex/7-porownanie-wynikow.tex | 108 ++++++------ latex/tex/8-podsumowanie.tex | 128 +++++++------- latex/tex/implementacja-gry.tex | 85 +++++----- latex/tex/narzedzia-profilowania.tex | 85 +++++----- latex/tex/wywiady-analiza.tex | 108 ++++++------ scripts/fix_item_dots.py | 108 ++++++++++++ 14 files changed, 691 insertions(+), 567 deletions(-) create mode 100644 scripts/fix_item_dots.py diff --git a/latex/main.pdf b/latex/main.pdf index 7f9b5e3a2272ca260698d5399692fc560a996557..2d1b9bee4e034fd80457052d32e36b4062db2343 100644 GIT binary patch delta 220747 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�v2}(< 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

C>!t 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 D_?6zX delta 219076 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%0DYKLM@yh3G^czNXZ9; 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�cYS0(}AiHf&8(ZNkKu4KS%y13BeHe}Y&1 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

5v29~q2=a%uOt2g|2 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 diff --git a/latex/main.tex b/latex/main.tex index 2dc2d62..1e6ef62 100644 --- a/latex/main.tex +++ b/latex/main.tex @@ -72,7 +72,7 @@ %------------------------------------- \cleardoublepage % Zaczynamy od nieparzystej strony \abstract -Przez ostatnią dekadę rynek tworzenia gier komputerowych \\ zdominowały dwa silniki: Unity oraz +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 wyd ajności oraz procesu @@ -204,9 +204,9 @@ Game development, Frame time, Engine architecture, Version control, GPU %\begin{table}[!h] \centering % \caption{Tabela w załączniku.} % \begin{tabular} {| c | c | r |} \hline -% Kolumna 1 & Kolumna 2 & Liczba \\ \hline\hline -% cell1 & cell2 & 60 \\ \hline -% \multicolumn{2}{|r|}{Suma:} & 123,45 \\ \hline +% Kolumna 1 & Kolumna 2 & Liczba \hline\hline +% cell1 & cell2 & 60 \hline +% \multicolumn{2}{|r|}{Suma:} & 123,45 \hline % \end{tabular} %\end{table} %\lipsum[3-4] diff --git a/latex/tex/1-wstep.tex b/latex/tex/1-wstep.tex index c747879..723e145 100644 --- a/latex/tex/1-wstep.tex +++ b/latex/tex/1-wstep.tex @@ -17,11 +17,11 @@ oraz końcową jakość produktu. \subsection{Zakres pracy} Praca obejmuje analizę następujących aspektów: \begin{itemize} - \item Wydajność renderowania grafiki - \item Możliwości i~funkcjonalności oferowane przez różne silniki - \item Łatwość użycia i~krzywa uczenia się - \item Praca z narzędziem przy użycji dużych modeli językowch - \item Ekosystem narzędzi i~społeczność deweloperska + \item Wydajność renderowania grafiki. + \item Możliwości i~funkcjonalności oferowane przez różne silniki. + \item Łatwość użycia i~krzywa uczenia się. + \item Praca z narzędziem przy użycji dużych modeli językowch. + \item Ekosystem narzędzi i~społeczność deweloperska. \end{itemize} \subsection{Wybór gry testowej -- gatunek bullet hell}\label{subsec:bullet-hell} @@ -39,14 +39,14 @@ ogromne ilości pocisków tworzących skomplikowane wzory na ekranie. Kluczowe c \begin{itemize} \item \textbf{Masowa ilość pocisków} -- na ekranie jednocześnie może znajdować się od kilkuset - do kilku tysięcy pocisków, tworzących złożone formacje \\ geometryczne + do kilku tysięcy pocisków, tworzących złożone formacje geometryczne. \item \textbf{Precyzyjne hitboxy} -- obszar kolizji postaci gracza jest znacznie mniejszy niż jej wizualna reprezentacja (często ograniczony do kilku pikseli), co umożliwia nawigację między - pociskami - \item \textbf{Duża liczba przeciwników} -- na ekranie jednocześnie pojawia się wiele jednostek przeciwnika, co zwiększa złożoność sytuacji i obciążenie systemu - \item \textbf{Ciągły ruch} -- gracz musi nieustannie przemieszczać się po ekranie, unikając kolizji + pociskami. + \item \textbf{Duża liczba przeciwników} -- na ekranie jednocześnie pojawia się wiele jednostek przeciwnika, co zwiększa złożoność sytuacji i obciążenie systemu. + \item \textbf{Ciągły ruch} -- gracz musi nieustannie przemieszczać się po ekranie, unikając kolizji. \item \textbf{Eskalacja trudności} -- wraz z~postępem gry wzrasta liczba przeciwników - i~gęstość pocisków + i~gęstość pocisków. \end{itemize} Klasyczne przykłady gatunku to serie \textit{Touhou Project}, @@ -66,19 +66,19 @@ Klasyczne przykłady gatunku to serie \textit{Touhou Project}, Gatunek bullet hell został wybrany jako podstawa testów wydajnościowych z~następujących powodów: \begin{enumerate} - \item \textbf{Intensywne wykorzystanie zasobów} -- jednoczesne renderowanie setek lub tysięcy obiektów (pocisków) stanowi znaczące obciążenie dla systemu renderowania + \item \textbf{Intensywne wykorzystanie zasobów} -- jednoczesne renderowanie setek lub tysięcy obiektów (pocisków) stanowi znaczące obciążenie dla systemu renderowania. \item \textbf{Testowanie zarządzania pamięcią} -- ciągłe tworzenie i~niszczenie obiektów - pocisków eksponuje różnice w~implementacji \\ garbage collectora (Unity/C\#) versus ręcznego - zarządzania pamięcią (Unreal/C++) + pocisków eksponuje różnice w~implementacji garbage collectora (Unity/C\#) versus ręcznego + zarządzania pamięcią (Unreal/C++). - \item \textbf{Wymagania systemu fizyki} -- wykrywanie kolizji między graczem a~setkami pocisków w~każdej klatce obciąża system fizyki + \item \textbf{Wymagania systemu fizyki} -- wykrywanie kolizji między graczem a~setkami pocisków w~każdej klatce obciąża system fizyki. - \item \textbf{Prostota implementacji} -- podstawowa mechanika gry jest stosunkowo prosta koncepcyjnie, co pozwala skupić się na porównaniu wydajności, a~nie złożoności logiki gry + \item \textbf{Prostota implementacji} -- podstawowa mechanika gry jest stosunkowo prosta koncepcyjnie, co pozwala skupić się na porównaniu wydajności, a~nie złożoności logiki gry. - \item \textbf{Skalowalność testu} -- łatwo kontrolować poziom obciążenia poprzez modyfikację liczby aktywnych pocisków i~przeciwników + \item \textbf{Skalowalność testu} -- łatwo kontrolować poziom obciążenia poprzez modyfikację liczby aktywnych pocisków i~przeciwników. - \item \textbf{Reprezentatywność dla gier 2D} -- gatunek jest typowym przedstawicielem gier 2D, co pozwala ocenić wsparcie silników dla tego segmentu rynku + \item \textbf{Reprezentatywność dla gier 2D} -- gatunek jest typowym przedstawicielem gier 2D, co pozwala ocenić wsparcie silników dla tego segmentu rynku. \end{enumerate} @@ -87,10 +87,10 @@ Gatunek bullet hell został wybrany jako podstawa testów wydajnościowych z~nas Zaimplementowana gra testowa charakteryzuje się następującymi parametrami: \begin{itemize} - \item Czas rozgrywki: 90 sekund - \item Eskalacja trudności: liniowy wzrost częstotliwości spawnu przeciwników - \item Typy przeciwników: 3 warianty z~różnymi wzorami strzelania - \item System punktacji oparty na eliminacji przeciwników + \item Czas rozgrywki: 90 sekund. + \item Eskalacja trudności: liniowy wzrost częstotliwości spawnu przeciwników. + \item Typy przeciwników: 3 warianty z~różnymi wzorami strzelania. + \item System punktacji oparty na eliminacji przeciwników. \end{itemize} Te parametry zapewniają wystarczające obciążenie systemu do ujawnienia różnic wydajnościowych między silnikami, pozostając jednocześnie w~granicach typowych dla gier indie z~tego gatunku. @@ -100,24 +100,24 @@ Te parametry zapewniają wystarczające obciążenie systemu do ujawnienia róż Praca składa się z~następujących rozdziałów: \begin{enumerate} - \item \textbf{Wstęp} -- wprowadzenie do tematyki, motywacja, cel i~zakres pracy - \item \textbf{Przegląd literatury} -- analiza istniejących badań porównawczych silników gier - \item \textbf{Charakterystyka silników} -- szczegółowy opis Unity i~Unreal Engine - \item \textbf{Metodologia} -- opis metodyki badawczej i~kryteriów porównania - \item \textbf{Analiza wywiadów} -- wyniki badań jakościowych z~deweloperami - \item \textbf{Implementacja gry testowej} -- doświadczenia z~tworzenia gry w~obu silnikach - \item \textbf{Narzędzia profilowania} -- opis NVIDIA Nsight i~metodyki pomiarów - \item \textbf{Testy wydajności} -- wyniki pomiarów wydajnościowych - \item \textbf{Analiza możliwości} -- porównanie funkcjonalności silników - \item \textbf{Porównanie wyników} -- synteza i~analiza zebranych danych - \item \textbf{Podsumowanie} -- wnioski i~rekomendacje + \item \textbf{Wstęp} -- wprowadzenie do tematyki, motywacja, cel i~zakres pracy. + \item \textbf{Przegląd literatury} -- analiza istniejących badań porównawczych silników gier. + \item \textbf{Charakterystyka silników} -- szczegółowy opis Unity i~Unreal Engine. + \item \textbf{Metodologia} -- opis metodyki badawczej i~kryteriów porównania. + \item \textbf{Analiza wywiadów} -- wyniki badań jakościowych z~deweloperami. + \item \textbf{Implementacja gry testowej} -- doświadczenia z~tworzenia gry w~obu silnikach. + \item \textbf{Narzędzia profilowania} -- opis NVIDIA Nsight i~metodyki pomiarów. + \item \textbf{Testy wydajności} -- wyniki pomiarów wydajnościowych. + \item \textbf{Analiza możliwości} -- porównanie funkcjonalności silników. + \item \textbf{Porównanie wyników} -- synteza i~analiza zebranych danych. + \item \textbf{Podsumowanie} -- wnioski i~rekomendacje. \end{enumerate} \subsection{Metodologia} \begin{itemize} - \item \textbf{Testy wydajnościowe} -- Pomiary z~wykorzystaniem NVIDIA Nsight Graphics, zapewniające porównywalność wyników między silnikami - \item \textbf{Wywiady z~deweloperami} -- badania jakościowe dostarczające kontekstu \\ praktycznego użytkowania silników - \item \textbf{Implementacja porównawcza} -- stworzenie identycznej gry w~obu silnikach, dokumentując różnice w~procesie deweloperskim + \item \textbf{Testy wydajnościowe} -- Pomiary z~wykorzystaniem NVIDIA Nsight Graphics, zapewniające porównywalność wyników między silnikami. + \item \textbf{Wywiady z~deweloperami} -- badania jakościowe dostarczające kontekstu praktycznego użytkowania silników. + \item \textbf{Implementacja porównawcza} -- stworzenie identycznej gry w~obu silnikach, dokumentując różnice w~procesie deweloperskim. \end{itemize} diff --git a/latex/tex/2-przeglad-literatury.tex b/latex/tex/2-przeglad-literatury.tex index d924669..a751a0a 100644 --- a/latex/tex/2-przeglad-literatury.tex +++ b/latex/tex/2-przeglad-literatury.tex @@ -15,14 +15,14 @@ gier charakteryzują się modularną architekturą, która umożliwia ponowne wykorzystanie komponentów między różnymi projektami. Gregory \cite{gregory2018game} w~swojej pracy ,,Game Engine Architecture'' -przedstawia kompleksowy \\ przegląd ewolucji silników gier, definiując je jako +przedstawia kompleksowy przegląd ewolucji silników gier, definiując je jako ,,oprogramowanie zaprojektowane specjalnie do tworzenia gier''. Jego analiza pokazuje, że współczesne silniki gier składają się z~kilku kluczowych warstw: warstwy platformy (platform layer), warstwy podstawowych systemów (core systems), warstwy zasobów (resource manager), warstwy renderingu (rendering engine), systemów animacji, fizyki oraz gameplay. -Ta architektura warstwowa umożliwia modularność i~ponowne \\ +Ta architektura warstwowa umożliwia modularność i~ponowne wykorzystanie komponentów. Pierwsze silniki gier były ściśle powiązane z konkretnym sprzętem @@ -39,13 +39,13 @@ zaawansowanymi narzędziami do debugowania. \subsection{Klasyfikacja silników gier} \subsubsection{Architektura silników według Gregory'ego} -Gregory \cite{gregory2018game} przedstawia taksonomię architektur silników gier, \\ +Gregory \cite{gregory2018game} przedstawia taksonomię architektur silników gier, wyróżniając kilka kluczowych typów organizacji: \begin{itemize} - \item \textbf{Silniki obiektowe} - bazujące na hierarchii obiektów gry z dziedziczeniem - \item \textbf{Silniki komponentowe} - wykorzystujące systemy \\ entity-component-system (ECS) - \item \textbf{Silniki hybrydowe} - łączące elementy różnych podejść architektonicznych + \item \textbf{Silniki obiektowe} - bazujące na hierarchii obiektów gry z dziedziczeniem. + \item \textbf{Silniki komponentowe} - wykorzystujące systemy entity-component-system (ECS). + \item \textbf{Silniki hybrydowe} - łączące elementy różnych podejść architektonicznych. \end{itemize} Autor podkreśla, że wybór architektury ma fundamentalny wpływ na wydajność, skalowalność i łatwość rozwoju gier. Systemy ECS zyskują na popularności ze względu na lepszą wydajność cache procesora i większą elastyczność w definiowaniu zachowań obiektów gry. diff --git a/latex/tex/3-silniki-gier.tex b/latex/tex/3-silniki-gier.tex index 06b2373..4366d50 100644 --- a/latex/tex/3-silniki-gier.tex +++ b/latex/tex/3-silniki-gier.tex @@ -16,22 +16,22 @@ kilkoma kluczowymi czynnikami: \begin{itemize} \item \textbf{Dominacja rynkowa} -- według raportu Video Game Insights, w~2024 roku 51\% gier wydanych na platformie Steam powstało w~Unity, - \\ a 28\% w~Unreal Engine \cite{vgi2025engines} + a 28\% w~Unreal Engine \cite{vgi2025engines}. \item \textbf{Reprezentatywność podejść architektonicznych} -- silniki reprezentują odmienne filozofie: Unity opiera się na - języku C\# z~garbage collectorem, \\ a~Unreal wykorzystuje C++ + języku C\# z~garbage collectorem, a~Unreal wykorzystuje C++ z~własnym systemem refleksji, makrami oraz garbage collectorem - dla obiektów UObject + dla obiektów UObject. \item \textbf{Różnorodność zastosowań} -- Unity dominuje w~segmencie gier mobilnych (71\% z~top 1000 gier mobilnych) oraz wśród deweloperów indie, natomiast Unreal generuje większe przychody w~produkcjach AAA (31\% przychodów Steam w~2024 vs 26\% dla Unity) - \cite{vgi2025engines, g2gameengines} + \cite{vgi2025engines, g2gameengines}. \item \textbf{Dostępność} -- oba silniki oferują darmowe wersje - dla małych zespołów i projektów edukacyjnych + dla małych zespołów i projektów edukacyjnych. \item \textbf{Aktywna społeczność} -- Unity posiada ponad - 5~milionów zarejestrowanych deweloperów \cite{g2gameengines} + 5~milionów zarejestrowanych deweloperów \cite{g2gameengines}. \end{itemize} \subsection{Unity}\label{subsec:unity} @@ -51,16 +51,16 @@ deweloperów i małych studiów \cite{unity_wikipedia}. Decyzja ta przyczyniła się do wzrostu popularności silnika w segmencie gier mobilnych oraz indie. -Unity wykorzystuje język programowania \textbf{C\#} działający \\ +Unity wykorzystuje język programowania \textbf{C\#} działający na platformie .NET/Mono, co zapewnia: \begin{itemize} - \item Automatyczne zarządzanie pamięcią poprzez garbage collector - \item Bezpieczeństwo typów i obsługę wyjątków - \item Bogatą bibliotekę standardową + \item Automatyczne zarządzanie pamięcią poprzez garbage collector. + \item Bezpieczeństwo typów i obsługę wyjątków. + \item Bogatą bibliotekę standardową. \end{itemize} Architektura Unity opiera się na wzorcu \textit{GameObject-Component}, -gdzie \\ każdy obiekt w scenie (GameObject) może posiadać dowolną +gdzie każdy obiekt w scenie (GameObject) może posiadać dowolną liczbę komponentów definiujących jego zachowanie. Podejście to promuje kompozycję nad dziedziczeniem i ułatwia tworzenie modularnego kodu. @@ -73,32 +73,32 @@ Unity oferuje kompleksowy zestaw narzędzi do tworzenia gier 2D i 3D: \item \textbf{Rendering} -- wsparcie dla wielu pipeline'ów renderowania: Built-in, Universal Render Pipeline (URP) dla platform mobilnych oraz High Definition Render Pipeline (HDRP) dla wysokiej - jakości grafiki - \item \textbf{Fizyka} -- integracja z silnikami PhysX (3D) i Box2D (2D) + jakości grafiki. + \item \textbf{Fizyka} -- integracja z silnikami PhysX (3D) i Box2D (2D). \item \textbf{Animacja} -- system Mecanim z obsługą maszyn stanów - i blendingu animacji - \item \textbf{Audio} -- wbudowany system dźwięku przestrzennego + i blendingu animacji. + \item \textbf{Audio} -- wbudowany system dźwięku przestrzennego. \item \textbf{UI} -- dwa systemy interfejsu użytkownika: uGUI oraz - nowoczesny UI Toolkit + nowoczesny UI Toolkit. \item \textbf{Multiplayer} -- Netcode for GameObjects oraz - integracja z usługami sieciowymi + integracja z usługami sieciowymi. \end{itemize} \subsubsection{Narzędzia deweloperskie} -Edytor Unity zapewnia interfejs graficzny z~następującymi \\ +Edytor Unity zapewnia interfejs graficzny z~następującymi funkcjonalnościami \cite{unity_wikipedia}: \begin{itemize} \item Hierarchiczny widok sceny z możliwością edycji w czasie - rzeczywistym - \item Inspektor właściwości z obsługą serializacji pól \\ poprzez - atrybut \texttt{[SerializeField]} + rzeczywistym. + \item Inspektor właściwości z obsługą serializacji pól poprzez + atrybut \texttt{[SerializeField]}. \item Wbudowany profiler wydajności (CPU, GPU, pamięć) - \cite{unity_profiler} + \cite{unity_profiler}. \item Asset Store -- marketplace z gotowymi zasobami i - rozszerzeniami + rozszerzeniami. \item Obsługa hot reload -- możliwość edycji kodu podczas działania - gry + gry. \end{itemize} \subsection{Unreal Engine}\label{subsec:unreal} @@ -120,9 +120,9 @@ technologie takie jak Nanite (wirtualizowana geometria) i Lumen Unreal Engine wykorzystuje język programowania \textbf{C++} z rozszerzeniami specyficznymi dla silnika (makra UE), co zapewnia: \begin{itemize} - \item Maksymalną wydajność dzięki kompilacji do kodu natywnego - \item Pełną kontrolę nad zarządzaniem pamięcią - \item Strome krzywe uczenia, szczególnie dla programistów bez doświadczenia w C++ + \item Maksymalną wydajność dzięki kompilacji do kodu natywnego. + \item Pełną kontrolę nad zarządzaniem pamięcią. + \item Strome krzywe uczenia, szczególnie dla programistów bez doświadczenia w C++. \end{itemize} Dodatkowo Unreal oferuje system \textbf{Blueprints} -- @@ -136,25 +136,25 @@ być mniej wydajne niż natywny C++. Unreal Engine wyróżnia się zaawansowanymi możliwościami graficznymi: \begin{itemize} - \item \textbf{Rendering} -- fotorealistyczna grafika z obsługą ray tracingu, Nanite i Lumen - \item \textbf{Fizyka} -- silnik Chaos Physics z obsługą destrukcji i symulacji ciał miękkich - \item \textbf{Animacja} -- Control Rig, Animation Blueprints, IK Retargeting - \item \textbf{Landscape} -- zaawansowane narzędzia do tworzenia dużych terenów - \item \textbf{Niagara} -- system efektów cząsteczkowych nowej generacji - \item \textbf{Sequencer} -- narzędzie do tworzenia cinematików i cutscen + \item \textbf{Rendering} -- fotorealistyczna grafika z obsługą ray tracingu, Nanite i Lumen. + \item \textbf{Fizyka} -- silnik Chaos Physics z obsługą destrukcji i symulacji ciał miękkich. + \item \textbf{Animacja} -- Control Rig, Animation Blueprints, IK Retargeting. + \item \textbf{Landscape} -- zaawansowane narzędzia do tworzenia dużych terenów. + \item \textbf{Niagara} -- system efektów cząsteczkowych nowej generacji. + \item \textbf{Sequencer} -- narzędzie do tworzenia cinematików i cutscen. \end{itemize} \subsubsection{Narzędzia deweloperskie} Unreal Editor oferuje rozbudowane środowisko deweloperskie~\cite{unreal_docs}: \begin{itemize} - \item Edytor poziomów z obsługą streamingu i Level of Detail (LOD) - \item Blueprint Visual Scripting -- programowanie wizualne - \item Material Editor -- węzłowy edytor materiałów - \item Wbudowany profiler z analizą GPU/CPU i pamięci - \item Marketplace -- sklep z zasobami i pluginami - \item Dostęp do kodu źródłowego silnika - \item Live Coding -- eksperymentalne wsparcie dla hot reload w C++ + \item Edytor poziomów z obsługą streamingu i Level of Detail (LOD). + \item Blueprint Visual Scripting -- programowanie wizualne. + \item Material Editor -- węzłowy edytor materiałów. + \item Wbudowany profiler z analizą GPU/CPU i pamięci. + \item Marketplace -- sklep z zasobami i pluginami. + \item Dostęp do kodu źródłowego silnika. + \item Live Coding -- eksperymentalne wsparcie dla hot reload w C++. \end{itemize} \textbf{Porównanie architektoniczne} @@ -198,15 +198,15 @@ analizę dwóch fundamentalnie różnych podejść do tworzenia gier: \item \textbf{Produktywność vs wydajność} -- C\# w Unity oferuje szybszy rozwój kosztem pewnego narzutu wydajnościowego, podczas gdy C++ w Unreal wymaga więcej pracy, ale zapewnia maksymalną - kontrolę + kontrolę. \item \textbf{Dostępność vs specjalizacja} -- Unity celuje w szeroki rynek z niskim progiem wejścia, Unreal koncentruje się - na produkcjach premium + na produkcjach premium. \item \textbf{Elastyczność vs integracja} -- Unity pozwala na większą swobodę w doborze zewnętrznych narzędzi, Unreal - oferuje bardziej zintegrowane rozwiązania + oferuje bardziej zintegrowane rozwiązania. \end{enumerate} -Analiza tych dwóch silników dostarcza kompleksowego obrazu \\ -współczesnego stanu technologii do tworzenia gier i~pozwala na \\ +Analiza tych dwóch silników dostarcza kompleksowego obrazu +współczesnego stanu technologii do tworzenia gier i~pozwala na sformułowanie praktycznych rekomendacji dla deweloperów. diff --git a/latex/tex/4-metodologia.tex b/latex/tex/4-metodologia.tex index 6d9260b..0097518 100644 --- a/latex/tex/4-metodologia.tex +++ b/latex/tex/4-metodologia.tex @@ -15,15 +15,15 @@ za pomocą narzędzia NVIDIA Nsight Systems: \begin{itemize} \item \textbf{Czas klatki} (ang. \emph{frame time}) -- czas potrzebny - na wyrenderowanie pojedynczej klatki, wyrażony w~milisekundach - \item \textbf{Liczba klatek na sekundę} (FPS) -- wartość \\ pochodna - od czasu klatki, kluczowa dla płynności rozgrywki + na wyrenderowanie pojedynczej klatki, wyrażony w~milisekundach. + \item \textbf{Liczba klatek na sekundę} (FPS) -- wartość pochodna + od czasu klatki, kluczowa dla płynności rozgrywki. \item \textbf{Wykorzystanie GPU} -- procentowe obciążenie karty graficznej, - mierzone poprzez liczniki sprzętowe NVIDIA + mierzone poprzez liczniki sprzętowe NVIDIA. \item \textbf{Wywołania Vulkan API} -- szczegółowa analiza wywołań - interfejsu graficznego, w~tym funkcji synchronizacji i~prezentacji + interfejsu graficznego, w~tym funkcji synchronizacji i~prezentacji. \item \textbf{Wywołania systemowe} -- analiza mechanizmów wielowątkowości - i~synchronizacji na poziomie systemu operacyjnego + i~synchronizacji na poziomie systemu operacyjnego. \end{itemize} \subsection{Środowisko testowe} @@ -33,13 +33,13 @@ za pomocą narzędzia NVIDIA Nsight Systems: Wszystkie testy wydajnościowe przeprowadzono na komputerze o następującej specyfikacji: \begin{itemize} - \item \textbf{Procesor}: AMD Ryzen 9 7900X3D 12-Core Processor (24 rdzenie, 48 wątków) - \item \textbf{Karta graficzna}: NVIDIA GeForce RTX 3090 - \item \textbf{Pamięć GPU}: 24 GB GDDR6X - \item \textbf{Sterowniki NVIDIA}: wersja 590.48.01 - \item \textbf{Pamięć RAM}: 32 GB - \item \textbf{System operacyjny}: Arch Linux (jądro Linux 6.18.5-arch1-1) - \item \textbf{Dysk}: SSD o pojemności 3,6 TB + \item \textbf{Procesor}: AMD Ryzen 9 7900X3D 12-Core Processor (24 rdzenie, 48 wątków). + \item \textbf{Karta graficzna}: NVIDIA GeForce RTX 3090. + \item \textbf{Pamięć GPU}: 24 GB GDDR6X. + \item \textbf{Sterowniki NVIDIA}: wersja 590.48.01. + \item \textbf{Pamięć RAM}: 32 GB. + \item \textbf{System operacyjny}: Arch Linux (jądro Linux 6.18.5-arch1-1). + \item \textbf{Dysk}: SSD o pojemności 3,6 TB. \end{itemize} \label{subsubsec:specyfikacja-oprogramowania} @@ -47,9 +47,9 @@ Wszystkie testy wydajnościowe przeprowadzono na komputerze o następującej spe W badaniach wykorzystano następujące wersje oprogramowania: \begin{itemize} - \item \textbf{Unity}: 6.0 (6000.0.58f2) LTS - \item \textbf{Unreal Engine}: 5.5.3 - \item \textbf{NVIDIA Nsight Systems}: 2025.5.2 + \item \textbf{Unity}: 6.0 (6000.0.58f2) LTS. + \item \textbf{Unreal Engine}: 5.5.3. + \item \textbf{NVIDIA Nsight Systems}: 2025.5.2. \end{itemize} Wybór wersji LTS silnika Unity podyktowany był stabilnością oraz długoterminowym wsparciem, @@ -64,11 +64,11 @@ Na potrzeby badań porównawczych zaimplementowano identyczną grę w gatunku \emph{bullet hell} w obu silnikach. Gra charakteryzuje się następującymi cechami: \begin{itemize} - \item Sterowana przez gracza postać - \item System generowania przeciwników z progresywnie rosnącym obciążeniem - \item Generowanie wzorców pocisków - \item Wykrywanie kolizji między obiektami - \item Tryb przetrwania trwający 90 sekund + \item Sterowana przez gracza postać. + \item System generowania przeciwników z progresywnie rosnącym obciążeniem. + \item Generowanie wzorców pocisków. + \item Wykrywanie kolizji między obiektami. + \item Tryb przetrwania trwający 90 sekund. \end{itemize} Wybór gatunku \emph{bullet hell} podyktowany był możliwością generowania dużej @@ -83,14 +83,14 @@ progresywnie zwiększała obciążenie poprzez: \begin{itemize} \item \textbf{Przyspieszanie spawnu przeciwników} -- interwał między spawnem zmniejsza się liniowo od 0,25~s (początek) do 0,08~s (koniec), - z~dodatkowym ,,finalnym szturmem'' przez ostatnie 5~sekund + z~dodatkowym ,,finalnym szturmem'' przez ostatnie 5~sekund. \item \textbf{Zwiększanie różnorodności typów przeciwników} -- - początkowo \\ (0--25\% czasu) pojawiają się tylko podstawowi + początkowo (0--25\% czasu) pojawiają się tylko podstawowi przeciwnicy, później wprowadzane są kolejno szybsze jednostki (25--50\%), strzelające wieżyczki (50--75\%) oraz wytrzymałe - czołgi (75--100\%) + czołgi (75--100\%). \item \textbf{Maksymalna liczba przeciwników} -- limit jednoczesnych - przeciwników na scenie wynosi 200 jednostek + przeciwników na scenie wynosi 200 jednostek. \end{itemize} \newpage Na potrzeby profilowania rozgrywka została podzielona na trzy fazy czasowe: @@ -110,21 +110,21 @@ interwał spawnu osiąga minimum 0,08~s. Ostatnie 5~sekund to Przeprowadzono cztery sesje pomiarowe -- po dwie dla każdego silnika: \begin{enumerate} - \item \textbf{Unity -- tryb statyczny}: Gracz nieruchomy z~włączoną \\ - nieśmiertelnością, pełne 90~sekund rozgrywki profilowane w~jednej sesji + \item \textbf{Unity -- tryb statyczny}: Gracz nieruchomy z~włączoną + nieśmiertelnością, pełne 90~sekund rozgrywki profilowane w~jednej sesji. \item \textbf{Unity -- tryb dynamiczny}: Gracz aktywnie poruszający się - i~strzelający, pełne 90~sekund rozgrywki + i~strzelający, pełne 90~sekund rozgrywki. \item \textbf{Unreal Engine -- tryb statyczny}: Ze względu na ograniczenia techniczne (awaria przy śledzeniu Vulkan API) rozgrywkę podzielono na - trzy 30-sekundowe fazy, uruchamiane z~flagą \texttt{-{}-start-time=N} + trzy 30-sekundowe fazy, uruchamiane z~flagą \texttt{-{}-start-time=N}. \item \textbf{Unreal Engine -- tryb dynamiczny}: Analogicznie do trybu - statycznego, trzy fazy po 30~sekund z~aktywnym graczem + statycznego, trzy fazy po 30~sekund z~aktywnym graczem. \end{enumerate} Narzędzie NVIDIA Nsight Systems rejestrowało: \begin{itemize} \item Wywołania Vulkan API (dla Unity -- dla Unreal niemożliwe z~powodu - awarii) - \item Metryki sprzętowe GPU z~częstotliwością 10\,000~Hz - \item Wywołania funkcji systemowych (pthread, futex itp.) + awarii). + \item Metryki sprzętowe GPU z~częstotliwością 10\,000~Hz. + \item Wywołania funkcji systemowych (pthread, futex itp.). \end{itemize} diff --git a/latex/tex/5-testy-wydajnosci.tex b/latex/tex/5-testy-wydajnosci.tex index 3d1d6f1..c04efa4 100644 --- a/latex/tex/5-testy-wydajnosci.tex +++ b/latex/tex/5-testy-wydajnosci.tex @@ -1,16 +1,17 @@ \clearpage +\raggedbottom \section{Testy wydajności} \label{sec:testy-wydajnosci} Dla każdego scenariusza i~silnika rejestrowano następujące metryki przy użyciu NVIDIA Nsight Systems: \begin{itemize} - \item \textbf{Czas klatki} (frame time) -- czas renderowania pojedynczej klatki w~milisekundach - \item \textbf{FPS} (frames per second) -- liczba klatek na sekundę, wyliczana jako \\ $1000 / \text{frame time}$ - \item \textbf{Wykorzystanie GPU} -- procent wykorzystania mocy obliczeniowej karty graficznej - \item \textbf{Zużycie pamięci VRAM} -- ilość zajętej pamięci karty graficznej w~megabajtach - \item \textbf{Liczba wywołań rysowania} (draw calls) -- liczba instrukcji renderowania na klatkę - \item \textbf{Liczba wierzchołków} -- całkowita liczba przetworzonych wierzchołków na klatkę + \item \textbf{Czas klatki} (frame time) -- czas renderowania pojedynczej klatki w~milisekundach. + \item \textbf{FPS} (frames per second) -- liczba klatek na sekundę, wyliczana jako $1000 / \text{frame time}$. + \item \textbf{Wykorzystanie GPU} -- procent wykorzystania mocy obliczeniowej karty graficznej. + \item \textbf{Zużycie pamięci VRAM} -- ilość zajętej pamięci karty graficznej w~megabajtach. + \item \textbf{Liczba wywołań rysowania} (draw calls) -- liczba instrukcji renderowania na klatkę. + \item \textbf{Liczba wierzchołków} -- całkowita liczba przetworzonych wierzchołków na klatkę. \end{itemize} \subsection{Wyniki testów dla silnika Unity} @@ -60,12 +61,12 @@ klatki 0,08 ms odpowiada sytuacjom, gdy kolejne wywołania prezentacji następuj sobie -- może to wynikać z mechanizmu podwójnego buforowania (ang. \textit{double buffering}) lub chwilowego braku pracy do wykonania przez GPU. -Wartość maksymalna 1\,239,62 ms (ponad sekunda) występuje podczas \\ fazy inicjalizacji aplikacji, -gdy silnik Unity wykonuje jednorazowe \\ operacje: kompilację shaderów, alokację dużych bloków pamięci \\ GPU, +Wartość maksymalna 1\,239,62 ms (ponad sekunda) występuje podczas fazy inicjalizacji aplikacji, +gdy silnik Unity wykonuje jednorazowe operacje: kompilację shaderów, alokację dużych bloków pamięci \\ GPU, tworzenie obiektów swapchain oraz -inicjalizację systemu renderowania. \\ Jest to zachowanie typowe dla aplikacji Vulkan, gdzie znaczna część +inicjalizację systemu renderowania. Jest to zachowanie typowe dla aplikacji Vulkan, gdzie znaczna część pracy inicjalizacyjnej wykonywana jest przy -starcie, w przeciwieństwie \\ do OpenGL, gdzie inicjalizacja jest bardziej rozłożona w czasie. +starcie, w przeciwieństwie do OpenGL, gdzie inicjalizacja jest bardziej rozłożona w czasie. Współczynnik zmienności (CV) wynoszący 153,24\% jest wysoki, jednak wynika on głównie z uwzględnienia ekstremalnych wartości inicjalizacyjnych. @@ -167,15 +168,15 @@ renderującego na poziomie pojedynczych funkcji API. Podczas testu zarejestrowan \end{tabular} \end{table} -\texttt{vkWaitForFences} \\ pochłonęła \textbf{95,2\% całkowitego czasu} +\texttt{vkWaitForFences} pochłonęła \textbf{95,2\% całkowitego czasu} profilowania wywołań Vulkan API, co stanowi 77,04 sekundy z 94-sekundowego testu. Funkcja ta, zdefiniowana w specyfikacji Vulkan w rozdziale 7.3 dotyczącym synchronizacji, realizuje blokujące oczekiwanie procesora na sygnalizację obiektów ogrodzenia (ang. \textit{fence}) przez GPU. -Mechanizm ogrodzeń w Vulkan działa następująco: aplikacja tworzy \\ obiekt fence, -dołącza go do operacji przesyłanej do kolejki GPU \\ -(np. poprzez \texttt{vkQueueSubmit}), a następnie może \\wywołać \texttt{vkWaitForFences}, +Mechanizm ogrodzeń w Vulkan działa następująco: aplikacja tworzy obiekt fence, +dołącza go do operacji przesyłanej do kolejki GPU +(np. poprzez \texttt{vkQueueSubmit}), a następnie może wywołać \texttt{vkWaitForFences}, aby zablokować wątek CPU do momentu zakończenia powiązanej pracy przez GPU. Jest to fundamentalny mechanizm synchronizacji w architekturze producent-konsument między CPU a GPU. @@ -189,7 +190,7 @@ zdąża przygotować pracę dla GPU przed zakończeniem poprzedniej klatki. Różnica między średnią a medianą (0,26 ms) wynika z obecności bardzo krótkich czasów oczekiwania w niektórych sytuacjach (np. gdy GPU zakończył pracę przed wywołaniem wait). Maksymalny czas 1\,181,17 ms odpowiada fazie -inicjalizacji, \\ podczas której GPU wykonuje jednorazowe, kosztowne operacje. +inicjalizacji, podczas której GPU wykonuje jednorazowe, kosztowne operacje. Stosunek liczby wywołań \texttt{vkWaitForFences} (12\,895) do liczby klatek (13\,556) wskazuje, że Unity stosuje strategię oczekiwania, prawie na @@ -233,7 +234,7 @@ odbywa się asynchronicznie na GPU. Tabela~\ref{tab:unity-vulkan-cmd} przedstawia statystyki funkcji związanych z buforami poleceń. -Liczba wywołań \texttt{vkBeginCommandBuffer} \\ oraz +Liczba wywołań \texttt{vkBeginCommandBuffer} oraz \texttt{vkEndCommandBuffer} (po 40\,679) oznacza, że Unity nagrywa średnio 3 bufory poleceń na klatkę. Jest to typowa wartość dla nowoczesnych silników stosujących wielowątkowe nagrywanie poleceń. @@ -269,14 +270,15 @@ Tabela~\ref{tab:unity-vulkan-init} przedstawia jednorazowe operacje inicjalizacy urządzenie Vulkan -- jest to najdroższa pojedyncza operacja, obejmująca negocjację możliwości GPU, alokację struktur wewnętrznych sterownika i inicjalizację kolejek. -\texttt{vkCreateSwapchainKHR} (77,02 ms) tworzy łańcuch wymiany (swapchain), \\ czyli zestaw +\texttt{vkCreateSwapchainKHR} (77,02 ms) tworzy łańcuch wymiany (swapchain), czyli zestaw buforów służących do prezentacji obrazu. Operacja ta obejmuje alokację pamięci dla buforów, konfigurację formatów i synchronizację z systemem okienkowym. -Utworzenie 341 obiektów fence (łącznie 135,60 ms) wskazuje na przygotowanie puli ogrodzeń do -wielokrotnego użytku w cyklu renderowania. -\\ Unity stosuje -strategię pre-alokacji zamiast tworzenia ogrodzeń na żądanie, co jest praktyką zalecaną w dokumentacji +Utworzenie 341 obiektów fence (łącznie 135,60 ms) wskazuje na +przygotowanie puli ogrodzeń do wielokrotnego użytku w cyklu renderowania. +Unity stosuje +strategię \\ pre-alokacji zamiast tworzenia ogrodzeń na żądanie, co +jest praktyką zalecaną w dokumentacji Vulkan. @@ -361,21 +363,22 @@ Duża liczba wywołań \texttt{openat64} (22\,155) wskazuje na intensywne operac gry (tekstur, modeli, shaderów) z dysku. Średni czas 1,07 $\mu$s potwierdza efektywne buforowanie przez system operacyjny. \texttt{ioctl} (1\,907 wywołań) służy do kontroli urządzeń -- w kontekście grafiki Vulkan jest -używane do komunikacji ze sterownikiem GPU poprzez \\ +używane do komunikacji ze sterownikiem GPU poprzez interfejs DRM/KMS (Direct Rendering Manager / Kernel Mode Setting). Przeprowadzona analiza pozwala na sformułowanie następujących wniosków dotyczących wydajności i architektury silnika Unity: -Dominacja \texttt{vkWaitForFences} \\ (95,2\% czasu Vulkan) i \texttt{futex} (95,9\% czasu systemowego) +Dominacja \texttt{vkWaitForFences} (95,2\% czasu Vulkan) i \texttt{futex} (95,9\% czasu systemowego) jednoznacznie wskazuje na scenariusz \textbf{GPU-bound}. Procesor główny efektywnie przygotowuje i przesyła pracę renderowania, po czym oczekuje na GPU. Jest to optymalny wzorzec dla aplikacji graficznych, gdzie GPU wykonuje większość obliczeniowo intensywnej pracy. -W scenariuszu CPU-bound obserwowalibyśmy niższy udział funkcji synchronizacyjnych i wyższy udział -funkcji przygotowujących polecenia \\ -(\texttt{vkBeginCommandBuffer}, \texttt{vkCmdBindPipeline} itp.), co wskazywałoby na wąskie gardło po stronie procesora. +W scenariuszu CPU-bound obserwowalibyśmy niższy udział funkcji +synchronizacyjnych i wyższy udział +funkcji przygotowujących polecenia +(\texttt{vkBeginCommandBuffer}, \\ \texttt{vkCmdBindPipeline} itp.), co wskazywałoby na wąskie gardło po stronie procesora. Stosunek liczby wywołań \texttt{vkQueueSubmit} (27\,112) do \texttt{vkQueuePresentKHR} (13\,556) wynoszący 2:1 wskazuje na dwuetapowy potok @@ -383,7 +386,7 @@ renderowania dla każdej klatki. Może to odpowiadać architekturze z oddzielnym odroczonego renderowania (ang. \textit{deferred rendering}). Niska liczba wywołań \texttt{vkCmdBindPipeline} (27\,027, ~2 na klatkę) -sugeruje \\ efektywne grupowanie obiektów renderowanych tym samym shaderem, +sugeruje efektywne grupowanie obiektów renderowanych tym samym shaderem, minimalizujące kosztowne zmiany stanu GPU. @@ -391,23 +394,23 @@ Pomimo wysokiego współczynnika zmienności (153\%) wynikającego z wartości e inicjalizacji, właściwa stabilność renderowania jest wysoka. Świadczy o tym: \begin{itemize} - \item Wąski rozstęp międzykwartylowy (0,08 ms) - \item Zbieżność mediany (6,94 ms) ze średnią (6,95 ms) - \item Mała różnica między 50. a 99. percentylem (0,64 ms, 9,2\%) - \item 98,24\% klatek w przedziale 5--10 ms + \item Wąski rozstęp międzykwartylowy (0,08 ms). + \item Zbieżność mediany (6,94 ms) ze średnią (6,95 ms). + \item Mała różnica między 50. a 99. percentylem (0,64 ms, 9,2\%). + \item 98,24\% klatek w przedziale 5--10 ms. \end{itemize} Należy jednak podkreślić, że obserwowana stabilność jest w znacznej mierze wynikiem -działania synchronizacji pionowej (V-Sync), która sztucznie \\ -wyrównuje czasy klatek poprzez oczekiwanie na sygnał odświeżania monitora. \\ Bez V-Sync +działania synchronizacji pionowej (V-Sync), która sztucznie +wyrównuje czasy klatek poprzez oczekiwanie na sygnał odświeżania monitora. Bez V-Sync zmienność czasów klatek mogłaby być wyższa. Analiza wywołań systemowych potwierdza intensywne wykorzystanie wielowątkowości: \begin{itemize} - \item 81 utworzonych wątków wskazuje na rozbudowany system zadań - \item Dominacja \texttt{futex} sugeruje częstą komunikację między wątkami - \item Użycie zmiennych warunkowych z timeoutem świadczy o responsywnej architekturze + \item 81 utworzonych wątków wskazuje na rozbudowany system zadań. + \item Dominacja \texttt{futex} sugeruje częstą komunikację między wątkami. + \item Użycie zmiennych warunkowych z timeoutem świadczy o responsywnej architekturze. \end{itemize} Unity 2023 LTS stosuje architekturę DOTS (Data-Oriented Technology Stack) z systemem zadań (Job System), który automatycznie dystrybuuje pracę na @@ -418,44 +421,47 @@ dostępne rdzenie procesora. Wyniki profilowania potwierdzają aktywne wykorzyst Profilowanie silnika Unreal Engine 5.5 przeprowadzono przy użyciu NVIDIA Nsight Systems w wersji 2025.5.2. Ze względu na problemy ze stabilnością -połączenia agenta Nsight podczas długich sesji profilowania, 90-sekundową \\ rozgrywkę +połączenia agenta Nsight podczas długich sesji profilowania, 90-sekundową rozgrywkę podzielono na \textbf{trzy fazy po 30 sekund każda}: \begin{itemize} - \item \textbf{Faza 1} (0--30 s): Początkowa rozgrywka z niską trudnością - \item \textbf{Faza 2} (30--60 s): Środkowa rozgrywka ze średnią trudnością - \item \textbf{Faza 3} (60--90 s): Końcowa rozgrywka z wysoką trudnością + ekran zwycięstwa + \item \textbf{Faza 1} (0--30 s): Początkowa rozgrywka z niską trudnością. + \item \textbf{Faza 2} (30--60 s): Środkowa rozgrywka ze średnią trudnością. + \item \textbf{Faza 3} (60--90 s): Końcowa rozgrywka z wysoką trudnością + ekran zwycięstwa. \end{itemize} -Każda faza była uruchamiana z flagą \texttt{--start-time=N}, która przesuwa \\ zarówno stan gry +Każda faza była uruchamiana z flagą \texttt{--start-time=N}, która przesuwa +zarówno stan gry (w \texttt{STGGameDirector}), jak i poziom trudności -spawnu przeciwników \\ (w \texttt{STGEnemySpawner}) do odpowiedniej sekundy. \\ Grę skompilowano w konfiguracji DebugGame, która zachowuje symbole +spawnu przeciwników \\ (w \texttt{STGEnemySpawner}) do odpowiedniej sekundy. Grę skompilowano w konfiguracji DebugGame, która zachowuje symbole debugowania przy częściowych optymalizacjach. Ze względu na bardzo dużą ilość danych generowanych przez Unreal Engine podczas śledzenia wywołań Vulkan API (około 13 milionów zdarzeń na 30 sekund rozgrywki, w porównaniu z 0,5 miliona dla Unity), 90-sekundową rozgrywkę podzielono na \textbf{trzy fazy po 30 sekund każda}: \begin{itemize} - \item \textbf{Faza 1} (0--30 s): Początkowa rozgrywka z niską trudnością - \item \textbf{Faza 2} (30--60 s): Środkowa rozgrywka ze średnią trudnością - \item \textbf{Faza 3} (60--90 s): Końcowa rozgrywka z wysoką trudnością + ekran zwycięstwa + \item \textbf{Faza 1} (0--30 s): Początkowa rozgrywka z niską trudnością. + \item \textbf{Faza 2} (30--60 s): Środkowa rozgrywka ze średnią trudnością. + \item \textbf{Faza 3} (60--90 s): Końcowa rozgrywka z wysoką trudnością + ekran zwycięstwa. \end{itemize} -Każda faza była uruchamiana z flagą \texttt{--start-time=N}, która przesuwa zarówno stan gry -(w \texttt{STGGameDirector}), jak i poziom trudności spawnu \\ przeciwników (w \texttt{STGEnemySpawner}) +Każda faza była uruchamiana z flagą \texttt{--start-time=N}, +która przesuwa zarówno stan gry +(w \texttt{STGGameDirector}), jak i poziom trudności spawnu przeciwników +\\ (w \texttt{STGEnemySpawner}) do odpowiedniej sekundy. -\\ Grę skompilowano w konfiguracji DebugGame, która zachowuje symbole debugowania przy częściowych optymalizacjach. +Grę skompilowano w konfiguracji DebugGame, która zachowuje symbole debugowania przy częściowych optymalizacjach. Profilowanie przeprowadzono z wykorzystaniem tych samych metryk co dla Unity: \begin{itemize} - \item \textbf{Śledzenia wywołań Vulkan API} (\texttt{--trace=vulkan}) -- przechwytywanie \\ wszystkich funkcji Vulkan - \item \textbf{Śledzenia wywołań systemowych} (\texttt{--trace=osrt}) -- przechwytywanie funkcji OS Runtime - \item \textbf{Metryk sprzętowych GPU} (\texttt{--gpu-metrics-devices=0}) -- próbkowanie \\ liczników wydajności GPU + \item \textbf{Śledzenia wywołań Vulkan API} (\texttt{--trace=vulkan}) -- przechwytywanie wszystkich funkcji Vulkan. + \item \textbf{Śledzenia wywołań systemowych} (\texttt{--trace=osrt}) -- przechwytywanie funkcji OS Runtime. + \item \textbf{Metryk sprzętowych GPU} (\texttt{--gpu-metrics-devices=0}) -- próbkowanie liczników wydajności GPU. \end{itemize} NVIDIA Nsight Systems zbiera metryki sprzętowe GPU poprzez bezpośredni dostęp do liczników wydajności zintegrowanych w karcie graficznej. -\\ Podczas trzech 35-sekundowych sesji (30 sekund rozgrywki + 5 sekund buforu) zebrano łącznie \textbf{1\,050\,555 próbek} dla każdej z +Podczas trzech 35-sekundowych sesji (30 sekund rozgrywki + 5 sekund buforu) zebrano łącznie \textbf{1\,050\,555 próbek} dla każdej z 31 monitorowanych metryk. \begin{table}[H] @@ -503,7 +509,7 @@ Liczba próbek & 350\,205 & 350\,249 & 350\,101 \\ Tabela~\ref{tab:unreal-gpu-phases} pokazuje stabilność metryk GPU między fazami 1 i 2 różnice <0,5 pp.), co potwierdza poprawność metodologii -fazowego profilowania. \\ +fazowego profilowania. Wyraźny spadek w fazie 3 odzwierciedla zakończenie aktywnej rozgrywki i przejście do ekranu zwycięstwa. @@ -565,17 +571,17 @@ Unallocated Warps in Active SMs & 20,73 & 90,0 \\ Tabela~\ref{tab:unreal-warps} przedstawia rozkład typów aktywnych wątków shader (warps -- grupy 32 wątków CUDA wykonywanych synchronicznie). - \\Dominacja \texttt{Compute Warps} (13,03\%) nad \texttt{Pixel Warps} (9,36\%) wskazuje na znaczące wykorzystanie compute shaderów, prawdopodobnie do: + Dominacja \texttt{Compute Warps} (13,03\%) nad \texttt{Pixel Warps} (9,36\%) wskazuje na znaczące wykorzystanie compute shaderów, prawdopodobnie do: \begin{itemize} - \item Culling (odrzucanie niewidocznych obiektów na GPU) - \item Post-processing i tone mapping - \item Symulacji cząsteczek lub fizyki na GPU + \item Culling (odrzucanie niewidocznych obiektów na GPU). + \item Post-processing i tone mapping. + \item Symulacji cząsteczek lub fizyki na GPU. \end{itemize} Niski udział \texttt{Vertex/Tess/Geometry Warps} (0,45\%) sugeruje prostą geometrię sceny bez intensywnego wykorzystania teselacji -- co jest zgodne z charakterystyką testowanej gry bullet-hell, gdzie większość efektów wizualnych to płaskie sprite'y i efekty cząsteczkowe. -\texttt{Unallocated Warps in Active SMs} (20,73\%) reprezentuje \\ niewykorzystaną pojemność +\texttt{Unallocated Warps in Active SMs} (20,73\%) reprezentuje niewykorzystaną pojemność aktywnych multiprocesorów. Wartość ta wskazuje na potencjał optymalizacji przez zwiększenie granularności pracy lub lepsze grupowanie operacji. @@ -672,7 +678,7 @@ wskazuje na konsystentną architekturę potoku renderowania niezależną od obci W przeciwieństwie do Unity, gdzie dominującą funkcją był \texttt{vkWaitForFences}, w Unreal Engine \textbf{57--72\% czasu} Vulkan API pochłonęły funkcje tworzenia potoków. -\\ Co istotne, liczba wywołań \texttt{vkCreateComputePipelines} i \\ +Co istotne, liczba wywołań \texttt{vkCreateComputePipelines} i \texttt{vkCreateGraphicsPipelines} jest \textbf{niemal identyczna we wszystkich trzech fazach}, co wskazuje na strategię \textbf{ciągłej rekompilacji potoków} (Pipeline State Object) przez cały czas działania gry. @@ -682,7 +688,7 @@ przez cały czas działania gry. Średni czas tworzenia potoku compute (18,63--19,21 ms) jest ponad \textbf{14 razy dłuższy} niż dla potoku graficznego (1,14--1,39 ms). Różnica ta -wynika z większej złożoności shaderów obliczeniowych używanych \\ przez Unreal Engine do culling, post-processingu i systemu Nanite. +wynika z większej złożoności shaderów obliczeniowych używanych przez Unreal Engine do culling, post-processingu i systemu Nanite. Wywołanie \texttt{vkCreateDevice} pojawia się raz w każdej fazie z czasem 541--590 ms, co odpowiada momentowi startu gry w tej fazie -- narzędzie Nsight Systems tworzy nową sesję dla każdej fazy. @@ -707,13 +713,13 @@ Nsight Systems tworzy nową sesję dla każdej fazy. W ostrzym kontraście z Unity (gdzie \texttt{vkWaitForFences} stanowił 95,2\% czasu), w Unreal Engine funkcja ta pochłonęła zaledwie \textbf{0,5\% czasu} ze średnim czasem oczekiwania 3,63 $\mu$s. Tak niski czas oczekiwania wskazuje na: \begin{itemize} - \item Efektywne wykorzystanie wielokrotnego buforowania (triple buffering) - \item Asynchroniczne przesyłanie pracy do GPU bez blokowania - \item Lepsze rozłożenie pracy między CPU a GPU eliminujące przestoje + \item Efektywne wykorzystanie wielokrotnego buforowania (triple buffering). + \item Asynchroniczne przesyłanie pracy do GPU bez blokowania. + \item Lepsze rozłożenie pracy między CPU a GPU eliminujące przestoje. \end{itemize} -Stosunek wywołań \texttt{vkQueueSubmit} (186\,589) do \\ \texttt{vkQueuePresentKHR} (11\,531) -wynosi \textbf{16,2:1}, co oznacza średnio \\ 16 +Stosunek wywołań \texttt{vkQueueSubmit} (186\,589) do \texttt{vkQueuePresentKHR} (11\,531) +wynosi \textbf{16,2:1}, co oznacza średnio 16 przesyłek pracy na klatkę. Jest to znacznie więcej niż w Unity (2:1), odzwierciedlając bardziej złożony potok renderowania Unreal Engine z wieloma przebiegami (deferred rendering, post-processing, UI). @@ -735,13 +741,13 @@ wieloma przebiegami (deferred rendering, post-processing, UI). \end{tabular} \end{table} -Liczba wywołań \\ \texttt{vkCmdBindPipeline} (\textbf{5\,771\,642} -łącznie we wszystkich fazach) jest \\ ponad \textbf{213 razy większa} niż w -Unity (27\,027), \\ co odpowiada około 218 zmianom potoku na klatkę. Tak wysoka wartość wynika z: +Liczba wywołań \texttt{vkCmdBindPipeline} (\textbf{5\,771\,642} +łącznie we wszystkich fazach) jest ponad \textbf{213 razy większa} niż w +Unity (27\,027), co odpowiada około 218 zmianom potoku na klatkę. Tak wysoka wartość wynika z: \begin{itemize} - \item Dynamicznego systemu materiałów Unreal Engine - \item Wielu wariantów shaderów dla różnych kombinacji oświetlenia - \item Złożonego potoku renderowania z wieloma przebiegami + \item Dynamicznego systemu materiałów Unreal Engine. + \item Wielu wariantów shaderów dla różnych kombinacji oświetlenia. + \item Złożonego potoku renderowania z wieloma przebiegami. \end{itemize} Funkcja \texttt{vkCmdPipelineBarrier2KHR} (4\,090\,071 wywołań) synchronizuje dostęp do zasobów w obrębie GPU -- wysoka liczba wywołań wskazuje @@ -750,9 +756,9 @@ na staranną kontrolę zależności między operacjami, typową dla nowoczesnych Interesującą obserwacją jest obecność wywołań związanych z ray tracingiem we wszystkich fazach: \begin{itemize} - \item \texttt{vkCreateAccelerationStructureKHR}: 23\,960 + 26\,275 + 11\,884 = 62\,119 wywołań - \item \texttt{vkDestroyAccelerationStructureKHR}: 20\,571 + 23\,063 + 9\,181 = 52\,815 wywołań - \item \texttt{vkGetAccelerationStructureBuildSizesKHR}: 41\,161 + 46\,147 + 18\,379 = 105\,687 wywołań + \item \texttt{vkCreateAccelerationStructureKHR}: 23\,960 + 26\,275 + 11\,884 = 62\,119 wywołań. + \item \texttt{vkDestroyAccelerationStructureKHR}: 20\,571 + 23\,063 + 9\,181 = 52\,815 wywołań. + \item \texttt{vkGetAccelerationStructureBuildSizesKHR}: 41\,161 + 46\,147 + 18\,379 = 105\,687 wywołań. \end{itemize} Pomimo że testowana gra nie wykorzystuje widocznych efektów ray tracingu, Unreal Engine przygotowuje struktury akceleracji BVH @@ -782,7 +788,7 @@ wielowątkowego Unreal Engine. Łącznie zarejestrowano ponad \textbf{9 milionó \end{tabular} \end{table} -Funkcja \texttt{pthread\_cond\_wait} \\ pochłonęła \textbf{64,6\% czasu} przy \textbf{3\,095\,188 wywołaniach} we wszystkich trzech fazach. +Funkcja \texttt{pthread\_cond\_wait} pochłonęła \textbf{64,6\% czasu} przy \textbf{3\,095\,188 wywołaniach} we wszystkich trzech fazach. Jest to funkcja POSIX do oczekiwania na zmienną warunkową, używana gdy wątek musi czekać na spełnienie określonego warunku sygnalizowanego przez inny wątek. @@ -790,10 +796,10 @@ Tak wysoka liczba wywołań (ponad 40 razy więcej niż dla Unity) odzwierciedla architekturę wielowątkową Unreal Engine opartą na systemie \textbf{TaskGraph}. System ten dekomponuje pracę renderowania na małe zadania (ang. \textit{tasks}), które są wykonywane przez pulę wątków roboczych. -Każde zadanie po zakończeniu sygnalizuje swoją gotowość, a zależne zadania są budzone \\ poprzez +Każde zadanie po zakończeniu sygnalizuje swoją gotowość, a zależne zadania są budzone poprzez \texttt{pthread\_cond\_signal}/\texttt{pthread\_cond\_broadcast}. -Średni czas pojedynczego oczekiwania (0,97 ms) jest krótki, co wskazuje \\ na częste, ale krótkotrwałe synchronizacje -- +Średni czas pojedynczego oczekiwania (0,97 ms) jest krótki, co wskazuje na częste, ale krótkotrwałe synchronizacje -- typowe dla drobnoziarnistego paralelizmu. Maksymalny czas 22,23 sekundy odpowiada prawdopodobnie wywołaniu podczas długotrwałej operacji inicjalizacyjnej w fazie 2. @@ -819,18 +825,18 @@ Tabela~\ref{tab:unreal-osrt-phases} pokazuje konsystencję wzorców wywołań mi fazie 3 (zawierającej ekran zwycięstwa). Szczególnie interesująca jest wysoka liczba wywołań \texttt{backtrace} (ponad 5,5 miliona łącznie), co sugeruje intensywne wykorzystanie mechanizmów debugowania lub profilowania wbudowanych w Unreal Engine nawet w konfiguracji DebugGame. -(19,2\%, 163\,783 \\ wywołań) różni się od +(19,2\%, 163\,783 wywołań) różni się od \texttt{pthread\_cond\_wait} możliwością określenia maksymalnego czasu oczekiwania. Użycie tej funkcji wskazuje na mechanizmy: \begin{itemize} - \item Timeoutów zapobiegających zakleszczeniom (deadlock prevention) - \item Okresowego sprawdzania warunków (polling pattern) - \item Synchronizacji czasowej dla frame pacing + \item Timeoutów zapobiegających zakleszczeniom (deadlock prevention). + \item Okresowego sprawdzania warunków (polling pattern). + \item Synchronizacji czasowej dla frame pacing. \end{itemize} -Średni czas 5,46 ms sugeruje użycie do synchronizacji między-klatkowej, \\ +Średni czas 5,46 ms sugeruje użycie do synchronizacji między-klatkowej, gdzie wątki oczekują na gotowość kolejnej klatki z timeout'em -\\ zapobiegającym nieskończonemu oczekiwaniu w przypadku błędu. +zapobiegającym nieskończonemu oczekiwaniu w przypadku błędu. Funkcja \texttt{usleep} (4,7\%, 26\,062 wywołań, średnio 7,79 ms) wprowadza precyzyjne opóźnienia czasowe. Średni czas 7,79 ms jest zbliżony do @@ -857,21 +863,21 @@ Liczba próbek GPU (10 kHz) & -- & 1\,050\,555 \\ Tabela~\ref{tab:sync-comparison} ujawnia fundamentalną różnicę architektoniczną między silnikami: -\textbf{Unity} stosuje mechanizm \texttt{futex} z niewielką liczbą wywołań (247) \\ i +\textbf{Unity} stosuje mechanizm \texttt{futex} z niewielką liczbą wywołań (247) i długim średnim czasem (444 ms). Wskazuje to na architekturę z większymi, bardziej autonomicznymi jednostkami pracy i rzadszą synchronizacją między wątkami. \textbf{Unreal Engine} używa \texttt{pthread\_cond\_wait} z ogromną liczbą wywołań -\\ (ponad 3 miliony w 90-sekundowym teście) \\ i bardzo krótkim średnim +(ponad 3 miliony w 90-sekundowym teście) i bardzo krótkim średnim czasem (0,97 ms). Odzwierciedla to drobnoziarnisty paralelizm systemu TaskGraph, gdzie praca jest dzielona na małe zadania często komunikujące się ze sobą. Różnica ta ma implikacje praktyczne: \begin{itemize} - \item \textbf{Skalowalność}: Drobnoziarnisty model Unreal lepiej skaluje się na procesory z wieloma rdzeniami - \item \textbf{Narzut synchronizacji}: Model Unity ma mniejszy narzut \\ z powodu rzadszych wywołań - \item \textbf{Responsywność}: Unreal może szybciej reagować na zmiany (np. przerwanie zadania) - \item \textbf{Debugowanie}: Model Unity jest łatwiejszy do analizy ze względu na prostszą strukturę + \item \textbf{Skalowalność}: Drobnoziarnisty model Unreal lepiej skaluje się na procesory z wieloma rdzeniami. + \item \textbf{Narzut synchronizacji}: Model Unity ma mniejszy narzut z powodu rzadszych wywołań. + \item \textbf{Responsywność}: Unreal może szybciej reagować na zmiany (np. przerwanie zadania). + \item \textbf{Debugowanie}: Model Unity jest łatwiejszy do analizy ze względu na prostszą strukturę. \end{itemize} @@ -880,33 +886,33 @@ Zebrane dane z trzech faz profilowania pozwalają na charakterystykę architekto Unreal Engine 5 stosuje zaawansowaną architekturę wielowątkową złożoną z: \begin{itemize} - \item \textbf{Game Thread} -- główny wątek logiki gry - \item \textbf{Render Thread} -- wątek przygotowujący polecenia renderowania - \item \textbf{RHI Thread} (Render Hardware Interface) -- wątek komunikujący się z API graficznym - \item \textbf{Worker Threads} -- pula wątków roboczych systemu TaskGraph + \item \textbf{Game Thread} -- główny wątek logiki gry. + \item \textbf{Render Thread} -- wątek przygotowujący polecenia renderowania. + \item \textbf{RHI Thread} (Render Hardware Interface) -- wątek komunikujący się z API graficznym. + \item \textbf{Worker Threads} -- pula wątków roboczych systemu TaskGraph. \end{itemize} -Obserwowana dominacja \texttt{pthread\_cond\_wait} (3+ miliony wywołań) \\ potwierdza intensywną +Obserwowana dominacja \texttt{pthread\_cond\_wait} (3+ miliony wywołań) potwierdza intensywną komunikację między tymi wątkami. -\\ Wysokie wykorzystanie +Wysokie wykorzystanie GPU (90,98\% w fazach aktywnej rozgrywki) przy jednoczesnej intensywnej synchronizacji CPU sugeruje efektywne wykorzystanie zasobów obu procesorów. -Na podstawie zebranych metryk można \\ scharakteryzować profil obciążenia GPU: +Na podstawie zebranych metryk można scharakteryzować profil obciążenia GPU: \begin{itemize} - \item \textbf{Charakter pracy}: Mieszany graficzno-obliczeniowy (GR Active 85,59\%, Sync Compute 43,23\%) - \item \textbf{Wykorzystanie SM}: Umiarkowane (42,88\%), wskazujące na potencjał optymalizacji - \item \textbf{Przepustowość pamięci}: Niewysoka (10,30\% odczyt, 10,10\% zapis), nie jest wąskim gardłem - \item \textbf{Transfer PCIe}: Niski (1,50\% RX), dane pozostają w pamięci GPU - \item \textbf{Async Copy Engine}: Aktywny w 24--25\% czasu, wskazując na efektywne wykorzystanie asynchronicznych transferów + \item \textbf{Charakter pracy}: Mieszany graficzno-obliczeniowy (GR Active 85,59\%, Sync Compute 43,23\%). + \item \textbf{Wykorzystanie SM}: Umiarkowane (42,88\%), wskazujące na potencjał optymalizacji. + \item \textbf{Przepustowość pamięci}: Niewysoka (10,30\% odczyt, 10,10\% zapis), nie jest wąskim gardłem. + \item \textbf{Transfer PCIe}: Niski (1,50\% RX), dane pozostają w pamięci GPU. + \item \textbf{Async Copy Engine}: Aktywny w 24--25\% czasu, wskazując na efektywne wykorzystanie asynchronicznych transferów. \end{itemize} Porównanie faz 1 i 2 (tabela~\ref{tab:unreal-gpu-phases}) pokazuje niezwykłą stabilność metryk GPU: \begin{itemize} - \item GPU Active: różnica 0,36 pp. (91,16\% vs 90,80\%) - \item GR Active: różnica 0,21 pp. (85,69\% vs 85,48\%) - \item SMs Active: różnica 0,18 pp. (42,79\% vs 42,97\%) + \item GPU Active: różnica 0,36 pp. (91,16\% vs 90,80\%). + \item GR Active: różnica 0,21 pp. (85,69\% vs 85,48\%). + \item SMs Active: różnica 0,18 pp. (42,79\% vs 42,97\%). \end{itemize} Ta konsystencja potwierdza poprawność metodologii fazowego profilowania i sugeruje deterministyczne zachowanie silnika renderującego niezależnie od @@ -967,11 +973,15 @@ vkCmdBindPipeline / klatkę & 2 & 218 \\ Analiza wywołań Vulkan API ujawnia fundamentalnie różne profile obciążenia (tabela~\ref{tab:gpu-comparison}): -Dominacja \texttt{vkWaitForFences} (95,2\% czasu) \\ wskazuje, że CPU efektywnie przygotowuje pracę i oczekuje na GPU. -Jest to pożądany wzorzec w aplikacjach graficznych, gdzie GPU wykonuje większość obliczeń. \\ Niski stosunek -\texttt{vkQueueSubmit}/klatkę (2:1) świadczy o prostym, dwuetapowym potoku renderowania. +Dominacja \texttt{vkWaitForFences} (95,2\% czasu) wskazuje, że CPU efektywnie +przygotowuje pracę i oczekuje na GPU. +Jest to pożądany wzorzec w aplikacjach graficznych, gdzie GPU wykonuje +większość obliczeń. Niski stosunek +\texttt{vkQueueSubmit}/klatkę (2:1) świadczy o prostym, dwuetapowym potoku +renderowania. -W Unreal Engine dominującymi operacjami były \texttt{vkCreateComputePipelines} \\ oraz \texttt{vkCreateGraphicsPipelines}, +W Unreal Engine dominującymi operacjami były \texttt{vkCreateComputePipelines} +oraz \texttt{vkCreateGraphicsPipelines}, pochłaniające łącznie 57--72\% czasu Vulkan. Silnik tworzy około \textbf{1000 potoków w każdej 30-sekundowej fazie} (vs 3 potoki w całym teście Unity), co wskazuje na strategię dynamicznej kompilacji shaderów. @@ -1003,6 +1013,7 @@ większe jednostki pracy autonomicznie, co minimalizuje narzut komunikacji. \textbf{Unreal Engine} implementuje drobnoziarnisty paralelizm poprzez system TaskGraph. Praca jest dzielona na tysiące małych zadań często komunikujących się ze sobą (ponad 3 miliony wywołań synchronizacji w 90 sekund). + \subsection{Podsumowanie wyników testów wydajności} \label{subsec:podsumowanie-testow} @@ -1024,7 +1035,6 @@ Potoki graficzne utworzone & 3 & $\sim$2\,400 \\ \hline \end{tabular} \end{table} -\newpage Przeprowadzone testy wydajnościowe pozwalają na sformułowanie następujących wniosków: @@ -1033,11 +1043,13 @@ Przeprowadzone testy wydajnościowe pozwalają na sformułowanie następujących oba silniki osiągają zbliżoną wydajność: Unity 1\% low 132 FPS vs Unreal 162 FPS. Różnica około 23\% na korzyść Unreal wynika częściowo z różnych konfiguracji V-Sync. - \item \textbf{Wykorzystanie GPU}: Unity wykorzystuje jedynie 23\% mocy GPU \\ (ograniczony V-Sync), + \item \textbf{Wykorzystanie GPU}: Unity wykorzystuje jedynie 23\% mocy GPU + \\ (ograniczony V-Sync), podczas gdy Unreal Engine osiąga 91\% wykorzystania w fazach 1--2. Sugeruje to znaczny zapas wydajności Unity przy wyłączonym V-Sync. - \item \textbf{Stabilność}: Unity wykazał stabilne czasy klatek dzięki V-Sync, \\ natomiast + \item \textbf{Stabilność}: Unity wykazał stabilne czasy klatek dzięki + V-Sync, natomiast Unreal Engine pokazał dużą zmienność między fazami (332--339 FPS w fazach 1--2 vs 162 FPS w fazie 3) -- spadek o ponad 50\%. @@ -1046,7 +1058,7 @@ Przeprowadzone testy wydajnościowe pozwalają na sformułowanie następujących z rzadkimi synchronizacjami, podczas gdy Unreal stosuje drobnoziarnisty system TaskGraph z milionami wywołań synchronizacyjnych. - \item \textbf{Narzut Unreal}: Dynamiczna kompilacja potoków \\ (ponad 1000 potoków na - 30-sekundową fazę vs 3 w całym teście Unity) i 60-krotnie większa liczba wywołań Vulkan API + \item \textbf{Narzut Unreal}: Dynamiczna kompilacja potoków (ponad 1000 potoków na + \\ 30-sekundową fazę vs 3 w całym teście Unity) i 60-krotnie większa liczba wywołań Vulkan API stanowią znaczący narzut, który może przyczyniać się do spadków wydajności w wymagających scenach. \end{enumerate} diff --git a/latex/tex/6-analiza-mozliwosci.tex b/latex/tex/6-analiza-mozliwosci.tex index 6c803c4..8b6b933 100644 --- a/latex/tex/6-analiza-mozliwosci.tex +++ b/latex/tex/6-analiza-mozliwosci.tex @@ -9,50 +9,50 @@ Niniejszy rozdział przedstawia porównanie kluczowych możliwości technicznych Unity oferuje dwa główne pipeline'y renderowania: Built-in Render Pipeline (legacy), Universal Render Pipeline (URP) oraz High Definition Render Pipeline (HDRP). URP jest zoptymalizowany pod kątem wydajności i~kompatybilności między platformami, podczas gdy HDRP koncentruje się na~wysokiej jakości grafiki dla~platform o~dużej mocy obliczeniowej~\cite{gregory2018game}. \begin{itemize} - \item \textbf{Forward rendering} -- domyślny tryb w~URP, efektywny dla~scen z~niewielką liczbą źródeł światła - \item \textbf{Deferred rendering} -- dostępny w~HDRP, umożliwia obsługę większej liczby świateł - \item \textbf{Ray tracing} -- wsparcie w~HDRP dla~kart graficznych NVIDIA RTX~\cite{parker2010optix} + \item \textbf{Forward rendering} -- domyślny tryb w~URP, efektywny dla~scen z~niewielką liczbą źródeł światła. + \item \textbf{Deferred rendering} -- dostępny w~HDRP, umożliwia obsługę większej liczby świateł. + \item \textbf{Ray tracing} -- wsparcie w~HDRP dla~kart graficznych NVIDIA RTX~\cite{parker2010optix}. \end{itemize} Unreal Engine wykorzystuje zaawansowany deferred rendering pipeline z~obsługą ray tracingu w~czasie rzeczywistym~\cite{unreal_docs}. \begin{itemize} - \item \textbf{Deferred shading} -- standardowy pipeline dla~większości projektów~\cite{gregory2018game} - \item \textbf{Forward shading} -- opcjonalny tryb dla~projektów VR wymagających niskiej latencji~\cite{unreal_docs} - \item \textbf{Ray tracing} -- pełne wsparcie dla~Lumen (global illumination) i~ray-traced reflections - \item \textbf{Nanite} -- zwirtualizowana geometria pozwalająca na~renderowanie miliardów poligonów + \item \textbf{Deferred shading} -- standardowy pipeline dla~większości projektów~\cite{gregory2018game}. + \item \textbf{Forward shading} -- opcjonalny tryb dla~projektów VR wymagających niskiej latencji~\cite{unreal_docs}. + \item \textbf{Ray tracing} -- pełne wsparcie dla~Lumen (global illumination) i~ray-traced reflections. + \item \textbf{Nanite} -- zwirtualizowana geometria pozwalająca na~renderowanie miliardów poligonów. \end{itemize} -Unity oferuje Shader Graph -- wizualny edytor do~tworzenia shaderów \\ bez~pisania kodu. Dodatkowo wspiera shadery pisane w~HLSL oraz~Cg~\cite{farina2013shader}. +Unity oferuje Shader Graph -- wizualny edytor do~tworzenia shaderów bez~pisania kodu. Dodatkowo wspiera shadery pisane w~HLSL oraz~Cg~\cite{farina2013shader}. \begin{itemize} - \item \textbf{Shader Graph} -- intuicyjny, oparty na~węzłach interfejs - \item \textbf{HLSL/Cg} -- możliwość pisania custom shaderów~\cite{farina2013shader} - \item \textbf{Shader variants} -- system wariantów dla~optymalizacji + \item \textbf{Shader Graph} -- intuicyjny, oparty na~węzłach interfejs. + \item \textbf{HLSL/Cg} -- możliwość pisania custom shaderów~\cite{farina2013shader}. + \item \textbf{Shader variants} -- system wariantów dla~optymalizacji. \end{itemize} Unreal oferuje Material Editor -- zaawansowany system węzłowy do~tworzenia materiałów~\cite{unreal_docs}. \begin{itemize} - \item \textbf{Material Editor} -- bogaty zestaw węzłów i~funkcji - \item \textbf{Material Functions} -- możliwość tworzenia wielokrotnego użytku komponentów - \item \textbf{Custom HLSL} -- integracja własnego kodu HLSL~\cite{farina2013shader} + \item \textbf{Material Editor} -- bogaty zestaw węzłów i~funkcji. + \item \textbf{Material Functions} -- możliwość tworzenia wielokrotnego użytku komponentów. + \item \textbf{Custom HLSL} -- integracja własnego kodu HLSL~\cite{farina2013shader}. \end{itemize} \begin{itemize} - \item \textbf{Real-time lighting} -- dynamiczne oświetlenie w~czasie rzeczywistym - \item \textbf{Baked lighting} -- przedkalkulowane mapy oświetlenia (lightmaps) - \item \textbf{Mixed lighting} -- połączenie światła dynamicznego i~baked - \item \textbf{Global Illumination} -- Progressive Lightmapper dla~światła odbitego~\cite{gregory2018game} + \item \textbf{Real-time lighting} -- dynamiczne oświetlenie w~czasie rzeczywistym. + \item \textbf{Baked lighting} -- przedkalkulowane mapy oświetlenia (lightmaps). + \item \textbf{Mixed lighting} -- połączenie światła dynamicznego i~baked. + \item \textbf{Global Illumination} -- Progressive Lightmapper dla~światła odbitego~\cite{gregory2018game}. \end{itemize} \begin{itemize} - \item \textbf{Lumen} -- dynamiczne global illumination w~czasie rzeczywistym - \item \textbf{Lightmass} -- high-quality baked lighting~\cite{gregory2018game} - \item \textbf{Ray-traced lighting} -- fizycznie dokładne oświetlenie~\cite{parker2010optix} - \item \textbf{Volumetric fog} -- zaawansowane efekty atmosferyczne + \item \textbf{Lumen} -- dynamiczne global illumination w~czasie rzeczywistym. + \item \textbf{Lightmass} -- high-quality baked lighting~\cite{gregory2018game}. + \item \textbf{Ray-traced lighting} -- fizycznie dokładne oświetlenie~\cite{parker2010optix}. + \item \textbf{Volumetric fog} -- zaawansowane efekty atmosferyczne. \end{itemize} \subsection{Systemy fizyki i symulacji} @@ -61,87 +61,87 @@ Unreal oferuje Material Editor -- zaawansowany system węzłowy do~tworzenia mat Unity wykorzystuje NVIDIA PhysX jako~silnik fizyki~\cite{nvidia_physx}. \begin{itemize} - \item \textbf{Rigidbody} -- komponent dla~obiektów fizycznych - \item \textbf{Colliders} -- różne typy koliderów (box, sphere, mesh, etc.) - \item \textbf{Joints} -- więzy i~połączenia (hinge, spring, fixed, etc.) - \item \textbf{Wydajność} -- efektywne dla~setek obiektów fizycznych~\cite{messaoudi2017performance} + \item \textbf{Rigidbody} -- komponent dla~obiektów fizycznych. + \item \textbf{Colliders} -- różne typy koliderów (box, sphere, mesh, etc.). + \item \textbf{Joints} -- więzy i~połączenia (hinge, spring, fixed, etc.). + \item \textbf{Wydajność} -- efektywne dla~setek obiektów fizycznych~\cite{messaoudi2017performance}. \end{itemize} -Unreal przeszedł z~PhysX \\ na~Chaos Physics -- +Unreal przeszedł z~PhysX na~Chaos Physics -- własny silnik fizyki~\cite{unreal_docs}. \begin{itemize} - \item \textbf{Chaos Physics} -- nowy, zaawansowany system fizyki - \item \textbf{Destruction} -- wbudowane wsparcie dla~destrukcji obiektów - \item \textbf{Cloth simulation} -- symulacja tkanin - \item \textbf{Vehicles} -- zaawansowany system pojazdów~\cite{gregory2018game} + \item \textbf{Chaos Physics} -- nowy, zaawansowany system fizyki. + \item \textbf{Destruction} -- wbudowane wsparcie dla~destrukcji obiektów. + \item \textbf{Cloth simulation} -- symulacja tkanin. + \item \textbf{Vehicles} -- zaawansowany system pojazdów~\cite{gregory2018game}. \end{itemize} \begin{itemize} - \item \textbf{Shuriken Particle System} -- klasyczny system cząstek - \item \textbf{Visual Effect Graph} -- system cząstek GPU-based dla~milionów cząstek + \item \textbf{Shuriken Particle System} -- klasyczny system cząstek. + \item \textbf{Visual Effect Graph} -- system cząstek GPU-based dla~milionów cząstek. \end{itemize} \begin{itemize} - \item \textbf{Cascade} -- legacy system cząstek - \item \textbf{Niagara} -- zaawansowany, skalowalny system efektów wizualnych + \item \textbf{Cascade} -- legacy system cząstek. + \item \textbf{Niagara} -- zaawansowany, skalowalny system efektów wizualnych. \end{itemize} \subsection{Systemy audio} \begin{itemize} - \item Obsługiwane formaty: WAV, MP3, OGG, AIFF - \item Kompresja: Vorbis, MP3, ADPCM - \item Audio middleware: integracja z~Wwise, FMOD~\cite{firat2022sound} + \item Obsługiwane formaty: WAV, MP3, OGG, AIFF. + \item Kompresja: Vorbis, MP3, ADPCM. + \item Audio middleware: integracja z~Wwise, FMOD~\cite{firat2022sound}. \end{itemize} \begin{itemize} - \item Obsługiwane formaty: WAV, OGG, FLAC - \item Natywna integracja z~MetaSounds - \item Wsparcie dla~Wwise, FMOD~\cite{firat2022sound} + \item Obsługiwane formaty: WAV, OGG, FLAC. + \item Natywna integracja z~MetaSounds. + \item Wsparcie dla~Wwise, FMOD~\cite{firat2022sound}. \end{itemize} -Oba silniki oferują zaawansowane systemy dźwięku przestrzennego \\ z~obsługą~\cite{firat2022sound}: +Oba silniki oferują zaawansowane systemy dźwięku przestrzennego z~obsługą~\cite{firat2022sound}: \begin{itemize} - \item Attenuation curves (krzywe tłumienia) - \item Occlusion i~obstruction (przesłanianie i~blokowanie) - \item Reverb zones (strefy pogłosu) - \item Doppler effect (efekt Dopplera) + \item Attenuation curves (krzywe tłumienia). + \item Occlusion i~obstruction (przesłanianie i~blokowanie). + \item Reverb zones (strefy pogłosu). + \item Doppler effect (efekt Dopplera). \end{itemize} \subsection{Narzędzia deweloperskie} \begin{itemize} - \item \textbf{Scene View} -- intuicyjny edytor sceny 2D/3D - \item \textbf{Inspector} -- edycja właściwości komponentów - \item \textbf{Prefab Mode} -- izolowana edycja prefabrykatów - \item \textbf{UI Builder} -- wizualny edytor interfejsów użytkownika + \item \textbf{Scene View} -- intuicyjny edytor sceny 2D/3D. + \item \textbf{Inspector} -- edycja właściwości komponentów. + \item \textbf{Prefab Mode} -- izolowana edycja prefabrykatów. + \item \textbf{UI Builder} -- wizualny edytor interfejsów użytkownika. \end{itemize} \begin{itemize} - \item \textbf{Viewport} -- zaawansowany edytor poziomów - \item \textbf{Details Panel} -- szczegółowa konfiguracja aktorów - \item \textbf{Blueprint Editor} -- wizualne programowanie - \item \textbf{UMG Designer} -- projektowanie UI + \item \textbf{Viewport} -- zaawansowany edytor poziomów. + \item \textbf{Details Panel} -- szczegółowa konfiguracja aktorów. + \item \textbf{Blueprint Editor} -- wizualne programowanie. + \item \textbf{UMG Designer} -- projektowanie UI. \end{itemize} \begin{itemize} - \item Unity Profiler -- analiza wydajności CPU, GPU, pamięci - \item Console -- logi i~błędy w~czasie rzeczywistym - \item Frame Debugger -- analiza procesu renderowania klatka po~klatce - \item Memory Profiler -- szczegółowa analiza alokacji pamięci + \item Unity Profiler -- analiza wydajności CPU, GPU, pamięci. + \item Console -- logi i~błędy w~czasie rzeczywistym. + \item Frame Debugger -- analiza procesu renderowania klatka po~klatce. + \item Memory Profiler -- szczegółowa analiza alokacji pamięci. \end{itemize} \begin{itemize} - \item Unreal Insights -- kompleksowe narzędzie profilowania - \item Visual Logger -- wizualizacja logów w~kontekście gry - \item Session Frontend -- monitoring wielu instancji gry - \item GPU Visualizer -- analiza wydajności GPU + \item Unreal Insights -- kompleksowe narzędzie profilowania. + \item Visual Logger -- wizualizacja logów w~kontekście gry. + \item Session Frontend -- monitoring wielu instancji gry. + \item GPU Visualizer -- analiza wydajności GPU. \end{itemize} \subsection{Wsparcie dla platform docelowych} @@ -211,17 +211,17 @@ Oba silniki oferują wsparcie dla~głównych konsol (PlayStation 5, Xbox Series \begin{itemize} - \item Ponad 100\,000 zasobów dostępnych - \item Modele 3D, tekstury, skrypty, narzędzia, kompletne projekty - \item Ceny od~darmowych do~kilkuset dolarów - \item System ocen i~recenzji + \item Ponad 100\,000 zasobów dostępnych. + \item Modele 3D, tekstury, skrypty, narzędzia, kompletne projekty. + \item Ceny od~darmowych do~kilkuset dolarów. + \item System ocen i~recenzji. \end{itemize} \begin{itemize} - \item Dziesiątki tysięcy zasobów wysokiej jakości - \item Miesięczne darmowe zasoby dla~subskrybentów - \item Integracja z~Quixel Megascans (biblioteka fotogrametryczna) - \item Często wyższa jakość, ale~mniejszy wybór niż~Unity + \item Dziesiątki tysięcy zasobów wysokiej jakości. + \item Miesięczne darmowe zasoby dla~subskrybentów. + \item Integracja z~Quixel Megascans (biblioteka fotogrametryczna). + \item Często wyższa jakość, ale~mniejszy wybór niż~Unity. \end{itemize} @@ -250,13 +250,13 @@ Wielkość i~aktywność społeczności deweloperskiej jest istotnym czynnikiem \begin{itemize} - \item \textbf{Dokumentacja oficjalna} -- ponad 5000 stron dokumentacji API - \item \textbf{Unity Learn} -- ponad 750 darmowych kursów i~tutoriali~\cite{christopoulou2017overview} - \item \textbf{Certyfikacje} -- 4 poziomy certyfikacji \\ (User, Associate, Professional, Expert)~\cite{barczak2019comparative} + \item \textbf{Dokumentacja oficjalna} -- ponad 5000 stron dokumentacji API. + \item \textbf{Unity Learn} -- ponad 750 darmowych kursów i~tutoriali~\cite{christopoulou2017overview}. + \item \textbf{Certyfikacje} -- 4 poziomy certyfikacji (User, Associate, Professional, Expert)~\cite{barczak2019comparative}. \end{itemize} \begin{itemize} - \item \textbf{Dokumentacja oficjalna} -- obszerna dokumentacja z~ponad 3000 stron - \item \textbf{Unreal Online Learning} -- ponad 200 darmowych kursów wideo~\cite{christopoulou2017overview} - \item \textbf{Epic Developer Community} -- oficjalne forum wsparcia~\cite{barczak2019comparative} + \item \textbf{Dokumentacja oficjalna} -- obszerna dokumentacja z~ponad 3000 stron. + \item \textbf{Unreal Online Learning} -- ponad 200 darmowych kursów wideo~\cite{christopoulou2017overview}. + \item \textbf{Epic Developer Community} -- oficjalne forum wsparcia~\cite{barczak2019comparative}. \end{itemize} diff --git a/latex/tex/7-porownanie-wynikow.tex b/latex/tex/7-porownanie-wynikow.tex index 39fa17b..ebd3421 100644 --- a/latex/tex/7-porownanie-wynikow.tex +++ b/latex/tex/7-porownanie-wynikow.tex @@ -72,10 +72,10 @@ Analiza możliwości (rozdział~6) wykazała, że~oba silniki oferują bogate ze Znaczenie poszczególnych kryteriów różni się w~zależności od~typu projektu: \begin{itemize} - \item \textbf{Gry indie} -- priorytet: łatwość nauki, koszt, społeczność - \item \textbf{Gry mobilne} -- priorytet: wydajność, optymalizacja, wsparcie platform - \item \textbf{Gry AAA} -- priorytet: jakość grafiki, zaawansowane funkcje, skalowalność - \item \textbf{Gry edukacyjne} -- priorytet: prostota, dokumentacja, stabilność + \item \textbf{Gry indie} -- priorytet: łatwość nauki, koszt, społeczność. + \item \textbf{Gry mobilne} -- priorytet: wydajność, optymalizacja, wsparcie platform. + \item \textbf{Gry AAA} -- priorytet: jakość grafiki, zaawansowane funkcje, skalowalność. + \item \textbf{Gry edukacyjne} -- priorytet: prostota, dokumentacja, stabilność. \end{itemize} \subsection{Przypadki użycia} @@ -83,11 +83,11 @@ Znaczenie poszczególnych kryteriów różni się w~zależności od~typu projekt \begin{itemize} - \item Niższy próg wejścia dla~początkujących deweloperów - \item Bogaty Asset Store z~dostępnymi cenowo zasobami - \item Większa społeczność -- łatwiej znaleźć pomoc - \item Szybsze prototypowanie - \item Mniejsze wymagania sprzętowe dla~deweloperów + \item Niższy próg wejścia dla~początkujących deweloperów. + \item Bogaty Asset Store z~dostępnymi cenowo zasobami. + \item Większa społeczność -- łatwiej znaleźć pomoc. + \item Szybsze prototypowanie. + \item Mniejsze wymagania sprzętowe dla~deweloperów. \end{itemize} Jeśli gra wymaga grafiki najwyższej jakości (photorealistic), rozważ Unreal Engine. @@ -95,11 +95,11 @@ Jeśli gra wymaga grafiki najwyższej jakości (photorealistic), rozważ Unreal \begin{itemize} - \item Lepsza optymalizacja pod~platformy mobilne - \item Mniejsze rozmiary buildu - \item Lepsze wsparcie dla~starszych urządzeń - \item Więcej narzędzi i~assetów mobilnych - \item Większość gier mobilnych używa Unity (udowodniona skuteczność) + \item Lepsza optymalizacja pod~platformy mobilne. + \item Mniejsze rozmiary buildu. + \item Lepsze wsparcie dla~starszych urządzeń. + \item Więcej narzędzi i~assetów mobilnych. + \item Większość gier mobilnych używa Unity (udowodniona skuteczność). \end{itemize} Według danych z~2023 roku, około 70\% gier mobilnych na~iOS i~Android zostało stworzonych w~Unity~\cite{statista_unity_market, unity_gaming_report}. @@ -107,11 +107,11 @@ Według danych z~2023 roku, około 70\% gier mobilnych na~iOS i~Android zostało \begin{itemize} - \item Wyższa jakość grafiki out-of-the-box - \item Nanite -- rendering miliardów poligonów - \item Lumen -- dynamiczne global illumination - \item Lepsze wsparcie dla~dużych zespołów - \item Sprawdzone w~produkcjach AAA (Fortnite, Gears of~War) + \item Wyższa jakość grafiki out-of-the-box. + \item Nanite -- rendering miliardów poligonów. + \item Lumen -- dynamiczne global illumination. + \item Lepsze wsparcie dla~dużych zespołów. + \item Sprawdzone w~produkcjach AAA (Fortnite, Gears of~War). \end{itemize} Unreal Engine wykorzystywano w~produkcjach takich jak: Final Fantasy VII Remake, Jedi: Fallen Order, Borderlands 3. @@ -119,15 +119,15 @@ Unreal Engine wykorzystywano w~produkcjach takich jak: Final Fantasy VII Remake, \begin{itemize} - \item Aplikacje edukacyjne VR/AR - \item Mobilny AR (ARCore, ARKit) - \item Projekty wymagające szybkiego rozwoju + \item Aplikacje edukacyjne VR/AR. + \item Mobilny AR (ARCore, ARKit). + \item Projekty wymagające szybkiego rozwoju. \end{itemize} \begin{itemize} - \item High-end VR experiences - \item Architekturalna wizualizacja VR - \item Training simulations wymagające fotorealizmu + \item High-end VR experiences. + \item Architekturalna wizualizacja VR. + \item Training simulations wymagające fotorealizmu. \end{itemize} \subsection{Weryfikacja hipotez badawczych} @@ -148,10 +148,10 @@ Na~początku pracy (rozdział~\ref{sec:wstep}) postawiono następujące hipotezy \textbf{Uzasadnienie}: Analiza wywiadów (rozdział~wywiady-analiza) wykazała, że~100\% respondentów z~doświadczeniem poniżej 2~lat oceniło Unity jako bardziej przystępne. Składają się na~to: \begin{itemize} - \item Lepiej udokumentowane API - \item Większa dostępność tutoriali dla~początkujących - \item C\# jako język bardziej przyjazny niż~C++ - \item Prostszy interfejs edytora + \item Lepiej udokumentowane API. + \item Większa dostępność tutoriali dla~początkujących. + \item C\# jako język bardziej przyjazny niż~C++. + \item Prostszy interfejs edytora. \end{itemize} @@ -161,10 +161,10 @@ Na~początku pracy (rozdział~\ref{sec:wstep}) postawiono następujące hipotezy \textbf{Uzasadnienie}: \begin{itemize} - \item Mniejsze rozmiary buildów mobilnych w~Unity - \item Lepsza optymalizacja dla~urządzeń niskiej klasy - \item Większy ekosystem mobile-specific assetów - \item Dominacja na~rynku gier mobilnych (70\% udziału) + \item Mniejsze rozmiary buildów mobilnych w~Unity. + \item Lepsza optymalizacja dla~urządzeń niskiej klasy. + \item Większy ekosystem mobile-specific assetów. + \item Dominacja na~rynku gier mobilnych (70\% udziału). \end{itemize} @@ -174,53 +174,53 @@ Na~początku pracy (rozdział~\ref{sec:wstep}) postawiono następujące hipotezy \textbf{Uzasadnienie}: \begin{itemize} - \item Technologie Nanite i~Lumen oferują funkcje niedostępne w~Unity - \item Lepsze domyślne materiały i~shadery - \item Zaawansowane efekty post-processingu out-of-the-box - \item Większość projektów wymagających fotorealizmu wykorzystuje Unreal + \item Technologie Nanite i~Lumen oferują funkcje niedostępne w~Unity. + \item Lepsze domyślne materiały i~shadery. + \item Zaawansowane efekty post-processingu out-of-the-box. + \item Większość projektów wymagających fotorealizmu wykorzystuje Unreal. \end{itemize} \subsection{Ograniczenia badań} \begin{itemize} - \item \textbf{Ograniczona liczba scenariuszy testowych} -- skupiono się na~grze typu bullet-hell, co~nie~pokrywa wszystkich możliwych zastosowań silników - \item \textbf{Pojedyncza konfiguracja sprzętowa} -- testy przeprowadzono tylko na~jednym zestawie komputerowym - \item \textbf{Mała próba wywiadów} -- 8~respondentów może nie~reprezentować całej społeczności deweloperów + \item \textbf{Ograniczona liczba scenariuszy testowych} -- skupiono się na~grze typu bullet-hell, co~nie~pokrywa wszystkich możliwych zastosowań silników. + \item \textbf{Pojedyncza konfiguracja sprzętowa} -- testy przeprowadzono tylko na~jednym zestawie komputerowym. + \item \textbf{Mała próba wywiadów} -- 8~respondentów może nie~reprezentować całej społeczności deweloperów. \end{itemize} \begin{itemize} - \item \textbf{Wersje silników} -- wyniki dotyczą konkretnych wersji Unity i~Unreal; nowsze wersje mogą mieć odmienną wydajność - \item \textbf{Wpływ object poolingu} -- optymalizacja wpływa na~wyniki; bez~niej różnice mogłyby być większe - \item \textbf{Profilowanie} -- NVIDIA Nsight może wprowadzać własny narzut wydajnościowy + \item \textbf{Wersje silników} -- wyniki dotyczą konkretnych wersji Unity i~Unreal; nowsze wersje mogą mieć odmienną wydajność. + \item \textbf{Wpływ object poolingu} -- optymalizacja wpływa na~wyniki; bez~niej różnice mogłyby być większe. + \item \textbf{Profilowanie} -- NVIDIA Nsight może wprowadzać własny narzut wydajnościowy. \end{itemize} \begin{itemize} - \item Silniki gier rozwijają się dynamicznie -- wyniki mogą dezaktualizować się w~ciągu roku - \item Nie~testowano funkcji wprowadzonych w~najnowszych wersjach beta + \item Silniki gier rozwijają się dynamicznie -- wyniki mogą dezaktualizować się w~ciągu roku. + \item Nie~testowano funkcji wprowadzonych w~najnowszych wersjach beta. \end{itemize} \subsection{Implikacje praktyczne} \begin{itemize} - \item Rozpoczynając naukę tworzenia gier, Unity stanowi bezpieczniejszy wybór - \item Dla projektów 2D, Unity jest jednoznacznie lepszym wyborem - \item Inwestycja w~naukę C++ może być wartościowa długoterminowo + \item Rozpoczynając naukę tworzenia gier, Unity stanowi bezpieczniejszy wybór. + \item Dla projektów 2D, Unity jest jednoznacznie lepszym wyborem. + \item Inwestycja w~naukę C++ może być wartościowa długoterminowo. \end{itemize} \begin{itemize} - \item Unity pozwala na~szybsze MVP i~iteracje - \item Unreal wymaga co~najmniej jednego doświadczonego programisty C++ - \item Asset Store Unity oferuje więcej ready-to-use rozwiązań + \item Unity pozwala na~szybsze MVP i~iteracje. + \item Unreal wymaga co~najmniej jednego doświadczonego programisty C++. + \item Asset Store Unity oferuje więcej ready-to-use rozwiązań. \end{itemize} \begin{itemize} - \item Unreal Engine jest standardem przemysłowym dla~gier 3D wysokiej jakości - \item Wsparcie Epic Games dla~dużych projektów jest lepsze - \item Source code access w~Unreal daje większą kontrolę + \item Unreal Engine jest standardem przemysłowym dla~gier 3D wysokiej jakości. + \item Wsparcie Epic Games dla~dużych projektów jest lepsze. + \item Source code access w~Unreal daje większą kontrolę. \end{itemize} diff --git a/latex/tex/8-podsumowanie.tex b/latex/tex/8-podsumowanie.tex index 11c0ea2..c9c2348 100644 --- a/latex/tex/8-podsumowanie.tex +++ b/latex/tex/8-podsumowanie.tex @@ -1,20 +1,21 @@ \clearpage +\raggedbottom \section{Podsumowanie i wnioski} Celem niniejszej pracy było porównanie wydajności i~możliwości dwóch wiodących silników gier komputerowych -- Unity oraz Unreal Engine -- ze~szczególnym uwzględnieniem ich wpływu na~proces tworzenia gier oraz~końcową jakość produktu. Cel ten został zrealizowany poprzez: \begin{enumerate} - \item Przeprowadzenie szczegółowych testów wydajnościowych \\ z~wykorzystaniem niezależnego narzędzia NVIDIA Nsight Systems - \item Implementację identycznej gry typu bullet hell w~obu silnikach - \item Analizę porównawczą funkcjonalności i~możliwości obu silników - \item Przeprowadzenie wywiadów jakościowych z~ośmioma deweloperami gier + \item Przeprowadzenie szczegółowych testów wydajnościowych z~wykorzystaniem niezależnego narzędzia NVIDIA Nsight Systems. + \item Implementację identycznej gry typu bullet hell w~obu silnikach. + \item Analizę porównawczą funkcjonalności i~możliwości obu silników. + \item Przeprowadzenie wywiadów jakościowych z~ośmioma deweloperami gier. \end{enumerate} \subsection{Weryfikacja hipotezy badawczej} -Postawiona hipoteza badawcza brzmiała: \\ \textit{,,Silnik Unity, dzięki natywnemu wsparciu +Postawiona hipoteza badawcza brzmiała: \textit{,,Silnik Unity, dzięki natywnemu wsparciu dla~grafiki 2D, osiągnie lepszą wydajność w~grze typu bullet hell niż Unreal Engine, -który jest zoptymalizowany \\ przede wszystkim pod~kątem aplikacji 3D.''} +który jest zoptymalizowany przede wszystkim pod~kątem aplikacji 3D.''} Wyniki badań \textbf{częściowo potwierdzają} tę hipotezę, jednak obraz jest bardziej złożony niż początkowo zakładano: @@ -24,9 +25,9 @@ Unity wykorzystywał jedynie 23\% mocy obliczeniowej GPU (ograniczony przez V-Sy Analiza wywołań Vulkan API ujawniła fundamentalne różnice architektoniczne: \begin{itemize} - \item Unity: prosty, dwuetapowy potok renderowania \\ (2 wywołania \texttt{vkQueueSubmit} na~klatkę), - zdominowany przez \\ oczekiwanie na~GPU (\texttt{vkWaitForFences} -- 95,2\% czasu) - \item Unreal Engine: złożony potok z~16 wywołaniami \texttt{vkQueueSubmit} na~klatkę, zdominowany przez dynamiczną kompilację potoków (47--72\% czasu) + \item Unity: prosty, dwuetapowy potok renderowania (2 wywołania \\ \texttt{vkQueueSubmit} na~klatkę), + zdominowany przez oczekiwanie na~GPU \\ (\texttt{vkWaitForFences} -- 95,2\% czasu). + \item Unreal Engine: złożony potok z~16 wywołaniami \texttt{vkQueueSubmit} na~klatkę, zdominowany przez dynamiczną kompilację potoków (47--72\% czasu). \end{itemize} Unity wykazał większą stabilność czasów klatek (98,24\% klatek w~przedziale 5--10~ms), podczas gdy Unreal Engine doświadczył spadku wydajności o~ponad 50\% między fazami niskiego (332--339~FPS) a~wysokiego obciążenia (162~FPS). @@ -53,28 +54,28 @@ Potoki graficzne utworzone & 3 & $\sim$2\,400 \\ \end{table} -Praktyczna implementacja gry bullet hell potwierdziła przewagę Unity \\ dla~tego typu projektów: +Praktyczna implementacja gry bullet hell potwierdziła przewagę Unity dla~tego typu projektów: \begin{itemize} - \item \textbf{Czas implementacji}: Unity wymagał około 60\% czasu potrzebnego na~implementację w~Unreal Engine - \item \textbf{Wsparcie 2D}: Unity oferuje natywne komponenty 2D \\ (\texttt{Rigidbody2D}, \texttt{Collider2D}), podczas gdy Unreal symuluje 2D w~środowisku 3D - \item \textbf{Object pooling}: Implementacja w~Unity jest prostsza \\ - (pojedyncza metoda \texttt{SetActive}) vs Unreal (trzy osobne metody: \\ + \item \textbf{Czas implementacji}: Unity wymagał około 60\% czasu potrzebnego na~implementację w~Unreal Engine. + \item \textbf{Wsparcie 2D}: Unity oferuje natywne komponenty 2D (\texttt{Rigidbody2D}, \texttt{Collider2D}), podczas gdy Unreal symuluje 2D w~środowisku 3D. + \item \textbf{Object pooling}: Implementacja w~Unity jest prostsza + (pojedyncza metoda \\ \texttt{SetActive}) vs Unreal (trzy osobne metody: \texttt{SetActorHiddenInGame}, - \texttt{SetActorEnableCollision}, - \\ \texttt{SetActorTickEnabled}) - \item \textbf{Instalacja na~Linux}: Unity -- około 30 minut, Unreal -- 2--4 godziny + \\ \texttt{SetActorEnableCollision}, + \texttt{SetActorTickEnabled}). + \item \textbf{Instalacja na~Linux}: Unity -- około 30 minut, Unreal -- 2--4 godziny. \end{itemize} Badania jakościowe z~udziałem 8~deweloperów potwierdziły: \begin{itemize} - \item Unity charakteryzuje się niższym progiem wejścia i~lepszą dokumentacją - \item Unreal Engine wymusza bardziej uporządkowaną strukturę projektu - \item System Blueprints ułatwia współpracę z~osobami nietechnicznymi - \item Problemy z~garbage collectorem w~Unity są znane, ale~rzadko doświadczane przy stosowaniu dobrych praktyk (object pooling) - \item Obie społeczności deweloperskie są aktywne, choć Unity ma~przewagę ilościową w~materiałach edukacyjnych + \item Unity charakteryzuje się niższym progiem wejścia i~lepszą dokumentacją. + \item Unreal Engine wymusza bardziej uporządkowaną strukturę projektu. + \item System Blueprints ułatwia współpracę z~osobami nietechnicznymi. + \item Problemy z~garbage collectorem w~Unity są znane, ale~rzadko doświadczane przy stosowaniu dobrych praktyk (object pooling). + \item Obie społeczności deweloperskie są aktywne, choć Unity ma~przewagę ilościową w~materiałach edukacyjnych. \end{itemize} \subsection{Rekomendacje praktyczne} @@ -83,22 +84,22 @@ Na~podstawie przeprowadzonych badań sformułowano następujące rekomendacje: \begin{itemize} - \item Projekt dotyczy gry 2D lub mobilnej - \item Zespół składa się z~początkujących deweloperów - \item Wymagany jest szybki cykl iteracji (hot reload) - \item Projekt ma~ograniczony budżet czasowy na~naukę narzędzia - \item Preferowany jest język C\# nad C++ - \item Wymagana jest dobra integracja z~Git (tekstowa serializacja scen) + \item Projekt dotyczy gry 2D lub mobilnej. + \item Zespół składa się z~początkujących deweloperów. + \item Wymagany jest szybki cykl iteracji (hot reload). + \item Projekt ma~ograniczony budżet czasowy na~naukę narzędzia. + \item Preferowany jest język C\# nad C++. + \item Wymagana jest dobra integracja z~Git (tekstowa serializacja scen). \end{itemize} \begin{itemize} - \item Projekt wymaga fotorealistycznej grafiki 3D - \item Zespół posiada doświadczenie w~C++ - \item Projekt jest typu FPS lub AAA - \item W~zespole znajdują się osoby nietechniczne (designerzy, artyści) - \item Wymagane są zaawansowane funkcje wizualne (Nanite, Lumen) - \item Projekt wymaga dostępu do~kodu źródłowego silnika + \item Projekt wymaga fotorealistycznej grafiki 3D. + \item Zespół posiada doświadczenie w~C++. + \item Projekt jest typu FPS lub AAA. + \item W~zespole znajdują się osoby nietechniczne (designerzy, artyści). + \item Wymagane są zaawansowane funkcje wizualne (Nanite, Lumen). + \item Projekt wymaga dostępu do~kodu źródłowego silnika. \end{itemize} \begin{table}[H] @@ -131,19 +132,19 @@ Prototyp & Unity & Szybki cykl iteracji \\ Niniejsza praca wnosi następujące elementy do~dziedziny badań nad~silnikami gier: \begin{enumerate} - \item \textbf{Zunifikowana metodyka pomiaru} -- wykorzystanie \\ NVIDIA Nsight Systems jako - niezależnego narzędzia profilowania \\ eliminuje różnice wynikające z~wbudowanych profilerów - silników, zapewniając porównywalność wyników + \item \textbf{Zunifikowana metodyka pomiaru} -- wykorzystanie NVIDIA Nsight Systems jako + niezależnego narzędzia profilowania eliminuje różnice wynikające z~wbudowanych profilerów + silników, zapewniając porównywalność wyników. \item \textbf{Szczegółowa analiza wywołań API} -- dokumentacja ponad 32~milionów wywołań Vulkan API dla~Unreal Engine i~0,5~miliona dla~Unity dostarcza wglądu w~architekturę - renderowania obu silników + renderowania obu silników. \item \textbf{Triangulacja metod badawczych} -- połączenie testów wydajnościowych, analizy funkcjonalności, doświadczeń implementacyjnych i~wywiadów jakościowych daje kompleksowy - obraz porównawczy + obraz porównawczy. - \item \textbf{Praktyczne przypadki użycia} -- konkretne rekomendacje oparte na~danych empirycznych mogą służyć jako przewodnik dla~deweloperów + \item \textbf{Praktyczne przypadki użycia} -- konkretne rekomendacje oparte na~danych empirycznych mogą służyć jako przewodnik dla~deweloperów. \end{enumerate} \subsection{Ograniczenia badań} @@ -151,16 +152,17 @@ Niniejsza praca wnosi następujące elementy do~dziedziny badań nad~silnikami g Przeprowadzone badania posiadają następujące ograniczenia: \begin{enumerate} - \item \textbf{Zakres gatunkowy} -- koncentracja na~grach typu bullet hell \\ nie~pokrywa - wszystkich możliwych zastosowań silników gier; \\ inne gatunki (RPG, RTS, puzzle) - mogą wykazywać odmienne charakterystyki wydajnościowe + \item \textbf{Zakres gatunkowy} -- koncentracja na~grach typu bullet hell + nie~pokrywa + wszystkich możliwych zastosowań silników gier; inne gatunki (RPG, RTS, puzzle) + mogą wykazywać odmienne charakterystyki wydajnościowe. - \item \textbf{Pojedyncza konfiguracja sprzętowa} -- testy na~wysokowydajnym sprzęcie (RTX 3090, Ryzen 9 7900X3D) nie~odzwierciedlają wydajności na~typowych konfiguracjach graczy + \item \textbf{Pojedyncza konfiguracja sprzętowa} -- testy na~wysokowydajnym sprzęcie (RTX 3090, Ryzen 9 7900X3D) nie~odzwierciedlają wydajności na~typowych konfiguracjach graczy. - \item \textbf{Próba badawcza} -- 8~wywiadów stanowi relatywnie małą próbę, choć~wystarczającą dla~badań jakościowych o~charakterze eksploracyjnym + \item \textbf{Próba badawcza} -- 8~wywiadów stanowi relatywnie małą próbę, choć~wystarczającą dla~badań jakościowych o~charakterze eksploracyjnym. - \item \textbf{Ewolucja silników} -- szybki rozwój obu silników może spowodować dezaktualizację wyników w~ciągu 12--24 miesięcy + \item \textbf{Ewolucja silników} -- szybki rozwój obu silników może spowodować dezaktualizację wyników w~ciągu 12--24 miesięcy. \end{enumerate} \subsection{Propozycje dalszych badań} @@ -168,48 +170,48 @@ Przeprowadzone badania posiadają następujące ograniczenia: Na~podstawie zidentyfikowanych ograniczeń proponuje się następujące kierunki przyszłych badań: Przeprowadzenie analogicznych testów -\\ dla~gier RPG (open world), strategii czasu rzeczywistego, gier puzzle oraz symulatorów +dla~gier RPG (open world), strategii czasu rzeczywistego, gier puzzle oraz symulatorów pozwoliłoby na~bardziej kompleksową ocenę wydajności silników. -Porównanie wydajności na~różnych konfiguracjach \\ sprzętowych -(PC low-end, mid-range, high-end; urządzenia mobilne; konsole) dostarczyłoby +Porównanie wydajności na~różnych konfiguracjach sprzętowych +(PC low-end, \\ mid-range, high-end; urządzenia mobilne; konsole) dostarczyłoby praktycznych informacji dla~deweloperów celujących w~różne platformy. -Badanie Total Cost of Ownership (TCO) uwzględniające \\ czas nauki zespołu, +Badanie Total Cost of Ownership (TCO) uwzględniające czas nauki zespołu, koszty licencji, assetów, czas rozwoju i~koszty utrzymania projektu mogłoby dostarczyć cennych informacji biznesowych. Śledzenie wydajności obu silników przez~2--3 lata, dokumentując wpływ kolejnych aktualizacji, pozwoliłoby na~ocenę długoterminowej stabilności i~kierunków rozwoju. -Stworzenie frameworka \\ do~automatycznego uruchamiania i~profilowania scenariuszy testowych +Stworzenie frameworka do~automatycznego uruchamiania i~profilowania scenariuszy testowych umożliwiłoby powtarzalne badania na~większą skalę. \subsection{Refleksje końcowe} -Przeprowadzone badania potwierdzają, że~nie~istnieje jednoznaczna odpowiedź \\na~pytanie ,, +Przeprowadzone badania potwierdzają, że~nie~istnieje jednoznaczna odpowiedź na~pytanie ,, który silnik jest lepszy''. Unity i~Unreal Engine reprezentują różne filozofie projektowe i~są zoptymalizowane pod~odmienne przypadki użycia. \textbf{Unity} wyróżnia się jako silnik oferujący: \begin{itemize} - \item Niższy próg wejścia i~szybszą krzywą uczenia - \item Lepsze natywne wsparcie dla~grafiki 2D - \item Prostszy i~bardziej przewidywalny potok renderowania - \item Efektywniejszą pracę na~platformach mobilnych - \item Większą społeczność i~więcej materiałów edukacyjnych + \item Niższy próg wejścia i~szybszą krzywą uczenia. + \item Lepsze natywne wsparcie dla~grafiki 2D. + \item Prostszy i~bardziej przewidywalny potok renderowania. + \item Efektywniejszą pracę na~platformach mobilnych. + \item Większą społeczność i~więcej materiałów edukacyjnych. \end{itemize} \textbf{Unreal Engine} natomiast dominuje w~obszarach: \begin{itemize} - \item Zaawansowanej grafiki 3D i~fotorealizmu - \item Produkcji wysokobudżetowych (AAA) - \item Współpracy z~osobami nietechnicznymi (Blueprints) - \item Dostępu do~kodu źródłowego silnika - \item Wbudowanych zaawansowanych funkcji (Nanite, Lumen) + \item Zaawansowanej grafiki 3D i~fotorealizmu. + \item Produkcji wysokobudżetowych (AAA). + \item Współpracy z~osobami nietechnicznymi (Blueprints). + \item Dostępu do~kodu źródłowego silnika. + \item Wbudowanych zaawansowanych funkcji (Nanite, Lumen). \end{itemize} \newpage W~kontekście testowanej gry bullet hell hipoteza o~przewadze Unity została częściowo potwierdzona -- -silnik oferuje prostszą architekturę renderowania, \\ stabilniejsze czasy klatek i~znacznie +silnik oferuje prostszą architekturę renderowania, stabilniejsze czasy klatek i~znacznie łatwiejszy proces implementacji. Jednakże Unreal Engine wykazał zdolność do~osiągania porównywalnej wydajności w~wymagających scenach, co~sugeruje, że~różnice wydajnościowe są mniejsze niż różnice w~doświadczeniu deweloperskim. diff --git a/latex/tex/implementacja-gry.tex b/latex/tex/implementacja-gry.tex index d1f2a19..de80b33 100644 --- a/latex/tex/implementacja-gry.tex +++ b/latex/tex/implementacja-gry.tex @@ -6,14 +6,14 @@ W~ramach pracy zaimplementowano identyczną grę typu bullet-hell w~obu silnikac \subsection{Implementacja w Unity} \label{subsec:impl-unity} -Projekt Unity został utworzony w~wersji LTS z~wykorzystaniem \\ standardowego renderera 2D. Instalacja +Projekt Unity został utworzony w~wersji LTS z~wykorzystaniem standardowego renderera 2D. Instalacja silnika na systemie Linux przebiegła bezproblemowo dzięki Unity Hub \cite{unity_hub} \cite{unity_hub_download_arch}, który zapewnia spójne zarządzanie wersjami edytora i~projektami. \begin{figure}[H] \centering - \includegraphics[width=0.9\textwidth]{tex/img/unity_hub_default_screen.png} + \includegraphics[width=0.8\textwidth]{tex/img/unity_hub_default_screen.png} \caption{Ekran powitalny Unity Hub.} \label{fig:unity_hub_welcome} \end{figure} @@ -34,8 +34,8 @@ zarządzanie wersjami edytora i~projektami. Implementacja Unity wykorzystuje kilka kluczowych wzorców projektowych: -Klasa \texttt{GameBootstrap} wykorzystuje atrybut \\ \texttt{[Runtime\-Initialize\-OnLoad\-Method]} -do zapewnienia, że obiekt \\ \texttt{GameInitializer} istnieje w~scenie przed rozpoczęciem gry. +Klasa \texttt{GameBootstrap} wykorzystuje atrybut \texttt{[Runtime\-Initialize\-OnLoad\-Method]} +do zapewnienia, że obiekt \texttt{GameInitializer} istnieje w~scenie przed rozpoczęciem gry. Jest to eleganckie rozwiązanie problemu inicjalizacji singletonów w~Unity. System \texttt{BulletPool} stanowi rdzeń optymalizacji wydajnościowej. Zamiast ciągłego tworzenia i niszczenia obiektów pocisków (co generowałoby znaczące obciążenie garbage collectora), pociski są recyklingowane z puli: @@ -57,7 +57,8 @@ public Bullet Spawn(Vector2 position, Vector2 direction, Pula jest wstępnie rozgrzewana (\textit{warm capacity}) podczas inicjalizacji, co eliminuje alokacje podczas rozgrywki. -Klasy \texttt{GameDirector} i~\texttt{EnemySpawner} wykorzystują \\ wzorzec Singleton z~właściwością \texttt{Instance}, zapewniając \\ globalny punkt dostępu do kluczowych systemów gry. +Klasy \texttt{GameDirector} i~\texttt{EnemySpawner} wykorzystują wzorzec Singleton z~właściwością \texttt{Instance}, +zapewniając globalny punkt dostępu do kluczowych systemów gry. \texttt{EnemySpawner} implementuje system eskalującej trudności poprzez interpolację czasu między spawnami: @@ -73,20 +74,20 @@ Przeciwnicy są definiowani przez strukturę \texttt{EnemyBlueprint}, która zaw Podczas implementacji napotkano następujące wyzwania: \begin{enumerate} - \item \textbf{Garbage Collection} -- początkowa implementacja bez \\ object poolingu powodowała zauważalne spadki klatek przy dużej liczbie pocisków - \item \textbf{Kolejność inicjalizacji} -- konieczność użycia wzorca Bootstrap wynikała z~nieprzewidywalnej kolejności wywoływania metod \texttt{Awake()} i~\texttt{Start()} - \item \textbf{Serializacja} -- atrybuty \texttt{[SerializeField]} wymagały \\ starannego rozplanowania, które pola powinny być edytowalne w~inspektorze - \item Interfejs użytkownika nie jest odświeżany po otwarciu menu \cite{linux_editor_does_not_redraw} -- wymagało to ręcznego wymuszenia odświeżenia inspektora + \item \textbf{Garbage Collection} -- początkowa implementacja bez object poolingu powodowała zauważalne spadki klatek przy dużej liczbie pocisków. + \item \textbf{Kolejność inicjalizacji} -- konieczność użycia wzorca Bootstrap wynikała z~nieprzewidywalnej kolejności wywoływania metod \texttt{Awake()} i~\texttt{Start()}. + \item \textbf{Serializacja} -- atrybuty \texttt{[SerializeField]} wymagały starannego rozplanowania, które pola powinny być edytowalne w~inspektorze. + \item Interfejs użytkownika nie jest odświeżany po otwarciu menu \cite{linux_editor_does_not_redraw} -- wymagało to ręcznego wymuszenia odświeżenia inspektora. \end{enumerate} \begin{itemize} - \item Natywne wsparcie dla 2D -- dedykowany tryb 2D z odpowiednimi komponentami fizyki (\texttt{Rigidbody2D}, \texttt{Collider2D}) - \item Hot reload -- możliwość edycji kodu i natychmiastowego testowania zmian - \item Intuicyjny inspektor -- łatwa konfiguracja parametrów gry bez rekompilacji - \item Bogata dokumentacja C\# i społeczność - \item Skupienie się na kodzie -- większość logiki gry zaimplementowana została w kodzie źródłowym co przyśpieszyło proces tworzenia gry - \item Dobre wsparcie dla LLM -- unity posiada narzędzie mcp oferującą prostą integrację edytora i narzędzi AI \cite{unity_mcp} + \item Natywne wsparcie dla 2D -- dedykowany tryb 2D z odpowiednimi komponentami fizyki (\texttt{Rigidbody2D}, \texttt{Collider2D}). + \item Hot reload -- możliwość edycji kodu i natychmiastowego testowania zmian. + \item Intuicyjny inspektor -- łatwa konfiguracja parametrów gry bez rekompilacji. + \item Bogata dokumentacja C\# i społeczność. + \item Skupienie się na kodzie -- większość logiki gry zaimplementowana została w kodzie źródłowym co przyśpieszyło proces tworzenia gry. + \item Dobre wsparcie dla LLM -- unity posiada narzędzie mcp oferującą prostą integrację edytora i narzędzi AI \cite{unity_mcp}. \end{itemize} \newpage \subsection{Implementacja w Unreal Engine} @@ -96,8 +97,8 @@ Podczas implementacji napotkano następujące wyzwania: Instalacja Unreal Engine na systemie Linux okazała się znacznie bardziej skomplikowana niż w przypadku Unity. Dostępne są dwie ścieżki: \begin{enumerate} - \item Uzyskanie dostępu do oficjalnego repozytorium GitHub Epic Games i samodzielna kompilacja silnika ze źródeł \cite{unreal_arch_installation_source} - \item Pobranie prekompilowanej wersji binarnej \cite{unreal_arch_installation_binary} + \item Uzyskanie dostępu do oficjalnego repozytorium GitHub Epic Games i samodzielna kompilacja silnika ze źródeł \cite{unreal_arch_installation_source}. + \item Pobranie prekompilowanej wersji binarnej \cite{unreal_arch_installation_binary}. \end{enumerate} \begin{figure}[H] @@ -127,9 +128,9 @@ tryb 2D z~wyspecjalizowanymi komponentami. Ta różnica ma praktyczne konsekwencje: \begin{itemize} - \item W Unreal konieczne jest ręczne konfigurowanie kamery ortograficznej - \item Fizyka 2D w~Unreal wykorzystuje te same komponenty co 3D, z~ograniczeniami na odpowiednich osiach - \item Sprite'y w Unreal są renderowane jako płaskie meshe w przestrzeni 3D + \item W Unreal konieczne jest ręczne konfigurowanie kamery ortograficznej. + \item Fizyka 2D w~Unreal wykorzystuje te same komponenty co 3D, z~ograniczeniami na odpowiednich osiach. + \item Sprite'y w Unreal są renderowane jako płaskie meshe w przestrzeni 3D. \end{itemize} @@ -138,42 +139,42 @@ Unreal oferuje dwa podejścia do programowania logiki gry: W praktyce korzystanie z nich dla osoby która zna tradycyjne programowanie okazazało się frustrujące ze względu na: \begin{itemize} - \item Problemy z kontrolą wersji - \item Trudności w debugowaniu - \item Ograniczoną czytelność i skalowalność - \item Ograniczenie w funkcjach z którycj można korzytsać + \item Problemy z kontrolą wersji. + \item Trudności w debugowaniu. + \item Ograniczoną czytelność i skalowalność. + \item Ograniczenie w funkcjach z którycj można korzytsać. \end{itemize} użycie go ostatecznie okazało się bardziej intujcywne i prostsze dla projektu z uwagi na doświadczenie w pisaniu programów w tradycyjny sposób -Implementacja object poolingu w~Unreal wymaga innego podejścia \\ niż w Unity. +Implementacja object poolingu w~Unreal wymaga innego podejścia niż w Unity. Zamiast prostego \texttt{SetActive(true/\allowbreak false)}, Unreal wykorzystuje: \begin{itemize} - \item \texttt{SetActorHiddenInGame()} -- kontrola widoczności - \item \texttt{SetActorEnableCollision()} -- kontrola kolizji - \item \texttt{SetActorTickEnabled()} -- kontrola aktualizacji logiki + \item \texttt{SetActorHiddenInGame()} -- kontrola widoczności. + \item \texttt{SetActorEnableCollision()} -- kontrola kolizji. + \item \texttt{SetActorTickEnabled()} -- kontrola aktualizacji logiki. \end{itemize} Ta granularność daje większą kontrolę, ale wymaga więcej kodu do osiągnięcia tego samego efektu. \begin{enumerate} - \item \textbf{Brak natywnego 2D} -- konieczność ``symulowania'' środowiska 2D w silniku 3D - \item \textbf{Czas kompilacji} -- kompilacja projektów C++ jest znacznie wolniejsza niż kompilacja C\# w Unity - \item \textbf{Rozmiar projektu} -- nawet prosty projekt Unreal zajmuje wielokrotnie więcej miejsca na dysku - \item \textbf{Dokumentacja} -- dla mniej popularnych zastosowań (jak gry 2D) dokumentacja jest ograniczona - \item \textbf{Blueprinty i kontrola wersji} -- pliki Blueprintów są binarne, co \\ utrudnia merge'owanie i code review + \item \textbf{Brak natywnego 2D} -- konieczność ``symulowania'' środowiska 2D w silniku 3D. + \item \textbf{Czas kompilacji} -- kompilacja projektów C++ jest znacznie wolniejsza niż kompilacja C\# w Unity. + \item \textbf{Rozmiar projektu} -- nawet prosty projekt Unreal zajmuje wielokrotnie więcej miejsca na dysku. + \item \textbf{Dokumentacja} -- dla mniej popularnych zastosowań (jak gry 2D) dokumentacja jest ograniczona. + \item \textbf{Blueprinty i kontrola wersji} -- pliki Blueprintów są binarne, co utrudnia merge'owanie i code review. \end{enumerate} \begin{itemize} - \item Potężny system materiałów i efektów wizualnych - \item Wbudowane zaawansowane narzędzia profilowania - \item Blueprinty umożliwiają szybkie prototypowanie przez osoby nietechniczne - \item Doskonałe wsparcie dla grafiki 3D i fotorealizmu + \item Potężny system materiałów i efektów wizualnych. + \item Wbudowane zaawansowane narzędzia profilowania. + \item Blueprinty umożliwiają szybkie prototypowanie przez osoby nietechniczne. + \item Doskonałe wsparcie dla grafiki 3D i fotorealizmu. \end{itemize} \subsection{Porównanie doświadczeń implementacyjnych} @@ -210,11 +211,11 @@ Rozmiar projektu & Mały & Duży \\ Doświadczenia z implementacji gry bullet-hell potwierdzają, że wybór silnika powinien być uzależniony od typu projektu: \begin{enumerate} - \item \textbf{Dla gier 2D} -- Unity oferuje znacznie lepsze wsparcie natywne, niższy próg wejścia i szybszy cykl iteracji - \item \textbf{Dla gier 3D AAA} -- Unreal Engine dysponuje lepszymi narzędziami do tworzenia fotorealistycznej grafiki - \item \textbf{Dla prototypowania} -- Unity pozwala na szybsze testowanie koncepcji dzięki hot reloadowi i prostszej konfiguracji - \item \textbf{Dla zespołów mieszanych} -- Blueprinty Unreal mogą być \\ wartościowe dla współpracy - z designerami, choć problemy \\ z kontrolą wersji stanowią wyzwanie + \item \textbf{Dla gier 2D} -- Unity oferuje znacznie lepsze wsparcie natywne, niższy próg wejścia i szybszy cykl iteracji. + \item \textbf{Dla gier 3D AAA} -- Unreal Engine dysponuje lepszymi narzędziami do tworzenia fotorealistycznej grafiki. + \item \textbf{Dla prototypowania} -- Unity pozwala na szybsze testowanie koncepcji dzięki hot reloadowi i prostszej konfiguracji. + \item \textbf{Dla zespołów mieszanych} -- Blueprinty Unreal mogą być wartościowe dla współpracy + z designerami, choć problemy z kontrolą wersji stanowią wyzwanie. \end{enumerate} Implementacja gry bullet-hell w~Unity zajęła około 60\% czasu diff --git a/latex/tex/narzedzia-profilowania.tex b/latex/tex/narzedzia-profilowania.tex index 148f8ce..a74b8e2 100644 --- a/latex/tex/narzedzia-profilowania.tex +++ b/latex/tex/narzedzia-profilowania.tex @@ -8,15 +8,16 @@ Zarówno Unity, jak i~Unreal Engine oferują własne, wbudowane narzędzia do analizy wydajności. Każde z~nich posiada unikalne cechy dostosowane do specyfiki danego silnika. -Unity dostarcza rozbudowany profiler dostępny bezpośrednio w~edytorze \\ (Window $\rightarrow$ Analysis $\rightarrow$ Profiler)~\cite{unity_profiler}. \\ Narzędzie to oferuje: +Unity dostarcza rozbudowany profiler dostępny bezpośrednio w~edytorze +(Window $\rightarrow$ Analysis $\rightarrow$ Profiler)~\cite{unity_profiler}. Narzędzie to oferuje: \begin{itemize} - \item \textbf{CPU Profiler} -- analiza czasu wykonania poszczególnych funkcji, z podziałem na kategorie (rendering, skrypty, fizyka, animacje) - \item \textbf{GPU Profiler} -- pomiar czasu renderowania na karcie graficznej - \item \textbf{Memory Profiler} -- szczegółowa analiza alokacji pamięci, wykrywanie wycieków - \item \textbf{Audio Profiler} -- monitorowanie obciążenia systemu dźwiękowego - \item \textbf{Physics Profiler} -- analiza wydajności silnika fizyki - \item \textbf{Frame Debugger} -- krokowa analiza procesu renderowania \\ pojedynczej klatki + \item \textbf{CPU Profiler} -- analiza czasu wykonania poszczególnych funkcji, z podziałem na kategorie (rendering, skrypty, fizyka, animacje). + \item \textbf{GPU Profiler} -- pomiar czasu renderowania na karcie graficznej. + \item \textbf{Memory Profiler} -- szczegółowa analiza alokacji pamięci, wykrywanie wycieków. + \item \textbf{Audio Profiler} -- monitorowanie obciążenia systemu dźwiękowego. + \item \textbf{Physics Profiler} -- analiza wydajności silnika fizyki. + \item \textbf{Frame Debugger} -- krokowa analiza procesu renderowania pojedynczej klatki. \end{itemize} Unity Profiler umożliwia również zdalne profilowanie aplikacji uruchomionej na urządzeniu @@ -34,16 +35,16 @@ Unreal Engine oferuje narzędzie Unreal Insights, które zastąpiło starszy sys Session Frontend~\cite{unreal_insights}. Kluczowe funkcjonalności obejmują: \begin{itemize} - \item \textbf{Timing Insights} -- precyzyjny pomiar czasu wykonania poszczególnych systemów silnika - \item \textbf{Asset Loading Insights} -- analiza czasu ładowania zasobów - \item \textbf{Memory Insights} -- monitorowanie alokacji i~dealokacji pamięci - \item \textbf{Animation Insights} -- profilowanie systemu animacji - \item \textbf{Network Insights} -- analiza ruchu sieciowego w~grach multiplayer + \item \textbf{Timing Insights} -- precyzyjny pomiar czasu wykonania poszczególnych systemów silnika. + \item \textbf{Asset Loading Insights} -- analiza czasu ładowania zasobów. + \item \textbf{Memory Insights} -- monitorowanie alokacji i~dealokacji pamięci. + \item \textbf{Animation Insights} -- profilowanie systemu animacji. + \item \textbf{Network Insights} -- analiza ruchu sieciowego w~grach multiplayer. \end{itemize} -Dodatkowo Unreal Engine udostępnia komendy konsolowe \\ -(np.~\texttt{stat fps}, \texttt{stat unit}, \texttt{stat gpu}) pozwalające na szybki \\ -podgląd podstawowych metryk wydajności podczas \\ rozgrywki~\cite{unreal_docs}. +Dodatkowo Unreal Engine udostępnia komendy konsolowe +(np.~\texttt{stat fps}, \texttt{stat unit}, \texttt{stat gpu}) pozwalające na szybki +podgląd podstawowych metryk wydajności podczas rozgrywki~\cite{unreal_docs}. \begin{figure}[H] \centering @@ -58,10 +59,10 @@ w~kontekście porównawczych badań wydajnościowych: \begin{enumerate} \item \textbf{Brak standaryzacji metryk} -- każdy silnik definiuje i~mierzy parametry - w~odmienny sposób, co utrudnia bezpośrednie porównania - \item \textbf{Różna granularność danych} -- poziom szczegółowości raportów różni się \\ między silnikami - \item \textbf{Narzut profilowania} -- wbudowane profilery same generują \\ obciążenie, które może być różne dla każdego silnika - \item \textbf{Nieporównywalność formatów wyjściowych} -- dane \\ eksportowane przez różne profilery mają odmienne struktury + w~odmienny sposób, co utrudnia bezpośrednie porównania. + \item \textbf{Różna granularność danych} -- poziom szczegółowości raportów różni się między silnikami. + \item \textbf{Narzut profilowania} -- wbudowane profilery same generują obciążenie, które może być różne dla każdego silnika. + \item \textbf{Nieporównywalność formatów wyjściowych} -- dane eksportowane przez różne profilery mają odmienne struktury. \end{enumerate} Z~powyższych powodów zdecydowano się na zastosowanie zewnętrznego, niezależnego od silnika narzędzia profilowania. @@ -85,37 +86,37 @@ Wybór NVIDIA Nsight jako głównego narzędzia pomiarowego podyktowany był następującymi czynnikami: \begin{itemize} - \item \textbf{Niezależność od silnika} -- Nsight analizuje aplikację na poziomie wywołań API graficznego (DirectX, Vulkan, OpenGL), co zapewnia porównywalność wyników między Unity a~Unreal Engine - \item \textbf{Standaryzowane metryki} -- narzędzie dostarcza zunifikowany zestaw metryk sprzętowych (GPU utilization, memory bandwidth, shader throughput) - \item \textbf{Minimalny narzut} -- profilowanie na poziomie sterownika generuje mniejsze zakłócenia niż profilery działające wewnątrz silnika - \item \textbf{Dostęp do danych niskopoziomowych} -- możliwość analizy \\ poszczególnych wywołań draw call, shaderów, transferów pamięci - \item \textbf{Spójny format danych} -- wyniki z~obu silników mają identyczną strukturę, co ułatwia automatyzację analizy + \item \textbf{Niezależność od silnika} -- Nsight analizuje aplikację na poziomie wywołań API graficznego (DirectX, Vulkan, OpenGL), co zapewnia porównywalność wyników między Unity a~Unreal Engine. + \item \textbf{Standaryzowane metryki} -- narzędzie dostarcza zunifikowany zestaw metryk sprzętowych (GPU utilization, memory bandwidth, shader throughput). + \item \textbf{Minimalny narzut} -- profilowanie na poziomie sterownika generuje mniejsze zakłócenia niż profilery działające wewnątrz silnika. + \item \textbf{Dostęp do danych niskopoziomowych} -- możliwość analizy poszczególnych wywołań draw call, shaderów, transferów pamięci. + \item \textbf{Spójny format danych} -- wyniki z~obu silników mają identyczną strukturę, co ułatwia automatyzację analizy. \end{itemize} NVIDIA Nsight Graphics oferuje szereg funkcjonalności istotnych dla badań wydajnościowych: Główny moduł analizy wydajności, umożliwiający: \begin{itemize} - \item Przechwycenie i~analizę pojedynczej klatki (frame capture) - \item Hierarchiczny widok wszystkich wywołań GPU - \item Pomiar czasu wykonania każdego etapu renderowania - \item Identyfikację wąskich gardeł (bottlenecks) - \item Analizę wykorzystania jednostek obliczeniowych GPU + \item Przechwycenie i~analizę pojedynczej klatki (frame capture). + \item Hierarchiczny widok wszystkich wywołań GPU. + \item Pomiar czasu wykonania każdego etapu renderowania. + \item Identyfikację wąskich gardeł (bottlenecks). + \item Analizę wykorzystania jednostek obliczeniowych GPU. \end{itemize} Moduł do długoterminowej analizy wydajności: \begin{itemize} - \item Rejestrowanie metryk przez określony czas (nie tylko pojedyncza klatka) - \item Wykrywanie spadków wydajności i~ich przyczyn - \item Analiza zmienności czasów klatek (frame time variance) - \item Korelacja obciążenia GPU z~wydarzeniami w~grze + \item Rejestrowanie metryk przez określony czas (nie tylko pojedyncza klatka). + \item Wykrywanie spadków wydajności i~ich przyczyn. + \item Analiza zmienności czasów klatek (frame time variance). + \item Korelacja obciążenia GPU z~wydarzeniami w~grze. \end{itemize} Narzędzie do optymalizacji shaderów: \begin{itemize} - \item Analiza wydajności poszczególnych shaderów - \item Identyfikacja nieefektywnych instrukcji - \item Pomiar occupancy (wykorzystania jednostek obliczeniowych) + \item Analiza wydajności poszczególnych shaderów. + \item Identyfikacja nieefektywnych instrukcji. + \item Pomiar occupancy (wykorzystania jednostek obliczeniowych). \end{itemize} \subsection{Przetwarzanie danych z~Nsight} @@ -126,9 +127,9 @@ Dane zebrane przez NVIDIA Nsight wymagają odpowiedniego przetworzenia w~celu uz Nsight umożliwia eksport danych w~kilku formatach: \begin{itemize} - \item \textbf{CSV} -- tabularyczne dane liczbowe - \item \textbf{JSON} -- strukturalne dane z~pełną hierarchią wywołań - \item \textbf{HTML Report} -- graficzny raport z~wykresami + \item \textbf{CSV} -- tabularyczne dane liczbowe. + \item \textbf{JSON} -- strukturalne dane z~pełną hierarchią wywołań. + \item \textbf{HTML Report} -- graficzny raport z~wykresami. \end{itemize} W~niniejszej pracy wykorzystano format CSV ze względu na łatwość importu do narzędzi analizy statystycznej. @@ -167,8 +168,8 @@ Memory Bandwidth & GB/s & Przepustowość pamięci GPU \\ Zastosowanie NVIDIA Nsight jako głównego narzędzia profilowania zapewnia: \begin{enumerate} - \item \textbf{Obiektywność} -- pomiary wykonywane na tym samym poziomie abstrakcji dla obu silników - \item \textbf{Porównywalność} -- identyczne metryki i~format danych - \item \textbf{Powtarzalność} -- standaryzowana procedura pomiarowa + \item \textbf{Obiektywność} -- pomiary wykonywane na tym samym poziomie abstrakcji dla obu silników. + \item \textbf{Porównywalność} -- identyczne metryki i~format danych. + \item \textbf{Powtarzalność} -- standaryzowana procedura pomiarowa. \end{enumerate} diff --git a/latex/tex/wywiady-analiza.tex b/latex/tex/wywiady-analiza.tex index b86585d..10e85c4 100644 --- a/latex/tex/wywiady-analiza.tex +++ b/latex/tex/wywiady-analiza.tex @@ -10,14 +10,14 @@ W ramach badań jakościowych przeprowadzono osiem pogłębionych wywiadów z de Respondenci zostali dobrani według kryterium posiadania co najmniej rocznego doświadczenia amatorskiego lub profesjonalnego w jednym z badanych silników. Profil uczestników przedstawia się następująco: \begin{itemize} - \item \textbf{Respondent 1}: Około 6-10 lat doświadczenia amatorskiego w Unity, semestr zajęć z Unreal Engine, 10-20 projektów w Unity - \item \textbf{Respondent 2}: 7 lat doświadczenia amatorskiego w Unity, pół roku profesjonalnego, 15-20 projektów - \item \textbf{Respondent 3}: 1,5 roku amatorskiego doświadczenia w Unity, 4 projekty zakończone - \item \textbf{Respondent 4}: 2 lata profesjonalne w Unreal, 2 miesiące w Unity (z przerwami przez kilka lat), projekty w obu silnikach - \item \textbf{Respondent 5}: 9 lat doświadczenia zawodowego (od 2012 Unity amatorsko, od 2016 profesjonalnie; od 2019 Unreal profesjonalnie), 10-30 projektów w Unity, 5-6 w Unreal - \item \textbf{Respondent 6}: Dekada doświadczenia amatorskiego w Unity, kilka projektów game jamowych - \item \textbf{Respondent 7}: 9 lat hobbystycznego doświadczenia w Unity, 2 lata profesjonalnego; 1-1,5 roku amatorskiego w Unreal - \item \textbf{Respondent 8}: 2 lata amatorsko w Unity, 1,5 roku profesjonalnie + pół roku stażu w Unreal, kilkanaście projektów w obu silnikach + \item \textbf{Respondent 1}: Około 6-10 lat doświadczenia amatorskiego w Unity, semestr zajęć z Unreal Engine, 10-20 projektów w Unity. + \item \textbf{Respondent 2}: 7 lat doświadczenia amatorskiego w Unity, pół roku profesjonalnego, 15-20 projektów. + \item \textbf{Respondent 3}: 1,5 roku amatorskiego doświadczenia w Unity, 4 projekty zakończone. + \item \textbf{Respondent 4}: 2 lata profesjonalne w Unreal, 2 miesiące w Unity (z przerwami przez kilka lat), projekty w obu silnikach. + \item \textbf{Respondent 5}: 9 lat doświadczenia zawodowego (od 2012 Unity amatorsko, od 2016 profesjonalnie; od 2019 Unreal profesjonalnie), 10-30 projektów w Unity, 5-6 w Unreal. + \item \textbf{Respondent 6}: Dekada doświadczenia amatorskiego w Unity, kilka projektów game jamowych. + \item \textbf{Respondent 7}: 9 lat hobbystycznego doświadczenia w Unity, 2 lata profesjonalnego; 1-1,5 roku amatorskiego w Unreal. + \item \textbf{Respondent 8}: 2 lata amatorsko w Unity, 1,5 roku profesjonalnie + pół roku stażu w Unreal, kilkanaście projektów w obu silnikach. \end{itemize} @@ -46,7 +46,7 @@ Wybór Unreal Engine często był podyktowany specyfiką projektu lub wymaganiam W zakresie dokumentacji oficjalnej respondenci wyraźnie faworyzowali Unity. Dokumentacja tego silnika była opisywana jako dogłębna i szczegółowa -- praktycznie wszystkie klasy, metody i właściwości są dokładnie opisane, a dodatkowo często zawierają działające przykłady kodu, które można bezpośrednio skopiować i uruchomić w projekcie. Dokumentacja Unreal Engine była oceniana znacznie gorzej. Respondenci -\\ określali ją jako szkieletową lub wręcz nieistniejącą w~praktycznym +określali ją jako szkieletową lub wręcz nieistniejącą w~praktycznym sensie. Wiele stron dokumentacji zawiera jedynie nazwę funkcji i~nazwy parametrów, bez jakiegokolwiek opisu działania. Jeden z~respondentów porównał czytanie dokumentacji Unreal do przeglądania plików @@ -60,9 +60,9 @@ W przypadku materiałów nieoficjalnych (YouTube, blogi, fora) Unity również d Poradniki do Unreal Engine były oceniane jako: \begin{itemize} - \item Mniej liczne niż dla Unity - \item Często nieaktualne -- dotyczące starszych wersji silnika (np. Unreal 4), które mogą, ale nie muszą działać w nowszych wersjach - \item Zbyt skoncentrowane na systemie Blueprints kosztem programowania w C++ + \item Mniej liczne niż dla Unity. + \item Często nieaktualne -- dotyczące starszych wersji silnika (np. Unreal 4), które mogą, ale nie muszą działać w nowszych wersjach. + \item Zbyt skoncentrowane na systemie Blueprints kosztem programowania w C++. \end{itemize} @@ -79,7 +79,7 @@ Architektura Unity oparta na komponentach była oceniana pozytywnie pod względe Jednocześnie wskazywano na problemy wynikające z długu technologicznego Unity. Silnik jest bardzo monolityczny, z głęboką hierarchią dziedziczenia podstawowych konceptów. Niektóre obiekty bazowe zajmują tak dużo pamięci, że nie mieszczą się w pojedynczej linii cache procesora, co na współczesny hardware stanowi istotny problem wydajnościowy. -Architektura Unreal Engine wymusza bardziej uporządkowany \\ styl pracy. Respondenci zauważali, +Architektura Unreal Engine wymusza bardziej uporządkowany styl pracy. Respondenci zauważali, że nawet podstawowe projekty tworzone w Unreal mają tendencję do bycia lepiej zorganizowanymi, ponieważ silnik narzuca określoną strukturę. @@ -94,14 +94,14 @@ Respondenci zauważyli, że Unreal Engine jest wyraźnie zoptymalizowany pod gry Czas kompilacji w Unity był identyfikowany jako znaczący problem przy większych projektach. W miarę rozrastania się bazy kodu, czas potrzebny na rekompilację po każdej zmianie rośnie. -Unity oferuje mechanizm Assembly Definitions jako rozwiązanie tego \\ +Unity oferuje mechanizm Assembly Definitions jako rozwiązanie tego problemu. Bez podziału projektu na osobne assemblies każda zmiana w~kodzie powoduje rekompilację całego projektu. Podział na mniejsze moduły pozwala kompilować tylko zmienione fragmenty, znacząco skracając czas iteracji. Istotną różnicą między silnikami jest obsługa błędów krytycznych. W Unity gra uruchomiona w edytorze działa jako osobny proces -- gdy wystąpi błąd krytyczny, zamyka się tylko ten proces, a edytor pozostaje stabilny. W Unreal Engine silnik i gra działają jako jeden proces, więc crash w grze powoduje utratę całego edytora wraz z ewentualnymi niezapisanymi zmianami. -Ta różnica architekturalna ma istotne konsekwencje dla produktywności, \\ -szczególnie przy debugowaniu. Przy dużych projektach, gdzie uruchomienie \\ +Ta różnica architekturalna ma istotne konsekwencje dla produktywności, +szczególnie przy debugowaniu. Przy dużych projektach, gdzie uruchomienie silnika może trwać kilkanaście minut, każdy crash oznacza znaczną stratę czasu. @@ -113,8 +113,8 @@ Unreal Engine był krytykowany za problemy z kompatybilnością między wersjami Współpraca z systemem Git była oceniana lepiej dla Unity ze względu na tekstową serializację assetów. Pliki scen i prefabów w Unity są zapisywane w formacie YAML, co teoretycznie umożliwia ich mergowanie. Nowoczesne narzędzia (np. merge w Rider) potrafią automatycznie rozwiązywać niektóre konflikty na scenach. -Pliki binarne w Unreal Engine stanowią znaczące wyzwanie. Respondenci \\ -zwracali uwagę, że nawet pliki Blueprintów, które ewidentnie mają serializację \\ +Pliki binarne w Unreal Engine stanowią znaczące wyzwanie. Respondenci +zwracali uwagę, że nawet pliki Blueprintów, które ewidentnie mają serializację tekstową, są zapisywane na dysku jako binaria. To znacznie utrudnia współpracę wielu programistów nad tym samym projektem. @@ -131,27 +131,27 @@ Blueprinty w Unreal Engine były postrzegane jako skuteczne narzędzie ułatwiaj Jednocześnie integracja Blueprintów z kodem C++ nie jest idealna. Przejście między oboma systemami wymaga dodatkowej pracy, a wystawianie funkcji C++ do Blueprintów nie zawsze działa bezproblemowo. -Unity wymaga więcej pracy przy tworzeniu narzędzi dla osób \\ -nietechnicznych. Respondenci wskazywali, że w~Unreal Engine osoby \\ +Unity wymaga więcej pracy przy tworzeniu narzędzi dla osób +nietechnicznych. Respondenci wskazywali, że w~Unreal Engine osoby nietechniczne mają lepsze wsparcie ,,out of the box'', podczas gdy -w~Unity \\ zazwyczaj trzeba przeprowadzać szkolenia lub tworzyć -dedykowane \\ narzędzia edytorowe, aby umożliwić artystom +w~Unity zazwyczaj trzeba przeprowadzać szkolenia lub tworzyć +dedykowane narzędzia edytorowe, aby umożliwić artystom i~designerom samodzielną pracę. \subsection{Asset Store i zasoby zewnętrzne} \label{subsec:asset-store} -Asset Store Unity był oceniany jako lepiej zarządzany i bogatszy. \\ +Asset Store Unity był oceniany jako lepiej zarządzany i bogatszy. Respondenci wskazywali na silniejsze wsparcie społeczności i większe szanse na znalezienie potrzebnych zasobów. Interesującą obserwacją było to, że najlepsze produkty z Asset Store mają tendencję do -opuszczania platformy -- twórcy zakładają własne \\ strony internetowe po osiągnięciu określonego +opuszczania platformy -- twórcy zakładają własne strony internetowe po osiągnięciu określonego poziomu popularności. -Unreal Marketplace przeszedł niedawno transformację w~platformę Fab, \\ -co według respondentów pogorszyło doświadczenie użytkownika \\ +Unreal Marketplace przeszedł niedawno transformację w~platformę Fab, +co według respondentów pogorszyło doświadczenie użytkownika i~zwiększyło liczbę kroków potrzebnych do pobrania darmowych zasobów. @@ -162,7 +162,7 @@ Assety były rekomendowane głównie do prototypowania, nie do produkcji komercy Większość respondentów miała ograniczone doświadczenia -\\ z~wykorzystaniem AI w~pracy z~silnikami gier. Główna obserwacja +z~wykorzystaniem AI \\ w~pracy z~silnikami gier. Główna obserwacja dotyczyła niskiej jakości generowanego kodu -- naprawianie błędów w~kodzie wygenerowanym przez ChatGPT często zajmowało więcej czasu niż napisanie rozwiązania od podstaw. @@ -178,7 +178,7 @@ Pozytywne doświadczenia zgłoszono w zakresie generowania placeholderów grafic \label{subsec:optymalizacja} -Respondenci wskazywali, że Unity ma mniejszy narzut wydajnościowy niż \\ +Respondenci wskazywali, że Unity ma mniejszy narzut wydajnościowy niż Unreal dla prostych projektów. Czas ładowania projektów w~Unity jest znacznie krótszy, co respondenci przypisywali domyślnie niższym rozdzielczościom tekstur i~prostszym ustawieniom graficznym. @@ -191,8 +191,8 @@ Problem garbage collectora w Unity był wielokrotnie wspominany jako znany probl \label{subsec:przyszlosc} -Nowy system DOTS/ECS w Unity był oczekiwaną funkcjonalnością, \\ która w momencie przeprowadzania -wywiadów została już oficjalnie wydana. \\ System ten pozwala na pisanie wysoce wydajnego, +Nowy system DOTS/ECS w Unity był oczekiwaną funkcjonalnością, która w momencie przeprowadzania +wywiadów została już oficjalnie wydana. System ten pozwala na pisanie wysoce wydajnego, zorientowanego na dane kodu, kosztem większej złożoności programistycznej. @@ -201,13 +201,13 @@ Nowy system UI w Unity (UI Toolkit) był wskazywany jako obszar wymagający popr Część respondentów wyraziła zainteresowanie silnikiem Godot jako alternatywą dla Unity i Unreal. Główne przyczyny to: \begin{itemize} - \item Model licencyjny royalty-free (brak opłat od przychodów) - \item Otwarte źródła umożliwiające modyfikację silnika - \item Mniejsza złożoność ułatwiająca naukę - \item Kontrowersje związane z próbą zmiany modelu licencyjnego Unity w 2023 roku + \item Model licencyjny royalty-free (brak opłat od przychodów). + \item Otwarte źródła umożliwiające modyfikację silnika. + \item Mniejsza złożoność ułatwiająca naukę. + \item Kontrowersje związane z próbą zmiany modelu licencyjnego Unity w 2023 roku. \end{itemize} -Respondenci przewidywali, że jeśli Unity nie poprawi swojego wizerunku \\ +Respondenci przewidywali, że jeśli Unity nie poprawi swojego wizerunku i~oferty, Godot może w~przyszłości stać się poważną konkurencją w~segmencie gier indie. \newpage \subsection{Podsumowanie wyników badań jakościowych} @@ -216,28 +216,28 @@ i~oferty, Godot może w~przyszłości stać się poważną konkurencją w~segmen Na podstawie przeprowadzonych wywiadów można sformułować następujące wnioski: \begin{itemize} - \item Wysoka jakość oficjalnej dokumentacji - \item Bogaty ekosystem materiałów edukacyjnych - \item Niższy próg wejścia dla początkujących - \item Lepsza integracja z systemami kontroli wersji (tekstowa serializacja) - \item Przystępny język programowania (C\#) - \item Elastyczna architektura komponentowa - \item Mniejszy narzut wydajnościowy dla prostych projektów + \item Wysoka jakość oficjalnej dokumentacji. + \item Bogaty ekosystem materiałów edukacyjnych. + \item Niższy próg wejścia dla początkujących. + \item Lepsza integracja z systemami kontroli wersji (tekstowa serializacja). + \item Przystępny język programowania (C\#). + \item Elastyczna architektura komponentowa. + \item Mniejszy narzut wydajnościowy dla prostych projektów. \end{itemize} \begin{itemize} - \item Wymuszona struktura projektu promująca dobre praktyki - \item System Blueprints ułatwiający współpracę z osobami \\ nietechnicznymi - \item Więcej gotowych funkcjonalności ,,out of the box'' - \item Lepsze wsparcie dla projektów wysokobudżetowych (grafika, multiplayer) - \item Dostęp do kodu źródłowego silnika - \item Lepsza integracja z zewnętrznymi narzędziami graficznymi (np. Blender) + \item Wymuszona struktura projektu promująca dobre praktyki. + \item System Blueprints ułatwiający współpracę z osobami nietechnicznymi. + \item Więcej gotowych funkcjonalności ,,out of the box''. + \item Lepsze wsparcie dla projektów wysokobudżetowych (grafika, multiplayer). + \item Dostęp do kodu źródłowego silnika. + \item Lepsza integracja z zewnętrznymi narzędziami graficznymi (np. Blender). \end{itemize} \begin{itemize} - \item Trudności z mergowaniem assetów graficznych w systemach kontroli wersji - \item Poradniki koncentrujące się na implementacji kosztem dobrych praktyk - \item Problemy z kompatybilnością między wersjami silników + \item Trudności z mergowaniem assetów graficznych w systemach kontroli wersji. + \item Poradniki koncentrujące się na implementacji kosztem dobrych praktyk. + \item Problemy z kompatybilnością między wersjami silników. \end{itemize} Na podstawie wywiadów można zasugerować następujące kryteria wyboru silnika: @@ -263,6 +263,6 @@ Wymagania graficzne & Standardowe & Wysokie \\ \end{tabular} \end{table} -Wyniki badań jakościowych uzupełniają obiektywne testy wydajnościowe \\ -przedstawione w~rozdziale \ref{sec:testy-wydajnosci}, dostarczając \\ -kontekstu praktycznego użytkowania obu silników w~rzeczywistych \\ projektach. +Wyniki badań jakościowych uzupełniają obiektywne testy wydajnościowe +przedstawione w~rozdziale \ref{sec:testy-wydajnosci}, dostarczając +kontekstu praktycznego użytkowania obu silników w~rzeczywistych projektach. diff --git a/scripts/fix_item_dots.py b/scripts/fix_item_dots.py new file mode 100644 index 0000000..c958239 --- /dev/null +++ b/scripts/fix_item_dots.py @@ -0,0 +1,108 @@ +#!/usr/bin/env python3 +"""Add missing periods at the end of \\item entries in LaTeX files.""" +import re +import os + + +def process_file(filepath): + with open(filepath, 'r') as f: + lines = f.readlines() + + modified = False + in_lstlisting = False + + for i in range(len(lines)): + line = lines[i] + + # Track lstlisting/verbatim environments + if re.search(r'\\begin\{(lstlisting|verbatim)\}', line): + in_lstlisting = True + if re.search(r'\\end\{(lstlisting|verbatim)\}', line): + in_lstlisting = False + continue + if in_lstlisting: + continue + + # Check if this line is a boundary (start of next item or end of list) + is_boundary = ( + bool(re.match(r'\s*\\item\b', line)) or + bool(re.match(r'\s*\\end\{(itemize|enumerate|description)\}', line.strip())) + ) + + if not is_boundary: + continue + + # Find the previous non-empty line + j = i - 1 + while j >= 0 and lines[j].strip() == '': + j -= 1 + + if j < 0: + continue + + prev_stripped = lines[j].strip() + + if not prev_stripped: + continue + + # Skip structural/non-content lines + skip_patterns = [ + r'^\\begin\{', + r'^\\end\{', + r'^\\hline', + r'^\\label', + r'^%', + r'^\\centering', + r'^\\caption', + r'^\\\\$', # bare line break + r'^\\clearpage', + r'^\\newpage', + r'^\\raggedbottom', + r'^\\small$', + r'^\\footnotesize$', + r'^\\endgroup', + r'^\\begingroup', + ] + if any(re.match(p, prev_stripped) for p in skip_patterns): + continue + + last_char = prev_stripped[-1] + + if last_char not in '.?!': + lines[j] = lines[j].rstrip() + '.\n' + modified = True + display = prev_stripped[-70:] if len(prev_stripped) > 70 else prev_stripped + print(f" L{j+1}: {display} -> +dot") + + if modified: + with open(filepath, 'w') as f: + f.writelines(lines) + return True + return False + + +tex_dir = '/home/kuhy/praca_magisterska/latex/tex' +files = [ + '1-wstep.tex', + '2-przeglad-literatury.tex', + '3-silniki-gier.tex', + '4-metodologia.tex', + '5-testy-wydajnosci.tex', + '6-analiza-mozliwosci.tex', + '7-porownanie-wynikow.tex', + '8-podsumowanie.tex', + 'narzedzia-profilowania.tex', + 'implementacja-gry.tex', + 'wywiady-analiza.tex', +] + +changes = 0 +for f in files: + path = os.path.join(tex_dir, f) + print(f"\n=== {f} ===") + if process_file(path): + changes += 1 + else: + print(" No changes needed") + +print(f"\n\nModified {changes} files")

qrhT%H;A8 z6<^^G#F(PMwtw?hr$2f7k;LOjrneD+dCERjc=#qlg!o+bIFvL! zlvI2`xS>oQ@e*OH`l|Uj6rS2#B`VAlf7&5$Sx-{*%!9_N(@P^nua**L<5nGG5F zdS9GBz^K#9BPDNHnIH%4X(2)z@iBSS$FLH_bOl?Z?4wZ?g!&TcIFd&&668B(e+VVP z1R;}{e5my}lIcSlIG)eOtr=MaRHh>BX*rH$@`wh~i$nufl7jEqWhuViM+FWrVwheY z3{SKgLJQ<#Y|WD#)l3YJV6I@UzJNaxvJQ$FkVpJ1BcM!gui*SXf&hbA`(jL85m|Ty zl<5r?Rgj10_O8PwmWb4s;s`7}e?1n&w2Fd-j5Mm1YK#D*Be3M@u}B7C12+-&k*t74 zXbEG?MW)9BClb`SL@*asE9F7i(g-YN>ada!P6CRYn5g&b#0a&lLt*7lp7Z1|%u1_O z$mTgH;fXB)9DyNI!!S~!P)I})CY1OoWN_;8e}_@n+xiGaA5ipLtffTXe}dwLdkX`{ z&_B8P&;R_FvvEO1HGtxPbggz57w>NRzU)@pe%zNmW0w6}FBLa+KLk3?U#+{v>lP5* z{MCz>ZvLkIW$WI3IqO%=X*-)g$9U~(yRp?Ed)?-?>2~WyyXlvB`k(&Zo-CUmx?fx` zjaUSA8fVZYqPr3H}`!@F`4qHzM__5$Mwx1 zO&Rszn7*ml!UEr?h0g?kOC`j%#3m2YNlkZjQseK@$==2{__(do8Kif=*9U@&pZNeI zTiAkVO7H^e7oEJ=lBDtVd+Mjfa@+dw=hKU3M}gwD+nsg0+YV7_f1E?y?u%02`U(V6 zF!?ck32Y4>JgO_ENy?-8Mzydw4noYJW;6~%M5&sTN5zHDjqsMSM(|Rq^*8(c`5*89 zV=A>le!NV0?MOU9FPQ7|BR0(8PF%4S)d$5DTNoZ2SHA2!99O>9H*@XVQGJn@ZM}C? zU$9V(<1lbV-4^1wf4)lK`s462XjX;9NA-mqY|mm;U&x{4k$6$Z#xzcE33A9Z4lj}y z=xamp6l+3A9=}Arr{Z^(AwntbYzEGY7(~X!YuoXAI ziHQ&>?%BgQ4#^xJV~k}KU-Uhs-FuV9SNhu4hsHRnFO}q3$6+88d>ZSMkWpK8y&b7i zePE=beK58Sf6je-h){_R?agyOwE57=p)H42CndF#;F07?QsgmmY^s;+kkh>6G-QK| zv-NVb?XJ4rMF(~pOLyI_ub1t|2_2*;GCVmc+1|b@B+N;e`X8^Os8*?_H z{-l5}T!(;Nwwq1U?M{}4?W$dW=+?*!i;0tz+NvKCs6}B*QX0v&*FB{{aLxO5bJ=}d zE`EhFc`vzUyS$!Kr<6dB$WDjAi)+95RQod+L-)59**Un+tOQ`2c%sKX&W$2@MP&3L~+@ z(2AW|s@!juPy$#QBt-9<_2Sp&9Kh;5wr>fPf5W&c@zK`QIF~yqGv^1U%zQ|RnWs#7 z1dFw$<(mi&g1S#C2$V^VSnj6lPK+;~Elc$?4vOORHr&z0bZXX7vN6)eV5U6 z1rwKVTLBdVGdD1oVSWWDf3;d$lcUBJexF~Vhol1K6^7>SH+yfkE4C-QGv!q6?gJ8x z27y2sP!#Fc=Ulp*2BDpCQm(C9G0@$dK9}!&=QQqOvv3#hZ+^JD`Sx9qEGr=An1(c&&&e6oDUUdAG{UO#5GXFb`el~r)j7f<%me@m@X*Pp7)UJ4j; z?Dn7i$p7rRF^pKB?Z_&+1};xTl)bV4utQQ||{&C~VUApFOMF4C1 zj+Z7OZWk8y-EyrEfH2`ChiDL-gNkVUNw}WX_HXW4+Crn|m2pj>HrcvOY z-pn`;gcz-M&QWb{!hdR8X|+{obT=j=!P9PCG}43d&(Ch?zPCLA+gGOljZ{E$*Jvjg z;_={JI~7Dkp%aC{^Ah7g;faaJQiy%qm01q93lenbzz*PI&0?d6dDf9ORX6BpsdTiE zy#eO4^RAWlSEg^ImV8OYwv?O1i(W-FJk1M`T99TA_e zzH)ru%GLvP1mH%Smaj;x3@y?}q< zIB{zILP{i|g479Okj(MGe2kOICzq}xV5z0?>|CoI9}!|&l!k5KqYZHTa9jR7kb5+k zQ`Xy-^jSCNl$cNwX3apw(hnWi^I#9I6MGWE8TbeiPk+4o_Msq^(5to*dn?wCXJMf3 zYl+gH)hP&;(?eEshwEiBXQ4?mWrJlX4B!MW;4%52{dv3DWOGKk5(UI7fy3VLwOq)5 z^W7vPP4bwL7ow|KY-08SNz%lLBe948ae^dbNBe-W1Oa6=IY$I0=Vii1Z8o#04K{$3 z1p*@gM1M#Im@vqEp~KE))v%}9G>iSepj!tXqSF*!@RPDB?8vkJrcoy1)k%|iK_N`o z24IkV#{+(_J)g~9*8Q?nNcD=Jf~UaW<-hF^vSF9ieD{Mb3{b;`C)ler2FR7f0c-5G z+!wW8Uq&P*gL}LO`m}B(?jusv((e13;{Tx~?SJl69It>Q5$GVm$=uD^`pkd*i2J6u zZH6Il(5n!2(Qaj5Vxq2ol}P{F>R>JKS-3KH+P!E6yskvtpz* zM1P>9gzIgl0$)*9rL9t-M7EQ=x&^I2GSq-3{yAvVe}i`hqs#Hc9BoKO{}FG7!5sEV z`Pa4LN`3e**N5v`-;+n|C}D0n?ye{$FqF~(w=bkm{(^y3tTSF{q#aF&4>~Q zieT<=YDa1DB>j>R6}5^H&FR9_)T)+55r2ZPY&JGy1Na!t!R>6zKS^7ub;y~(zr=fv zt3$46$Vusr+=0AGstb@5@{*)ukOLU>CbYYfTii3^s$4+}nYlyrF3#~U(!w8$q5Gd+ zvi1C!na*+=g%j6wkar)7Z6`N&U~mZ&Cv|-QRXW3$)~H&GXt(QA!WhlslLKT&1m5gqONN`5H*UMgoAvKkR3qVTdV^yY6+S zt1(7SoNTY?J~DLwD{iU4>1&|6e2+2-UT_Tp&!7rh$>IYkdN-$_lGwY3zX2u8I42Ev zRKH-DYXI!ZVqLO&$xOR)j%R|Vz<;d1WSh~zHhsx9X*bLmAPeJ5eH9pSNDPFi$eAdU zn_8Nf5XUT#a<+TO;+3t+#i{#%oX2)JLIQcX-!c_Mf|dTG5A_`-MKFkoUWY= zPdlrcnyUUu;O`IHi=rP4dr}0olq~?c2Q#1_7#aCp6_99koe`1t60-m*Gk;!FV+ zQdr8vsmb*27rgr%2bJbEyAv<$rTmE5u$1ix%@-e`dQxc0P?@)t^f)fL$7+?eG-$_h zgXqP`!pxG%`BYa@QDdV}lGJq`mxfZEGJUPjS*L0;1GCqRV#iWv25H=95GEF&(coEx znbYh~s9981x5u^x*B@G;vVTvPUC^~-J6|?yFaV;x>g4nTXQA0XSXXe>kTKmnXHr!_ zd@<$MY%%0{V!Xe7J4t|cpzNIWPh=-j-s&JbNN7;cbJ7r2lEp}Defn5D!MjoTbMX%9 zi~P$=IH!0vUru!$B%$@YqCun(*<~RVHGGwK1?oeLsF{#Qh?{^y*?+dV=79+NKoVbL z6+!icY>>Uby_Z*1YwgO59>ur;WYW=T?8B;FdU@~5|I4s0{L=M^k9J+rvm_sF>cmhh zQ&l56$?Y=KS4C+K66CrV<)ls94~jnR1|J2rckN0k#VDqqn0|vZcH~&of}E!Ao-a?_ z|0y7Un}&@}vX5=g(0{@uZQXJL*3BhDBNFI*NCi==3!sefuuJ(i00^sNN5S#IID zLiLhEcy+oEVd#Wu%mwqk?WY99Y+dR!fIGakeY(5B)&||_Wzz^Q&8oBFTe3}r59eA+ zE#*si3Y%P}BjBW$dGXLzK`TSx$X0dHVe);&11sv|vZNa+3|6>hH>iMx;Khb>4S1h& zX?RRz0u-d$Cx7Xr^DBHP0utHUBvh;p63(j9$gsMF)+$z(7c1^6_nO(W!*OyOwMx#K zn}JY~N>Pz2foIMyhz5q_Y!TUNo{NXxC4Zta-o4;Y4$FYYA-QZgVwc-%r}HBf`wM>G!3@zN54E^eALKoi5a7Vet1hBjW0636L8b)ioBr#28-v)z~n5^`WhNeBO8SV8m! zRs4!pAN*D>DJbcME?1_M6?-MPcAD}$7P*nR5$0}`WDq~SK3&Nq=D~n+4u3rS#zCD5 z{~cNE0mF~`wjj->*3H(0irzI8aN%&^wNMevzk?dPP~v&&|a@G zuH{Fgq?w;0{`eGsCJU=`oM?i4kPoAQs>#nLB-g}r2p&MbK2SB0$aGXG{xvjwjZ?-1 zeJM=M?l7Hpi z3=@Uj7cDHa4>k2mH*(x0m>dp`2y8Z-b?mar{Pg7htvV->_FT6{_l=J7{;bZ^FT{T7 z(3dx;L-$I~J}N-Zb;fUGVPwYE<%bvidBDXtHsC+9JjJgK6vos;3syeOTQw>_7$?v= z=8g>#jz6Jbr4K0znaZ2_qn(Pr0z&D@k?WbSBtjN8H;Z#KMUES61Fkpv!!Y^X#6H_i zRk$8E=t8FTL)c^6IrihlQY4T{Wk&~igE{E!-OYai<=`x0mr*qa6PH!R1r`D}HJ4$2 z1t@>DTT6G_HWuFdSLmGCkf&pm0Qk%9YhlSR@6Eip1JiBwH#bfjND_W?kl zM7j1@*~Aoy$Hm2W-#5`{I*LYbFMhhY`0-6#jASH=BF{!Q-$p9eqDYESR!ET*>F8!M z`VwdnUS=u@uI|cE1`lBolrwl(RS)5%EP{V+x7yCi@KV8$O}G52Q~foHG8i%5g=tWA z4Lok)X?(|nx_aK!GaR?U7ilns0d)n7!Qy}3{BrU0&Bb3A5@?J@a+D_`(m+w3iXx3i zxYZh;x5E z%927vY0l^Us!~OC*qMi1`f{0Q6?_a;9IPJTVC|yflg*GLQLx+MSvFx7RD8fSa{?Jr z<0s_fKlxL)gJJx6iYx)vn8hY@!_?&i3~6!Rl=u%jl#9AsISwYlZ577B&dh7+THq9M z7{f!i!KrmQ8N+O*qqf(@G+e=lAAWzpBNImp!}+2RN&;_U;8ChaHw)m+bvr3nvo_Rt zK3KNp6+VS=6f{g-5me=zU$@^7BYCjC$FYVP9RMbzUou$Wra!*P57>*e{S?Y1n8Uy| z&y~mrSc@3g;0hg2j*lj%aCnvSZku|C6V^zQ3>b>=Aq#+{BoDquG74jOAO?TZz0C}n zFmz@RzFh53yyef!Hk2yZ(W`P^!fGl`c)1iF%JG)?DMh3XfULC06Upps;39OSg4L!q z(Bb>3@U;$z=5}gfGpqSE!+l2SbwsN#|}^W}gkQ6`kmnJFdR^NO!Z(nT1o zXEBRS5+IiE0DN(7fDRAi1G(9u8ftmF2((9*0K7G5H#K)QMOJ@VCBe_3CRR^t$8b;|#4f@w9j3@d%rMFyfsy&PbBeaB548;= zlw=f-!+Hca?poyPrfjy0+JMAhIL<_pr%&FTlt*o~w6x%Zhi>c}BHkwTj0-HQ#yce7 z)qx#6FrNT-P-Z!7EOU`Y=}G&U57^HSWGb2on~1uZo>J$DQ|Et4@C{{c)$+~R6Yxp9 zm6g|BW7s~m{tBK5^?B*|j(a43ndI)fcbxvnGtX?6{%Fu;^Lc7!H&Bv%0~GV4zl-Ur2h_QwH^O@4{pYtQ@MnX zF`3yt&%mVLcE*3ZTR)=mK=rTKNaZ|^MVIcW#~aqE3%lIB9N(KS;zL|kEvJa477OpE9a~kwerF8a=Lf=>?SMw z4W`nHKjAua_IS|3X2#vYg*!x^0o%WR@I<0?Jq`9Ww17`0~&YB5k# zT1l=H9oU6dk7H=e9stN^FHEiXt|t*lG02$J`jPV_698F!>^o`WJF&T79jOTK+WH4s zLT4voW7tOp|EfacF;(b5waehz^h)FUQGK+to;`@NZS=&P)Q^-CZhi_;O!3a?7 zbGx?8WgJ=fVjw_9!9}1nXR?o>>TcFrLqS-Zlg3;U$hukWZTHlGl;l}a zK5=HdvMe!SA047yc#`%k^VqEn`xnlS@BsFXj{n~5RAvT99C$^y{Yggh)<$;I|zg-@OGLX)E zadDmmpN)|2Wv_HOkTl?{1k|E`Jg**lP^N!@<(!#6>>9s)|LI3e9=-q61Msq3@D=Vu z9x&k?bbJSJx*Nlz%&OJWVuWl}b$DIfYz`Rq;{bL~y7tx&hwNGGVrz&C&AGk<>aJUp zTkzc6Jg{_Hd&PMil_oZk5Hal(pH7V8G0GTIHm&dSm*0c;q^oMuRlX-Y85Z|y)-8W2 zYn*c$VnKezs+{`~cei9W5DdroC>MIy8lA)b*}N?$CsLWm7Wv2oybm>CpOaIRRA`*q zi3)=#q~Z=EI&ha(ts6r=RMS^Lhn`KO(-?P7l_+!qMmQBRHn6w}3pW3^)~?Tup@$n0 zzA3k>e4$LpdrG<3d>X64(xr@NtfGHyqIYkW$;HEz+1`bzth?)SxAki4#bzgxx~K=i zO>{ZQV?Er<-bHYp22ZDlxQV!r-Clukv0)6PMIij~NcJ_(<~1h{{VcW|_~ z1_XhSo@HyD79s*c7}%SynUwx94RNkTlKemC9{>Y7$Jq=e;R)f=b+30qDRfBDAa2e< zn#E0zwhvwui`?o{)-6na2a7vo#FyHARQ$c5p&x&54)OSUU$L7Hd8sZ^^S>*sJ*i{T0pyjLi+QySINpm#u9o2nbJt z?i@5a(Dk^5B%tYb@s%Zt60(CtIWRq&ssS*;8sG}Q5KM^#?w<=xNh)Gx*rTo=0nRyg zwZQQ=}3It+(r(=q@DSR;9k@#vg}-N zzy=QM>ivp|fOhi4C~|-M2zJgvqQ#C+;T5`}18H2prDa^7q|d_Y9OOAz`Sei;Rv9)m z+egs!Y!U|01ZyNOc9mrzvU9o0p!G#;9mThX4ZV1@SKOvLVC#xK^u}hHrw0Q){imsF|qAt z@OuuaasKY8%|xrhvZLdIibC z-r?iyoS$;{^YZ(y7?r^NM)}kGV*HZhvYlY_Q%}DSH+HrA`YgA#_{BS~Vmp&XX6=<@Q#;2fdX}r7f-at?-DXiFA+4RS{7AMKsTSb+gew#-ESA3yENeqy!l5!YF%KqauKnsI0g%5uPv7|>zA zR*%ELxGXZ7@V=aR;K_L-=d-eWq+}H6y(KiG)3rRu74x@EZ5HE+8N=g&%7UEXZXCsV zzz|)UMyhzPuxv11uC^PmWfmbwtD01NcDmQwF{yv$fv#1R7n`jIwOtg8s4#7@EWAVI zU#$J6N5x;S4QpsZHaJ08utou^iPh>k- z15`Zc-WUwEHyBtWT)2iHXDsxgv1rP^u9JRIdSlFi3L5jVY`_o<836^l#e##yWw0?< z_FO_5W4!Fvu zI3tt8g2w*<&^I^;mr*qa6PJEw`gx$entdHSZ88HvzytCmt29aqv z+$VoJxtB5riE;_GsD}=gGpx#I78;s;*X&Sk!VN8+K%l9?7#RPy`Lg=7S^c+C;GzuF z$)iF?MyEm9uI|3cpn|h60s5_ji6q+~O-z*Ju-pg#uKrm`7p44pw1tdR9tU}5BB=|G zRz>84*ZTOmxKL4%jGbpDjq+T-YPX>Mcc_12h(e3LdclAQsCnvofKc4WIt|mL5JR|5 zl>60y6Tpxg@f~CbUQTm`+KBfSb&Gd&!Q1P&?$)s}AQS75R=257L%Z$Gd=-q;=nT=7Dp;BU*a2NBr<&#~H8v`gT{(`z?V+Vg+ zll&STrwm@fnZ{9?X@;|_ksCeIBo`giZ>=QTeHmZ)U}CSds6fDO@vmbwWgJql7|Ny( z6A99}AhNOPREirmb8tFjrd;g6+bC9H%yA)ZVg2C)vv%U+uV|q=hOrd2-8+W}vDTuh zbz6XS2Hr>|!!#>IT_O@&HhZAJATEDf&S8;xhwQ#4kkl1IaTXP6!U!$)z<5$VT^Y7^ zH_WZwckr90e5r;79j7ios4&vSkVkMFoO0eFKIb(MtW_FmnZj2`TE$!_@%x2>t82%l ziQ+`D<9~*k=m+v)oo4RpJcFy1IK096*mFLndI8>jANV^Q2+XbBHw#jPez<>p-mVQu zo~sSO9`XlRG~>*em-U{wh3v=Ui9bwc=w^i0uHjuIV#qqTnc1`QJbp+P+ zPfgu=%4*KOJSV6xNqh5F-nEGVeb;Dyq+NEF*RrPU9uY+sil!Kv>pYWU=XshrM|~A= z4=cA8U3)%B;H7OthwXbzNlt$Q4c?gB;-Vev>pXof6}kMMq=!HI)>?$wH>ih*2%X#2bGWWVUgaGOvW= zd4Uu|Sx2S^>*bsc?s6GB*$^@7C#D&;W7|1J-Z~AG=DK+;_B697iNV@LIShQLLEv1* zT>G73+LP4cI6Yp4T}?Qw_&Jioa|C7gC)=+t6OinO@f1$!?d|#&J2o{6NHv6^xS(IB z3d8e2k0n0`U)X7=kj#HvRmkKA=IQxV`i3){%|NcVeiErvtOTpo{8~sah zxn?T!4uB_*D_d@Tbl#b&rW7y+^vs~UIhlnN(N&|8QH)v0bQTX~g@60$3n6%i{tt?Q zr;C?SH3k!xjMoJf12Z%=mtlSdD1WtDOON9=629kG_$Xo9iue+#$5f8}$f>g+kMv*v)pEWgmmqFI4ZqO{p3S?S!AF6-#Y7KLec zCA4mzJ1tS1K9_iqynl*I9iQ`g4M(Zq2=M9=W{BVqTpOFUi%ooGyd!K6qt}gJ9G(T0;+i+q(pW9QKtdFi zC9SO5D@wb^_j{DLB?Y0brODQ$c0cR~jvy%NOQ3S379?Q>yERKM8h^|UFRxHyH`3Zj z%%xXSw`pnWl~;d8t2fIR`iVXvtL(Jdcbi?5>CYU_-37tUv@6a_pTlBx);4<@{xw&A zbRM)K617w{d>YovdV_OYT%o}CW%hF}Br6Ing+mK(&ZgTm{5ywzyb8Ply>W5epLO9C z3xj-UiKnHJ-PxP;Mt{aN8EWzi%{ie>`qTLtJ(N8wm0wv|xZ3ywXi?DtKmze_rZ#eV z)EoM0Sx>xQO0ZE+VtJ1RTgzZ;5o}Fvh+c%QYS*a1mpThVj*J4 z48d4KFm9gwq5uUhm=u;2U{dP}tqm>dBX!kmyZiU)zGHkQW~2>+I(*%`*w! z`T#^lznuI*aDTKR1b@yYU^@;UJ?>yoMBwkv1Yz$&cmtocOy3d;e{0tkTCdYXYtH{MVO3VKws zbZ~f^^~>nY?V9JW*s}+K8sU@Fa8{=ZRn{CyZ-8oWmVXA*fW~ZxXZH@0q0)EcO6!n) zOy*JTvY;O^Ykh7{+rDe|U5LWb8&~=uM_hFg`f1A>J;lsANm%d*A|iV9jw}uIpumS! z_6K6D-y7^8_m4c-R8>*cj1rdt8{pul^LSNnj3gnWj!)<2O13f?8qm0qWnISEsB6Gm z=8$!V2Y<)QG)6Rqeg6Z>7)jChzex?UszTJxc#j3}1Jgko1c);fEnqsCyya3iFT<&Y zkVUP`%xG7Xb#!!0Y_G--F)8sVf<9(H&=LOwDhb49lC4Zu&2bD)>3{8mcbz$@KVU;h z_9gsDiNPr4vp52`FXz&KM1}(1xdrf!UdD&2c=0JQdDA=Qg3|F^ zfKLOOz0W=Hn@SHUbm6M%&OQ3XFCe_+8-7t|mOyIXoaxIuINS(s@C|$fh%+|3BMrG| zc7L$BAtk%)h>9e_i!kW*yStDy0~7@aI^~@GdMYT!FbZow-MIkdC|yGtU^FR57>}`u zO)Uk&VArqOO&Is>c5^bZn|46OwHVtCAqwr*lEGA_-ZYr^(I+^RR3+sWuRQqSYo@6o zYO?2;{IESStOF-+XzGy>8 zcm`#aWuc*r^ORB!3GnOcwyCkogt`UzVN^|96%1)l;uR$na?0>-F zca*>botvZx*i<|{3aXb0P%=F>Q!;=o`EP@S>4|4f>mhrDK@P?!gVc(-yJh9G+|D=mnY2_4E1k^>; zj7((AF&`w?{1KA_ti7U7S$gJB<9{#9J~^qwaZ*Yz$0$y#vKQfG;a8k1Mr;3m3N@UF zamy=B3DFRM3dhWxj_ZF6^FsVFA^0XdQjk}Sb??NZN33qL!aG= z2^zU~NL&&5T42rWkm?a%QxviKaS~wKrXnOXu`EtGlFHW2p?wH03Q}MlsDI10IZ#M& z$?!Mffk|b6yr7JF4}G$47{C%9xP&y@>`T9(-q7hB%Ap4Z;CoGFQ#v&feV>PtPWClYdx9k4PK*h*lw0>USU{?fMV;m=I_+wu+_}PZJsnQ8A{J zg@kGn6{FpQ=GZ7 zC~5_udVcAN<8_lpoDEdZVk7QA(R}E!7g%xcIW+zkG23H@>M~~R0~w4L8C;AVH-QF* ziprx)C=rJ9Ve67!A@o8gn0FrOH66`LS6PpaSqEB z1eu|wh-$`?3}1}>LR8+a37u)`)HeH}86Blp!WJ4pRD$a%Ba(1SXO>D%4|;3IaF5nG zGvxz>AkQ2c!caC0II%r>ja0#*s*F>CkDAT$ws_G0ve~*P7JoTS#J*{75`)OHPz(!) z7UqfAQ^lwt3b6^TxBjk`KfXig7)%MXe2!p1P~aM};-}-1frh#;t82KLiG4v{@^UA? zGR~U<4`9OyCf5_gOk32Yn;dnxo!HSOAVdnOYs1jExD1EJ3C-Qz4kI;oJa6|cU%J1L zr7CQ=s`G14Zhzcv(|b$mIdlEBZPPV{!kZZI!cqg4KLGtmiN-(-PPb;U@4Jxqm^TJQJzol%_7nQT%YCQvJbb;sCR=-7 zp-QEetsuwf*o_#KWuzWh0}lA7hM>3Gf!$5;anBy{@S z685iOyQQ~AwAZFP(>*c((`SI7OOZMlr$S-N!e|D$-%$hYs_P@$O`6Q%=2R)e1Txr@`vv|qH#QP={5!0Roj zD*mEv&&}aHT$rUd*K8xC3WBk>-|>xU1OhQ!#AN=iDkgDoz~dyd3O!vo8*o0~_Su*HBszi6I3xUHne~&H5ZBbO=SuNjKq9t_UlG z6oUo*=%l*9f#b-xCt6(lKhQL<1dX%9P2ZMo9_lJh>o~Mx*MiJGG-Nve&@k7;X@6u- z`c8VI@1bcPS)dm^65HTB!;7Rr((?8)LHrjMa!Amlb16VQVJ#laDf@afVh_zi?LAh& zR}!}=+0Wn$A3T<#9H72SM4oaXDK~t6zbFz{|L>J%Pm%n9UqP;n*OJ8Vu_xjGXx43p z=6CpSnP0POu1(5%cKyD+2L*U=7%Bfl=nK8)r8*F*xRT-~_KRj(T8McdInoub=C+cs zlS#jR`0oF{eykOjQ8fk=m-yoa6a+IlGBuZBeg!ChomyLO>&6j&_pcDp7YeZ%a=EpQny?ozU2^u?mdjEd4El$*Ox6nx$COKSg7yrEb^)7mQNpTn{ z>ApzAC@B|tT82?pEFO2Ty5E+%49>WKC!GF&D^Kt9U-)-}4{+JtzzbT#^|vU>X{mjK z|H>0+n&$8le8AfyS^}&7P?;BD>(f)St8woTtw{MMd8EzL})u!rPR_EnsLOm@Y1ftMG8)77m(Rs-A1H&#}v zFpCAYh9`y%Y^M@{La=O@q$NXtHf%&pj~=2>YlT1dnSt)73RYPJh{L``j3?jpMR{4E z06cdPq)|FG%hdt7A4lEBdz8XnoCO|UqzAG$1l!tV2*NqeC3y+%D83WVU_8sSFp5&P z$KRJKfwgo80dd?uiVlSlP+kYT3NEMDWy!u#aaQB|$CKIO^&HZnqx-9W>8L`3V;3}^ z1hN**$L@gNG6~Zn^=E!*c-YV1eTNqqw)6KAm4{KTKQKa~vM@{3Yy=7?NHk)Q6aR36 zA?u@o&<1$>3j}(Gn|De&*o- zSv)BPfF(87m03>BK!HwwydK!D*1+EY?)i#H>OcKj6x z7{76q5Az6MvOaeQ_DPOIXgKa0n|skGFtH}3n+o_{LdQ+RxfjzmzfL}KeBys>{-Zc( zF(utjxf!I~G?nOodnL|wHpavaR+)k1lCZi=h!DWti8$4434V#-G}Al-;<(jistSPO z+|OsCvNF_#qN$Ye4ajgCM%te;`D^B+4UXZ?@Z`+U2eHLwo{7m_&3w;5GMHL!_^wB# z=A@06non zC(>lrY^zy+9*PN|kKC{qj6Qk!3i|2B%iPttC3B0_yU48oW$*WMvzAh~V`%dfA5C+G(wTZ=lR~p6+f`(GT_dgY$7!WPM!JyF8Sl&q>u~aR}`F_;x?LskDQBfx>Srh5ugsQYf>aK-{&A! zh|e&^X?WSIWo)3@N&(`}Ir?+ocJjpV8p+1?4Js{ZMy623otKAPin1(W6rUODQ2iy% zTN(E{An-+jbZ%p~XFi2E<@76JLsM%+P#KwjFA>Y_JtzYq(shozZT998G5s3_I(ac&B@>gTSDXWDgQFo_(97vs;jwfJ8$)^-LL~o z<0o<$mKIBQLwOs?>!{QSwk+v49S?(0d9?OOX9h|0P-TKh^~E|lL6Yb8A!m@U=qpXl zlC9Oc4I#iu^fd>hrBsli23d}O7_Tz=Ztff}9I7db@`zJnU?~Bmqa;CjAbyt&h;8c2@076*VQg zW=6&p7$jo<~Y;Nt)P&QK%*+RFgnz_BS+L);Wv- zaB97mRbVaeBiXJExz}ItRra54v*VMu1W=x3TqUAzO*y}la(BRgy}q9>9y}gw9{;(O zupz|D%t{T9yqYV4vrLZ#rirkeBTO-#Zlo+o7J+oRZsb$zGWcKbV;*_+W$^YSi^rOr-c1S38?Wgr*H4mNb(3ibXO zUBB8*s6gtSIO|+j01g+HdG6>6+Lzyny40P(q39dFxZx;&_rMYdv=6S;m*_QR&E-R; zgMTl9uB(Of{_B;wJNwz;x|&f-v! zDdI3mvg-hMT1H`B=DyJ`;yz|#JGcHY2tGNY*69M~8zz|`#L4Al1EU3NZCAS7RI^RR zua*KNx&CHDh{kql2#UD4+^{U>L@& zT6N8N6d0x@ce2=Sdz@+wD-N;tnI(?E^hyOBOtTipW0C=#KzhpjLQ*JxeUVRHrgNv6 zlfLbFSlcl}c7tc}mBfA3cwIGxv6m z+Q}gy9|x7%6y7Q=!!j#;d;Nml2xX}~kypNax%#l=|1G^`Lrm#inU79TPWvl;?Pb2x z`u-;fG+-%VjI|BPqAG`J7h#4c!(=3tso6WelKT5YnyBD!K&JSkA{@zR?PlcZBZ(pl zlRW-^u;_9laZEbq;r#w$9sq$$RmwJ~53a}25y~RWGqs3Q>_-ZR&zK32YDCT%!gw&W z)J-c~i62>owHxLheAk1kI9{J5$P0X|{yJW4rSu|NF`bW(8&iOop{?*5QBLUh7R0U& zSiQ5UIMD1zQeVZl6f^+fVSW8!jf=v@aQJn9U?hB?+BPH)(a4_Tt>ev=03`RqGp7NFuA397#0JoKtT5iDK9_VXYw?%I7Kd1kR!-QB^pVi^J1# zva^j63+CE}B_vr|-1N<%_E~NLHE}LpZFiRv@MeA{%C0HjYqq;RR!WX$hGd%u6Ls?7 zQ{j{qu&JrtW=t1P=Fn%VE%rQ-&XVtc&fd@GpLVfCXba#dn|~BYKlaT0yyWlZUPO&0 z`Ea(S-N^jn>R9?(zLpxpeS1G&{QF!OSbt}kz5C_v&3cy+!hSB-RhNpY2YXf^l*xQ+ z<8GF7nl`T@T~KgID1N>TY_~M!Y+QIvzdYXk4|weKj|ydOWOH(f#$;4aTe8Dqj8V<;S;|AAU}&m5QUPDvQtKecRk|0RyaVi+X2q@FiAp zn8OcRXA&ISEj)d%QKmzG;XYhvC5xq56||wMf>)N^fJ_^vY=T5gw8y_Nn1Yv*JPlKj zKM&nJAWfu#^Mv;L#+Tj5H~Vq8(4aIi2wko`cKt0(;$Zu31|g~bGTKp5>&Yxm#!KeA zcm98>&vk>lv083KnnY=qv!%X)N@J)%T$F?nVjjmj22KN$z~bhARc>X=`?0yAOhhx$ z2FYwy6(vfqz{#RA)jZo9xQi@#!1r~qVGru@zchFs546HFuK5o7Y^R~!@$@*`34b>2 z-c_aqWjuSQ!5QUvVDaMD2laGZMJ4!Nk>pVlC#>I>I95+3(`>PlsdY4RHYG`O@v}4| z3tsx`etCNv$}VMpb1dN)IGDQwcV5nEyzpW`y#&X~+$l(8s=MRbXkMm^4Tl9JT1jXe z+G9(eH-=iVBf}u6abfte#W4$*mRy1thK`F!a2ROeW$^Vn^!SKkphb^;KbMr^*ZhyF07AKl4@} zS$>X3+8Mwxd2pg9djNtf#o7-)mp&q{))d#;;5#CGT2#R&j)jUg@}0ur0>~EhxCf-_ zH?%-pkPqg33dJJOLvm85`--tP-f> z=t7Pjt~EIIuc598e7eh>?~Eq^$8`~0NJ0mLT>J5OB79`eu5thI{w4&=Q67-Jm66A7 z>tM99_MHfb&ink%q^(k=TwwGAm5lC>Y*XBp|G3$?&OUs6XE z?xVYciDzJEU1*H{XMDb3RM9~*b-dUX5+&dApky4rBk!d2Ot9~WFW~-4zJ3y)SqTu% z3J)EBrEx?l6x4v}5V$eepybH0YhTAvnkIO$&!$0O{|IRhrxXVU{E*KIAfAYS2Wa_U5HQ+i@H1vkzVB|a8*zzAQRlw4 z{DyOujFafZIs^RV%nwMpfjoETdra1buBU9|5kUiRnxY;rjUdIM~i1C(x zmf$r(!9nMM#XT%@Ou+c|#Bb~*Dqv?ThtqDx-b=|96WAoMd{aoh$3mC%8DD5f7h>_wl0AX+1fIxr0oYblk z^++XW$pR$e)L+0Pj&wrZu#}qj3t+*<*z3b+8b*n~YhJC(D1Vq&mhQ(}3@VT@&tfU6 zo*pd1&zH*b05@3=Fa@*wZY>5j-?PM_8@lc(UISIAfKQN~TZ+02=aEsMbpn>iKRHH%Heg04e#s$mnyVet zNaDms1;vj0C4$PaDM>;9`%#cj%HSEPWaE<@a3W#)R{aS@l4ldoe(nyGbcsjSV#MoK zR33Z7)jU>m7zdA3rMB5H*Rr%le@-d0)};%MFid1v^`bUPff1yY0N&>iNbx+X6Y07j z!}J#}&(<#IoyP6o`o#fXWtTPIQzM7WZ}z30S_NR1u|d zPOs$pNvF(_1VIC-Juej zkJ!#|>}I^IAo7zXP7oUoKn*fV`7hMEGL4aS>kgB_O7`b zMW2B*l;L?UAniGdWj8*ZxBZsZc9fX&sNgF)`^M??pP#iEvpI-7e>86i<-O(wH3a9L zu=3GPV;W7RUG`xgqZET&B_S*aQ&kCpR?%o_Ts-OE&XNVt-ol@EVm{(?Yx_!)K;Fpp zcMP5=X5aqc(gS_S!*GvC8LV>G4N`r=O)ma$(YL$X2ZL>Ox`thA3H0 z;e+^<7r|RtRl;{%v~ueZkRsmNnh1s=f5zYc`pi#ne0fHE;Wl@r$)xb2GjhgG#YXNA zGL=NKEaM_~zd#)E0L+>p+b|Qi&3O=->h(u;K^6D`|dy+a{=*8fGmgwhAna>Hiw*d&l9R-+4!p0lSHX9R4L# z$d56vmN}hQ7-u@v+dWQRGNzTeV46+l@L+>IuDdjLL85CsP8=ufsDSb}3;Cs>V9n3y z#*9Kfe+uxbNW>v3ww+O$Lex8%ECm<4#qmdfhUm$py=Ssz?t5dRfhktP{Mg?ZvU_uW zBj+4t@EfNqfVqc)ik`ExDp(cgOmgK~T&#HRm|)R*K4C5FDfX*jef4>!Z8nEFxoTq* zYbpJvTrv=DZHIgMblQ{9!M=X5Octk+))|~Q+)*{h8W77oHJM(J{nHsxd~=ZZ|7sc} z;?yvBHx6eOWq0mJqqy03_3fp~B2roEdZvklYs5NrMDA?J5Q zI)EB_XWbwJtPiKQcD5%QC`^jO^*D6Ge+uSvB^>@J3d`o)`L1))d#evM-}GSFO@M3s ze1rK~PJ9jKn_HUw_$=@gz<-rgUgXUjceLC;3%)XN?T${bqfCQW`_Yvp1k0+-w7k!~ z^i!W^XgTXMsFvXe03yG4j_)2bm_jI0QvCcKGZ^!P3vzs2`F)+dl9t3`ER|M~e~J|i zmKRTYC9@#Z`dQ`A3LI$bW~+HJIw{GGH^Fu{)P@2YEbM^3N&`W+7APT_&*%x)oeZ;? zkIB5j4BLS5dSQ7Nd)Ow2R}l~K8;kj$E8v5j>D$5YE4L;-Di##LbP-E@GFLjzj#4wH zzVSsqZF3uN(lIWQV1Y&Qru4y(f90P?o4g9`9jCB>R6R)Ok@$%m7ffeqGjzj<%R9y7YmM+g$nF-5?tPC1xYer*zgrW#yE_R3e^3{uHv}^ROAlb3CG?H@2qh zdwv%|zU+J-g*$9aWUF&Bp$FHQYQa$Wg+%7e!!q_eElC$KZWp%iIMhn%EU>Wl@ zQ(iIt z#KlU5K~dz{>h*1vg+Y=(hUp6wni{6ds?a z=_W+_jCP#3E#DS|M~ znWa~t1&Co%-jQsiWfj5FD1wu8Qt-mhVW?<->Lm=~IKm%0ckP;uY*D`ZQRr=c2l+H8 zixD2`{di)YNn{-i$?8^qn*rDLBTm&UuRRW!2(|UXNRLTzgQh)ha*h9!;-!_ z;WWNIvNk%|sPH~VY3#=;_XZf+G|$YA&Vww`s~439sfw7P;R;*fS@>ITQ7o49Mvgvz zzQai9T`xwz>(jRPb?BYT&TxMUc(66iAY9^WSU73d!xmkUPz)K zgykQ#8PW4d44`_>uw9&smf&H-yYHKS!@d-onUq*~!^ZH{Hr;6yc7Y}mXr48k+cZyYr&f=H{?YYQa)?8l+kk$2VTM^O}epZwVCwnlB%d17zv!{!%%;5fto zwYO&pU&hPcnCOL9GBfdHN9#k~nmPX2_wBJHe_GQyhld`8LP!=uh&>E+!1Ba1UzK~QPc;)kmm=+OOW6nYuj&78wI6fd5Vafq{*q25{91Y5Y_`S2U z%Htr96WY4SGTz#n%VJ?1Mspf}$dKVYk{+4LvERUnNn}_qn90rLU+@A25b|4yj+SEl z=|NkH-*L_T(0BFDECjiM%!JcnQVTtiUxwB%9R}h!4RreFjK*;i6u{tJMu+{$M0T_$ z#gd*mZvo7TQAZ2)Whq4o+7Tp>vHI2~pVn<@BNDi@*4oBAe?he98jW9BdWXQwK?+ijv%>oxO}+0%6DSV?V<4xW5!}>1#W6g8RB;f(84Qd^#1E*{ z<2%Wj+_PY8f#BxYlg5z|ip@;p9J@KzDcK>(VazD-m%$!_2eJ)fkPw?{oB`(_toEje|Y9K8}W#-?rj<^7J)d4 zGx(Lz&XiBu0v85MFPopHJYqLdu?q4qhF$UiL~xr)W-E0X&Ck1X?IhKbl_KXz2_9{Y zZnkwZ3`iV^f@B!*l7FDTu+w151>+j5z;cg@Gz+??bW8}uJ^6E(gxwMHiqSV7oq5~Z z30pb95;5q1s(yzz6u*1yM=ouE`3Uuy8hxf>oQvp^Xca_B%5o@AW8aoHGEW>Z!7^GR ztE3Kcix<=xyEf6iq zM6EUwmSQ@20aL_CHhF|(5kZsMS;=<+W-`O(%M}}cb36&`de@K=ft(PCXE2hhpgTCTNIU!)jS^QTEBw~zG+9*(+qnMHT*JvgOI=tpIjiIhHnumlP zd!{%V*%sK@afE#S+yKj?2u14h-F;EtkEAZRe}Ma9WZoc2n}qh59!FNL8`&X$l+RpJ zVUW~+g&Xl{_-Yh+8!KV9lT{U)wqneRBRlinzUP5;)1j?qQ*H~G^;f?ryxuuYER2N& zgQt<+Bgt1zc7#bS)yGkkK*`@gsLcY~@os`1DKMVy1&$apT0Te4ThmDzMyKJ_l@%Mx zcxgpzWosTM$i3s}V8KAJ)STc92rPjzIOBVNinz!uhLC1zwczg26h9)a2x~5pDWY=} zgPEiC{ifyd6gZ@)gt(aoW2_Iz@{L*Jrb3z5~?R$=gR zKlF@t9vLpg>qP7pVED+u_y&f&L>cxnZZw-^B#E-U{{}_b#Y-TWXMU4)rIecm+&!*; zB^x7bbT6o%co%6>Bx**P^2GO;4zUZw8D(`f)ZLakxM3wPaZFva5zZU{CU<3xP{vjo+7KVEtbcoH>evp~M(VaEMi2X?;|a@Cv6RsZHc@WD)0(03%Jp$dtY< znw^z8NC9%s#0D%UQ|IIKpsAxFJ7lqxTt6b><2>_b+B@7;Hu`7yr64|Y-dpp3Khz8| z(2k2}RpiJeCF%>W>Pr6YE9{KA#dj2jCTv~&JVh_Wh1<%skQ!OEClM}K(HdKh5%3ZP zP;fqOu4tVDKA!W;4M^B}c1^%s3Hc}62Pq2MIm1UP(+K!pIF=j57#YKJ3g@K>D6$Z` zY$Js%xti>wfm9i=G2E@=*h)x$2~=yAb;VE6%4U3S~3DL2ck z?Yw`IdZpQf??uLXZ(A(OC^rjKtZ^i%yAQ{{s(KgT)mmR+X)GOS1(Ye6@@bQ zU70jLexW|aqdo?;I(l5vulZgJ{)f~=_(A{xqD#s|-KA|l*5QaiLy^IZGnmVOtuw8K zkT8G-_pv5B=?sVOmKQj|jdI7FFFbzihta7X@e-(XUfWS3z$fsQ5mOT?j)IE`sW<6% z7De#Y6FDv(BX#f%s@U9rL(`Z-qXa^&!GdR#%#R;{nh>R^8w5YS(Ux}IT$J`Z4QyCj zFN#}_h4&LfC4(NQfds?nhB!NwhpyhDWOOd=Z39uA1Vn{K$uDyM-saKrV8d#W%-uB7 zDRmWy4t+LOB|Zkg{e4kxT`2sZ5o>?iUscx)P<&XQc9h9 zvsi_ZU7eZbvjpU>j3KAb_vN0<^X=*=p?3KP_Kg79MbUg;lr9zxgtJo;six?#US12K z`De!bGq037UQ9>r?NKu?uX_ zE-_0bn0k4!E6P*&afyL`{kk`wK@5{(@E)vjzbt9Xt*om0imqejDpv@^z~)*iz};LL zKdFHNXGigWg4(7p8d5U7lSz>K%}(N}l^~tXW0H+2wB2nw-7#4ONvkjbbY31M=K5^7 z`kDCxWJ;K&!J5)#q;Pz+*VWPi=IDCUsFY7S7|k_Kvy-I(a-DWQ&#tPm=ycGXDI)HC z{9%)Lzbr>jP807@FIwbmzh&tMl;Qeu|8bG5ZR1>ja<);ST*aw*m(!vJ$UE*`vpJ_6#Tk%%V&tW1L>&Hpc9{8?x7 zU~PGjYpR(rj`CrX@s-a}7-M3Qt8nVK5!QH<-W!r2o2&uhVue359S*%Np znU}+V1nR5HovyhUFJ+UtabHMm%7AOACQnxz|hC5dkRb81+QY<#CXB;|OF8};8C!ro)@353k9X0$s%>aJe zuy2VIiW&(N?&-%rU~=!U?lM=Jz<7g2V}n&b3CI%D6OhGzE#BjsRz`i8e_a%NGeru_ zpM6|JHyij(q4^pRgqf%y1I+glLN=YCt?1jqb0%ZZKNyR?+Imm+wBk{No2xtl}sviac9=`m)lo3bR#K#9>yXt55an z_rQefO{S9ILtn1r;IQ7rL3=OP8wG7w{O?A8f7`PDtW$mE7k7N5LET)}Y0w;oQ}eox zqo6#t{C?L$!yli1e);~>%l}?t5GPv2t2_xKU97S^4U5#Qs^iP=e?+Sq-u=8n8PnC3 zdLCCs7opDJ=VA5h%fDZu`HpgLM|RGn2%|K&TgqWmCM$vu>rEPru&=Q>gJe+={JK_u zCOAXO01_8L!>uSb$bUx_jKg*vC&5jc)){n)gKG~nCc)<@j@Bkif(GY!#nHjNZ*Z?m zUB@PjGqc(#9i~yjl6@FamMZkT2l^mJM2o7WW3+j zg$Y93FrArRoNb(kIc)X_oBhukl+%nSRJIkeZu*LMrc}=MHFnTY-X~Kl5AqrZl>BpS z4?T&GBG8e{CcqV7H?UgO%8T(dke)<8xaQr;fWj2PXO)_@fgfWf%UPk|nG|w=(n%gP z-AJQTyXXiC8tHcy^d&#tf$VD7 zj?F7+>snU+AlGLy%7Gis1E@8Bc>f@q0vF9yLBbWeX5nC5{IsVAC-Sy&Z)QfZ7mFr~ zv?r4Vr&str)R*pjbH{>XK43qF0BD>b04E{4k@3g!jZL1Lnepxy_Q751;n_i_Dd1A9 zcnibnLef@XK&?RR$$~EW>-ozh)ds{7AN&k|xHn2oHjg&I7B7A7WhVxIU)H>fxlaq6 zV~=v|$ty_dt4*ASDawcFG_v`D3N4bfY&TA#zG1!TD7ad+qumM~jqP&bo!}VgNfZXY zTUl(o$hgkJUz}UN1UEYjeX|=TH4W<+{IDI47v8c17W{F+9|y#={0%2(Z?ULM`_{Z~ z23$4-^j}=?pX*p5sANHZ*PN$A62v8uW{%26SX*c|=+kw1?T6{uUe`rHz&b7tnLKOK zPj2VGPP^o_ahAo{rvrajqv38RFWfxabT!yzoaCa#9dALv;xvfq+LKOUY7{5SS3M|O^m|=5V9nBdwJzAKcBg#c*B_!5D(b+ z`)T@;@Kx4--V50IVXk%Y1bktf@%_=cg#@J?XIXTfb4ELH@@0Coi9y@O#H)=qVUio0 zAQh4z{kBeEcsDT1yWeQZl3f+@B0zOOgiCcNr`~f)1f&2nqC>kAKGgnY`XjmKZz%pF z*rGixg9VBw|H6;T4@rxRViB2+4md0$5}G0EbHHMMZF%UMza6qlhpVY?-X_b!LdD{y zIBy{?$6Aggu#9IGq&ae*4?nrS_&Bkwl~{w0>|B%yb&_cp1hE`L!F*yc0&4wHcJ4f( zmpp35=)WxD6ta*UvwNUflSe(Es!3yr!#QhaN2+Yd=3OKs zjS%O5(~*LBj<~KPEd&_bs7P_Lz$TT6Igh|jTL!KqomrW!Uf^`{fcfujBTY9;Wtx5| z6x#mn$WzZr-j{ z0Eepq+4Pjvd0=AmJ(ynaJfB4djf8yazo5Q`V|yILG|=SK%xEO8*!Y=(I(kej%I#&! za+pX7^*Ro9a}es~rN0Hcfhd(p;FOMAoM!TCLzf)L%~ntx51cq;ZLJwLXzWp&g5yAn zC?Iwd8LLF_vA9_2!i0Gu7;_cy@*v%RC7(`E9gNOKCa0$t-QnT|3NP_B0l(dH-`Vn%EhCz!hI@ zu&O0%;Dv7NN+irkBM%PmJ5&viEbwi^Zkg zq$&mxOJr;X0()I&1;WzH6llnl|7MTj$CimQzf4p$Ux!28ym~yBhf`$q_~FLkjaeLv zNl<58g1kW*MQ8xa0z}WF3AOEiO3C+>j;H$aQPNE29q@)o3{647LCU!$H%f_MOI2y; zd=VnlJ+UR6V-C?g)zET*SI4t}jhJW(8+>vG56*4ot)w>|>l7uqQP*<2l<-hj3+kdF z9vMqrIOm)vt*nMDCFj3Dja3h}g-W0r0>4ExfI`=KunPfOQ2#>=C`*^O6wc+jk0hgfDO z(K0Q8cbu2}3ne?9Z%5KeduO6rdbc&#TWt-I^ZEg6VytjYDTG$?Z>m7bZ%k7D>e>Q0 z1eh$F<+VHrsFS7?AdgOe-X>YvCs~3#(|ylb%C1KtO~;AZ?!|j7F`Jc>u#kEdj)><` zm;3&){OQotCx%L^u*l+XmiY~CuXIWUd?7Eo5b}ah$0b!w+=qU+fIpr+`%#hu@0(66 zJj9N8vb6ZjPc78YLi54o6*!1`lD zl4Vx3XJsesXfow(;Vwpav^#NG09c)b^+WY6od^4qLGD7KBf4{Wvx%XGA!Kq?QuL(^c2-0-<>a=B5G@@qIvm)M-n`nl_^lf$d?vLL}zUHMS~2(`9J@}8cP z#imJ&k{;NOYxz8 z%3XE?2Aq(8$Nk0+p#q%)RLRDN*jZ!Ia&Bifwm>)HJx_on*5IW!a{{>cDy#GBsq1j? zn;|Akptd+0t1!y{W)a!p2VNIWwcW6sN&gZElVs%%-0j zaB>)b7q@sj;hxIGKEy!hdU*-Wg({a-&dbSKvEMe=bz(oK5(ZEx^i=Hd5kFhFS%onL zsPNk(TJAztf2pVvd2A;}B=2{4e$cRM-pU6d^Z@g=T;;$9usmRU_qd#ct{H&;!6doP z9wVLCF*5#Y_S25jWdDQQD3(v^KQ@`ZT>V0Sym6n8AhejjmPI8QaG}_jr94bEHInLH zR_&tXRkfuHiTK$0W`Qv^CrxYJtuwI67a{))y6j*aW__r7GoV$x3-6bbr@Eu8kio z+D{E#lt}QCNfWP340)2krHZ}2-+y}fKLlm&dY4f(1{0TRA_f)#GM9lO1}lF{mz%f} z-uqXugmYpd2_(VY-I+;pX6DQ@omDam+0Y%Z4Lyy0e9W((dPo?Y?o9687y+fC>Z_`+ zN*2*WB%*h#@9tKw-{xf`MOv1HjqdIvD^hJ$WJ{Ua(nNPv^fAuUWNnp>|J%7l#`|O~ z<7RZpTEVk3-d*Uoan+~HWM_YVG2+F*ue+aCZ|+uq zuO!$bB8i_bjEQVv($eJ7_OSZ+mxwBO_fv#Mn&?cDhbYg=G_$bWNAFjEti;PM!K$z~ z`gNHKQ$%+MaIXWWYINWM7VZc?7rY~%I=VCQ_A^>t#ueQ6@S==ADU*LExh&!#@v`9m zc1$ekl8ObiL>;vC6Trc%M@9mH3HstkTvYw0Yhb&|1icwaZL-#|TS$@Qu&8$p3k=7w zcj%K0Y;aw3;#d9yyUCXwe;Dr_?w9cvmfoip?=iAF-raB7dV9p!M7LqdRhnzVus!zu zz6lsTq$vOTZLvf?T4#SM)jA7#BqgL$Zj1Q$1b}%WAjiuvf`(5*Sn$SrU^5HAuE8z7 zH3}?VD^bQnv+tT+NHlnWa7aV~oMQOFlLpanEKs45HAM+fsrLvQWFxB}tC#sA!A_e+ zfK94Pw*1!walxPSh4Xs249EI_>pcDeKkysI;4Xo{zkmG(AAElg-+9l%z9c>*xrn>Q zM+IMO5_o(;*IA+m4-AGF%!em=&T%)e@bz{Nn@<7t-L~yJx9^@$$}J+3>!3o%?iB@f z9UPP39AIt#G@Imv#BG|v@Yrgx)<6}5t#LR4C}5BO27VSKQ} zE3(p2A`@pUbKmGZ6@{ma_Y^mu0g?-=X032vKy6?mj10rxu~6r)j{(KOU5(((!dl)Y z9$yjcYPseFhk%WKURS>}EyS_TT3d>XV z&vj%no90%t@8>{DHjon3+-{%@XeaLHf+hn{A@Hp(?aN`ymSO9ITZ^=Y;@|r20jXv= ztPe@Z*F!TLiK|1}k)JJsat&(kJu7r7vNAFXqpR4nQ03BBc}Z0s(4=CwP{gqQk=JLI z`hc;S)ir;zwH6;ps6b8-Dh9G7A|@$#E&1h=0E+lL?A*xh$8}eIt=si1&~Jv(J$YfO zq=Tcrh0y0^DE5K~eS2ZS$3C>2OH%6i#S|BLs(h6HOduudf!b16)m`8d^!hU6h#O7P zh!he9H5uWHWs3BTTm}O3PmWxe{wtKR)yQP!FXFg-se#o~wp&Q?{XiLT;d@RN ztVlvO&|Eu1cl)Eka^JoqOYtHTC9@ z{qeqkX!!dw6>1qVUDy**al(SvMe84zxS$xJ?FKxW-`Fffasym(=YQmh8 zC{TZdNdkJWHUWP__`~jg=r{d=*CWfL6TpAhK6K`(2=;VS^YB~Fd^w(b&ZjjqTg_t( zD07d~xVdv^e#`ms3`1#);7kk!S~j6w)9@yJ($66D44{G6bLklXdUk=XXt8j1;Smln z{uUNEm4GzBRARaG=p~fPyqlt*T25tCQfYtkXoq+^*1(OjAug}Ix@!QhodPrs1S5_? z4Pgn7-hs_HKOXtk^M%IlgWA?uEc3}$X?UO@G3|9%&C`7QA37(53IFw5Fg}u5Dody$gnyReyltP$}A(7fPceb1iy`2p#E zllb87cqp8vdW!MUKdhc{{4qnrAleElt9NY7#1C$>AH3r2^82AgOw zu0m#lv8My~a5&VY+GuLx#aCu8|89Te%JqX@dpnD6>o8bW*#Fd2;kua36)eLuzxz5W zc<4%{x|wUgIT4^jn!4q-;T<3OOoIMdok~%D^Vs>~`~u_=xC9nk53o;>=^XhbSdR0j zbEn-Lp#l*4Iw%(Uld=C7CO=bg%m>V=5Qt%)hPIx~d*|hG15PZXo7KAiKOlb`8Hf)y z&z*5{R(ELJj0+A}q^IYr^xFB2ry=CZ<7IY!F|iUTtTMi%fnay?$Dvf&C3}S7C$PCc z_ss40M;;DXb@7va!zV0>|4qPD`K{xwrxAp6kuCe?)+_wXjC`->2R$3|rYQ<4=iJ{+ zM{wF{$n-CU9R@>ZsVLQwVZ48`{+>6n0Yy&d5u|u(KB#H>JHzvxXO5ywOD$g}j%-OB z_2Sfg!`~p{6y`jQTP|Q=-VnmtQ`Lz*#zh^UK}q`@5gt%hX|kpQcId+<$fi<9_VK zDf8nra_)2IlPi617W2@3Rc9V^*WQe|xx%<=~ji9IbG@xRE;i@g_r zxy8EK7LOha+-y_Q`m%%@f8YOl_wN4ge|HST2^{7mp&y9UiId1rBk3$Qcc16Dc(a6- zq)6O$0k=wcO8|S~^%u0msUP4fNwihc)aOh%v50&bg9aPW;17IWIU#npP2TQcqio*` z%oBGDcOFqJ@CCSF`{>0ky*116PE*4V4sfyfLfbs!%ftnffP^EF1jv$-NC~)qL5cJb z1Z?t$68;(qf2_6S?dRqZjkD?C;g~G1%_)t^Wa=(R4iq>8O=lsj1uXDnn4-2!>DuAN z3Vtc|Y6KVAqOg?14U~zRwkrRn;AepI^Ls8qUg5Je3DE%tk}L>70Z^62ei93k7+Ab28UnTAz9v7}Mgu|r|Rs|4>Fx7h)V9vmQm6GFs{o1iT zD%g|2+eg%3X}B#?79aU)QEETtYkje8&`Zd7GBm)GuCiP;V6tBd!DSbkV#bA^#_>1# z@860EFfK?zC9EX$*UEEC#SbZov+94NsXKJZ+302B?8vPYW$YA@P#Uld_1LbgTMt1P zpaoQPA_ulR%{_W^1Dth#N#YGcz@zLXAo9UuyeC9-xnh#oFiA2nNv+YavY94^^-w=q z8MG)$g*&}1(OO#3+8_mO@#cri)w<5n@4Q*$u7MU6q6mrPV*UE;(c=MNtyKP~b{z?- z)^v6Pq2XfN)P-`e@ze`Q`#V^yE{oMD>S_>imXhGzPGbty$+J~|-8>0EojNrY_F<@8 z0BNn=jq;kcvLZC@G*Rupu3+LvL3pu(W6IxjEu~old5RrCeW#qj0^^0PmJV*80&6o$ zY$FmeJk-pUgNy!A+_=)j4eFLJ5lkOFco$_h1uLBtUSo`{JK`SDHMR(+B?eN9I$dNt zs#r4bR6%K2QaO2l-)_-i`YEmA!j9h9=ΪLu_yp5wbVlpdh)lOZ32x33F|p0iY8 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