\clearpage
\section{Przegląd literatury i istniejących rozwiązań}

W tym rozdziale przedstawiono historię rozwoju silników, ich klasyfikację, aktualny stan badań oraz najnowsze trendy technologiczne.

\subsection{Historia rozwoju silników gier}
Silniki gier ewoluowały znacząco od prostych bibliotek graficznych 
lat 80. i 90. XX wieku po współczesne, kompleksowe środowiska 
deweloperskie \cite{gregory2018game}. Wczesne biblioteki, takie 
jak Allegro (1990), OpenGL (1992), DirectX (1995) czy SDL (1998), 
dostarczały podstawowe funkcje graficzne i obsługę wejścia, 
lecz nie oferowały zintegrowanych narzędzi do tworzenia gier. 
Według Ullmann \cite{ullmann2022game}, współczesne silniki 
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
,,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
wykorzystanie komponentów.

Pierwsze silniki gier były ściśle powiązane z konkretnym sprzętem 
i grami, jak np. silniki do gier id Software (Doom, Quake). 
Według Gregory'ego \cite{gregory2018game}, przełomem było 
zrozumienie, że oddzielenie logiki gry od podstawowej 
infrastruktury technicznej pozwala na tworzenie bardziej 
uniwersalnych rozwiązań. Przełomem było wprowadzenie pierwszych 
uniwersalnych silników, które mogły być adaptowane do różnych 
rodzajów gier. Dzisiejsze silniki oferują zintegrowane środowiska 
deweloperskie z edytorami wizualnymi, systemami skryptowymi i 
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,
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.
\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.

\textbf{Silniki komercyjne vs. open source}
Analiza literatury pokazuje wyraźne różnice między rozwiązaniami komercyjnymi a otwartymi. Christopoulou i Xinogalos \cite{christopoulou2017overview} wskazują, że silniki komercyjne jak Unity czy Unreal Engine oferują lepsze wsparcie techniczne i dokumentację, podczas gdy rozwiązania open source zapewniają większą elastyczność i kontrolę nad kodem źródłowym.

Sharif i Ameen \cite{sharif2021game} podkreślają, że wybór między rozwiązaniem komercyjnym a open source zależy głównie od budżetu projektu i wymagań dotyczących dostosowania silnika do specyficznych potrzeb.

\textbf{Silniki specjalistyczne vs. uniwersalne}
Pavkov \cite{pavkov2017comparison} przedstawiają podział na silniki
dedykowane konkretnym gatunkom gier (np.~silniki do gier strategicznych 
czasu rzeczywistego) oraz rozwiązania uniwersalne mogące obsługiwać
różnorodne typy gier. Silniki specjalistyczne oferują zoptymalizowane 
funkcjonalności dla określonego zastosowania, podczas gdy uniwersalne
zapewniają większą wszechstronność kosztem specjalizacji.

\textbf{Aktualny stan badań}

\textbf{Badania wydajności}
Messaoudi \cite{messaoudi2017performance} przeprowadzili kompleksową analizę wydajności silnika Unity na urządzeniach mobilnych i stacjonarnych, koncentrując się na zużyciu CPU i optymalizacji logiki gry. Ich badania pokazują znaczące różnice w wydajności między platformami mobilnymi a desktop.

Abramowicz i Borczuk \cite{abramowicz2024comparative} porównali wydajność Unity i Unreal Engine w grach 3D, skupiając się na renderowaniu, systemach fizyki i zarządzaniu pamięcią. Wyniki wskazują na przewagę Unreal Engine w renderowaniu zaawansowanej grafiki 3D, podczas gdy Unity wykazuje lepszą wydajność na urządzeniach o ograniczonych zasobach.

\textbf{Metodologie porównawcze}
Pattrasitidecha \cite{pattrasitidecha2014comparison} 
opracował macierz porównawczą dla silników gier mobilnych 3D, 
definiując kryteria selekcji i kluczowe aspekty oceny. 

Vohera \cite{vohera2021game} przedstawili architekturę silników gier i przeprowadzili studium porównawcze Unity, GameMaker, Unreal Engine i CryEngine, koncentrując się na parametrach wydajności, funkcjonalności i łatwości użycia.

\textbf{Specjalizowane zastosowania}
Marks \cite{marks2008evaluation} oceniali silniki gier pod kątem zastosowań w symulacjach medycznych i szkoleniach klinicznych, wprowadzając specyficzne kryteria oceny dla aplikacji edukacyjnych.

Ali i Usman \cite{ali2016framework} opracowali framework do selekcji 
silników gier dla zastosowań w gamifikacji i serious games, 
uwzględniając specyficzne wymagania tych dziedzin.

\textbf{Badania społeczności i ekosystemu}
Barczak i Woźniak \cite{barczak2019comparative} przeprowadzili kompleksowe studium porównawcze silników gier, analizując nie tylko aspekty techniczne, ale również dostępność zasobów edukacyjnych, aktywność społeczności i długoterminowe wsparcie.
\newpage
\textbf{Motywacja i cel pracy}

Przegląd literatury pokazuje, że istnieje wiele badań porównawczych
silników gier, jednak większość z nich koncentruje się na wybranych
aspektach, takich jak wydajność renderowania, łatwość użycia czy
wsparcie dla konkretnych platform. Niniejsza praca wpisuje się w ten
nurt, przeprowadzając praktyczne porównanie silników Unity i Unreal
Engine pod kątem wydajności w wybranych scenariuszach testowych.

\textbf{Trendy technologiczne}
Ostatnie badania wskazują na rosnące znaczenie technologii ray tracing,
sztucznej inteligencji w grach oraz wsparcia dla rzeczywistości wirtualnej i rozszerzonej. Masood et al. \cite{masood2022high} analizują wykorzystanie silników gier do wysokowydajnego renderowania terenu GPU, pokazując nowe kierunki rozwoju technologii renderowania.

Badania Firat. \cite{firat2022sound} dotyczące przestrzennego dźwięku 3D w silnikach gier wskazują na rosnące znaczenie immersyjnych doświadczeń audio jako czynnika różnicującego poszczególne rozwiązania.

% Bibliografia zawiera odniesienia do kluczowych publikacji naukowych,
% dokumentacji technicznej oraz raportów branżowych
