mirror of
https://github.com/kuhyx/praca_magisterska.git
synced 2026-07-04 13:23:05 +02:00
feat: more sources, couple of fixes to first 3 chapters
This commit is contained in:
parent
f520165b9f
commit
df493f986f
@ -218,6 +218,63 @@
|
|||||||
pages = {1181--1195}
|
pages = {1181--1195}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
% Unity History and Wikipedia
|
||||||
|
@misc{unity_wikipedia,
|
||||||
|
author = {{Wikipedia}},
|
||||||
|
title = {Unity (game engine)},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://en.wikipedia.org/wiki/Unity_(game_engine)}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{unity_components_docs,
|
||||||
|
author = {{Unity Technologies}},
|
||||||
|
title = {Introduction to components},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://docs.unity3d.com/Manual/Components.html}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{unity_gameobject_docs,
|
||||||
|
author = {{Unity Technologies}},
|
||||||
|
title = {Introduction to GameObjects},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://docs.unity3d.com/6000.3/Documentation/Manual/GameObjects.html}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{unity_animation_docs,
|
||||||
|
author = {{Unity Technologies}},
|
||||||
|
title = {Animation State Machines},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://docs.unity3d.com/Manual/AnimationStateMachines.html}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{unity_ugui_docs,
|
||||||
|
author = {{Unity Technologies}},
|
||||||
|
title = {Unity UI (uGUI)},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://docs.unity3d.com/Packages/com.unity.ugui@1.0/manual/index.html}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{unity_uitoolkit_docs,
|
||||||
|
author = {{Unity Technologies}},
|
||||||
|
title = {UI Toolkit},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://docs.unity3d.com/Manual/UIElements.html}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{unity_netcode_docs,
|
||||||
|
author = {{Unity Technologies}},
|
||||||
|
title = {Netcode for GameObjects},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://docs-multiplayer.unity3d.com/netcode/current/about/}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{unity_audio_docs,
|
||||||
|
author = {{Unity Technologies}},
|
||||||
|
title = {Audio Overview},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://docs.unity3d.com/Manual/AudioOverview.html}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
% Unity Documentation and Official Sources
|
% Unity Documentation and Official Sources
|
||||||
@misc{unity_urp_docs,
|
@misc{unity_urp_docs,
|
||||||
author = {{Unity Technologies}},
|
author = {{Unity Technologies}},
|
||||||
@ -399,6 +456,50 @@
|
|||||||
year = {2024}
|
year = {2024}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@online{glau2021touhou,
|
||||||
|
author = {Vanessa Glau},
|
||||||
|
title = {Why Touhou Project is the most beloved},
|
||||||
|
year = {2021},
|
||||||
|
url = {https://vanessaglau.substack.com/p/why-touhou-project-is-the-most-beloved},
|
||||||
|
note = {Accessed: 2026-01-24}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{unreal_wikipedia,
|
||||||
|
author = {{Wikipedia contributors}},
|
||||||
|
title = {Unreal Engine --- Wikipedia{,} The Free Encyclopedia},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://en.wikipedia.org/wiki/Unreal_Engine}},
|
||||||
|
year = {2026},
|
||||||
|
note = {Accessed: 2026-01-24}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{unreal_blueprints,
|
||||||
|
author = {{Epic Games}},
|
||||||
|
title = {BluePrints Visual Scripting in Unreal Engine},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://docs.unrealengine.com/5.3/en-US/blueprint-visual-scripting-in-unreal-engine/}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{unreal_sequencer,
|
||||||
|
author = {{Epic Games}},
|
||||||
|
title = {Sequencer in Unreal Engine},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://docs.unrealengine.com/5.3/en-US/working-with-sequencer-in-unreal-engine/}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{unreal_livecoding,
|
||||||
|
author = {{Epic Games}},
|
||||||
|
title = {Live Coding in Unreal Engine},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://docs.unrealengine.com/5.3/en-US/live-coding-in-unreal-engine/}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{unreal_docs,
|
||||||
|
author = {{Epic Games}},
|
||||||
|
title = {Unreal Engine Documentation},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://docs.unrealengine.com/}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
@misc{unreal_insights,
|
@misc{unreal_insights,
|
||||||
author = {{Epic Games}},
|
author = {{Epic Games}},
|
||||||
title = {Unreal Insights},
|
title = {Unreal Insights},
|
||||||
@ -423,3 +524,25 @@
|
|||||||
year = {2014},
|
year = {2014},
|
||||||
pages = {757--759}
|
pages = {757--759}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
% Market Statistics and Industry Reports
|
||||||
|
@misc{vgi2025engines,
|
||||||
|
author = {{Video Game Insights}},
|
||||||
|
title = {The Big Game Engine Report of 2025},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://app.sensortower.com/vgi/assets/reports/The_Big_Game_Engines_Report_of_2025.pdf}},
|
||||||
|
year = {2025}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{g2gameengines,
|
||||||
|
author = {{G2}},
|
||||||
|
title = {27 Game Engine Statistics About the Rise of Gaming},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://learn.g2.com/game-engine-statistics}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{creativebloq2024unreal,
|
||||||
|
author = {{Creative Bloq}},
|
||||||
|
title = {Steam data shows the meteoric rise of Unreal Engine for game development},
|
||||||
|
howpublished = {Dostęp zdalny: \url{https://www.creativebloq.com/3d/video-game-design/unreal-engine-dominates-as-the-most-successful-game-engine-data-reveals}},
|
||||||
|
year = {2024}
|
||||||
|
}
|
||||||
|
|||||||
10
latex/komentarze_do_wersji/komentarz_wersja_1.txt
Normal file
10
latex/komentarze_do_wersji/komentarz_wersja_1.txt
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
W tekście występują ostrzeżenia
|
||||||
|
,,Overfull hbox'' (przekroczenie marginesu). objawiają się one drobnym przekroczeniem marginesu w tekście (na przykład w streszczeniu
|
||||||
|
two-
|
||||||
|
rzeniem
|
||||||
|
(kreska przy two- przekracza margines)
|
||||||
|
Próbowałem różnych rozwiązań: ręczne dzielenie wyrazów, \texttt{\textbackslash mbox},
|
||||||
|
\texttt{\textbackslash linebreak}, pakiet \texttt{microtype},
|
||||||
|
\texttt{\textbackslash hyphenation\{\}} --- niestety żadne nie rozwiązuje
|
||||||
|
problemu
|
||||||
|
Czy to będzie problem przy ocenie pracy?
|
||||||
@ -1,2 +1,2 @@
|
|||||||
\contentsline {subsection}{\hspace *{-1.1em}1.\hspace *{0.5em} Nazwa załącznika 1}{86}{section*.131}%
|
\contentsline {subsection}{\hspace *{-1.1em}1.\hspace *{0.5em} Nazwa załącznika 1}{87}{section*.131}%
|
||||||
\contentsline {subsection}{\hspace *{-1.1em}2.\hspace *{0.5em} Nazwa załącznika 2}{88}{section*.133}%
|
\contentsline {subsection}{\hspace *{-1.1em}2.\hspace *{0.5em} Nazwa załącznika 2}{89}{section*.133}%
|
||||||
|
|||||||
@ -517,6 +517,569 @@
|
|||||||
\field{pages}{1181\bibrangedash 1195}
|
\field{pages}{1181\bibrangedash 1195}
|
||||||
\range{pages}{15}
|
\range{pages}{15}
|
||||||
\endentry
|
\endentry
|
||||||
|
\entry{petridis2012benchmarking}{inproceedings}{}{}
|
||||||
|
\name{author}{4}{}{%
|
||||||
|
{{hash=f1851bd2dbc041a126299dcde1f0a744}{%
|
||||||
|
family={Petridis},
|
||||||
|
familyi={P\bibinitperiod},
|
||||||
|
given={P.},
|
||||||
|
giveni={P\bibinitperiod}}}%
|
||||||
|
{{hash=f1cfebd83f192750ed5ced388fd917a6}{%
|
||||||
|
family={Dunwell},
|
||||||
|
familyi={D\bibinitperiod},
|
||||||
|
given={I.},
|
||||||
|
giveni={I\bibinitperiod}}}%
|
||||||
|
{{hash=53b4f8e563d66b5b48bde099de64a971}{%
|
||||||
|
family={De\bibnamedelima Freitas},
|
||||||
|
familyi={D\bibinitperiod\bibinitdelim F\bibinitperiod},
|
||||||
|
given={S.},
|
||||||
|
giveni={S\bibinitperiod}}}%
|
||||||
|
{{hash=702fca0e9138167f448104f52bdaa6dd}{%
|
||||||
|
family={Panzoli},
|
||||||
|
familyi={P\bibinitperiod},
|
||||||
|
given={D.},
|
||||||
|
giveni={D\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\list{publisher}{1}{%
|
||||||
|
{IEEE}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{50bb79040aac027b30c1955f14bca5d6}
|
||||||
|
\strng{fullhash}{a15b577b15958f2e299a1c4fb8e1546f}
|
||||||
|
\strng{fullhashraw}{a15b577b15958f2e299a1c4fb8e1546f}
|
||||||
|
\strng{bibnamehash}{a15b577b15958f2e299a1c4fb8e1546f}
|
||||||
|
\strng{authorbibnamehash}{a15b577b15958f2e299a1c4fb8e1546f}
|
||||||
|
\strng{authornamehash}{50bb79040aac027b30c1955f14bca5d6}
|
||||||
|
\strng{authorfullhash}{a15b577b15958f2e299a1c4fb8e1546f}
|
||||||
|
\strng{authorfullhashraw}{a15b577b15958f2e299a1c4fb8e1546f}
|
||||||
|
\field{sortinit}{1}
|
||||||
|
\field{sortinithash}{4f6aaa89bab872aa0999fec09ff8e98a}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{booktitle}{2010 Second International Conference on Games and Virtual Worlds for Serious Applications}
|
||||||
|
\field{title}{An~engine selection methodology for~high fidelity serious games}
|
||||||
|
\field{year}{2010}
|
||||||
|
\field{pages}{27\bibrangedash 34}
|
||||||
|
\range{pages}{8}
|
||||||
|
\endentry
|
||||||
|
\entry{unity_urp_docs}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=3f56ad8f8e05fcad24de3fcf878fb50b}{%
|
||||||
|
family={{Unity Technologies}},
|
||||||
|
familyi={U\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{bibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorbibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authornamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\field{extraname}{1}
|
||||||
|
\field{sortinit}{1}
|
||||||
|
\field{sortinithash}{4f6aaa89bab872aa0999fec09ff8e98a}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unity3d.com/Packages/com.unity.render-pipelines.universal@latest}}
|
||||||
|
\field{title}{Universal Render Pipeline overview}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{unity_hdrp_docs}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=3f56ad8f8e05fcad24de3fcf878fb50b}{%
|
||||||
|
family={{Unity Technologies}},
|
||||||
|
familyi={U\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{bibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorbibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authornamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\field{extraname}{2}
|
||||||
|
\field{sortinit}{1}
|
||||||
|
\field{sortinithash}{4f6aaa89bab872aa0999fec09ff8e98a}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@latest}}
|
||||||
|
\field{title}{High Definition Render Pipeline overview}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{parker2010optix}{inproceedings}{}{}
|
||||||
|
\name{author}{11}{}{%
|
||||||
|
{{hash=5165cf099e66ed42a550745bed80d960}{%
|
||||||
|
family={Parker},
|
||||||
|
familyi={P\bibinitperiod},
|
||||||
|
given={S.\bibnamedelimi G.},
|
||||||
|
giveni={S\bibinitperiod\bibinitdelim G\bibinitperiod}}}%
|
||||||
|
{{hash=3a0aaa65fc0e089f543339acfb4656a9}{%
|
||||||
|
family={Bigler},
|
||||||
|
familyi={B\bibinitperiod},
|
||||||
|
given={J.},
|
||||||
|
giveni={J\bibinitperiod}}}%
|
||||||
|
{{hash=0baa9053b5cf67807598c7c9baf0802d}{%
|
||||||
|
family={Dietrich},
|
||||||
|
familyi={D\bibinitperiod},
|
||||||
|
given={A.},
|
||||||
|
giveni={A\bibinitperiod}}}%
|
||||||
|
{{hash=dc54993f3b0c8156cf976de9870a2961}{%
|
||||||
|
family={Friedrich},
|
||||||
|
familyi={F\bibinitperiod},
|
||||||
|
given={H.},
|
||||||
|
giveni={H\bibinitperiod}}}%
|
||||||
|
{{hash=ce5526fff73888a0ac33f15fcd6e1e35}{%
|
||||||
|
family={Hoberock},
|
||||||
|
familyi={H\bibinitperiod},
|
||||||
|
given={J.},
|
||||||
|
giveni={J\bibinitperiod}}}%
|
||||||
|
{{hash=b45fd1a30394b5c3d019b655e705fb6a}{%
|
||||||
|
family={Luebke},
|
||||||
|
familyi={L\bibinitperiod},
|
||||||
|
given={D.},
|
||||||
|
giveni={D\bibinitperiod}}}%
|
||||||
|
{{hash=bf8558be7d1fe43b8b30e7fae87d651f}{%
|
||||||
|
family={McAllister},
|
||||||
|
familyi={M\bibinitperiod},
|
||||||
|
given={D.},
|
||||||
|
giveni={D\bibinitperiod}}}%
|
||||||
|
{{hash=4d1c0b33c29679bdd90be27de5e2197c}{%
|
||||||
|
family={McGuire},
|
||||||
|
familyi={M\bibinitperiod},
|
||||||
|
given={M.},
|
||||||
|
giveni={M\bibinitperiod}}}%
|
||||||
|
{{hash=fd69a05e7b33f39a7b09078c7f808847}{%
|
||||||
|
family={Morley},
|
||||||
|
familyi={M\bibinitperiod},
|
||||||
|
given={K.},
|
||||||
|
giveni={K\bibinitperiod}}}%
|
||||||
|
{{hash=787b2a614401ca9ea9b459cd364207dc}{%
|
||||||
|
family={Robison},
|
||||||
|
familyi={R\bibinitperiod},
|
||||||
|
given={A.},
|
||||||
|
giveni={A\bibinitperiod}}}%
|
||||||
|
{{hash=70e60db46a7dd8c255b9f70f8358e44a}{%
|
||||||
|
family={Stich},
|
||||||
|
familyi={S\bibinitperiod},
|
||||||
|
given={M.},
|
||||||
|
giveni={M\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{6161d0c76465a2c3a98fbb7a8617caac}
|
||||||
|
\strng{fullhash}{ea143ed1fe4c79ddf65cf17872c656b1}
|
||||||
|
\strng{fullhashraw}{ea143ed1fe4c79ddf65cf17872c656b1}
|
||||||
|
\strng{bibnamehash}{6161d0c76465a2c3a98fbb7a8617caac}
|
||||||
|
\strng{authorbibnamehash}{6161d0c76465a2c3a98fbb7a8617caac}
|
||||||
|
\strng{authornamehash}{6161d0c76465a2c3a98fbb7a8617caac}
|
||||||
|
\strng{authorfullhash}{ea143ed1fe4c79ddf65cf17872c656b1}
|
||||||
|
\strng{authorfullhashraw}{ea143ed1fe4c79ddf65cf17872c656b1}
|
||||||
|
\field{sortinit}{2}
|
||||||
|
\field{sortinithash}{8b555b3791beccb63322c22f3320aa9a}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{booktitle}{ACM SIGGRAPH 2010 papers}
|
||||||
|
\field{title}{OptiX: a general purpose ray tracing engine}
|
||||||
|
\field{year}{2010}
|
||||||
|
\field{pages}{1\bibrangedash 13}
|
||||||
|
\range{pages}{13}
|
||||||
|
\endentry
|
||||||
|
\entry{unreal_lumen}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=f74dc6a40e6ed3e07e99f3e972a5394a}{%
|
||||||
|
family={{Epic Games}},
|
||||||
|
familyi={E\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{bibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorbibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authornamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\field{extraname}{1}
|
||||||
|
\field{sortinit}{2}
|
||||||
|
\field{sortinithash}{8b555b3791beccb63322c22f3320aa9a}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unrealengine.com/5.3/en-US/lumen-global-illumination-and-reflections-in-unreal-engine/}}
|
||||||
|
\field{title}{Lumen Global Illumination and Reflections}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{unreal_nanite}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=f74dc6a40e6ed3e07e99f3e972a5394a}{%
|
||||||
|
family={{Epic Games}},
|
||||||
|
familyi={E\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{bibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorbibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authornamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\field{extraname}{2}
|
||||||
|
\field{sortinit}{2}
|
||||||
|
\field{sortinithash}{8b555b3791beccb63322c22f3320aa9a}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unrealengine.com/5.3/en-US/nanite-virtualized-geometry-in-unreal-engine/}}
|
||||||
|
\field{title}{Nanite Virtualized Geometry}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{anthes2016state}{article}{}{}
|
||||||
|
\name{author}{4}{}{%
|
||||||
|
{{hash=6435973202afb320acd8313c499e7e0c}{%
|
||||||
|
family={Anthes},
|
||||||
|
familyi={A\bibinitperiod},
|
||||||
|
given={C.},
|
||||||
|
giveni={C\bibinitperiod}}}%
|
||||||
|
{{hash=57d147820e98e81f002cc157074c6a94}{%
|
||||||
|
family={García-Hernández},
|
||||||
|
familyi={G\bibinithyphendelim H\bibinitperiod},
|
||||||
|
given={R.\bibnamedelimi J.},
|
||||||
|
giveni={R\bibinitperiod\bibinitdelim J\bibinitperiod}}}%
|
||||||
|
{{hash=eedfff65cd31869c7013dc82007e50c3}{%
|
||||||
|
family={Wiedemann},
|
||||||
|
familyi={W\bibinitperiod},
|
||||||
|
given={M.},
|
||||||
|
giveni={M\bibinitperiod}}}%
|
||||||
|
{{hash=d7b8166d40ab9bf3d882941069f0417b}{%
|
||||||
|
family={Kranzlmüller},
|
||||||
|
familyi={K\bibinitperiod},
|
||||||
|
given={D.},
|
||||||
|
giveni={D\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{a582c128728ca51ec6cd2930b37c88d7}
|
||||||
|
\strng{fullhash}{b7906cd8b3b761705d2eb9ee466bd2d0}
|
||||||
|
\strng{fullhashraw}{b7906cd8b3b761705d2eb9ee466bd2d0}
|
||||||
|
\strng{bibnamehash}{b7906cd8b3b761705d2eb9ee466bd2d0}
|
||||||
|
\strng{authorbibnamehash}{b7906cd8b3b761705d2eb9ee466bd2d0}
|
||||||
|
\strng{authornamehash}{a582c128728ca51ec6cd2930b37c88d7}
|
||||||
|
\strng{authorfullhash}{b7906cd8b3b761705d2eb9ee466bd2d0}
|
||||||
|
\strng{authorfullhashraw}{b7906cd8b3b761705d2eb9ee466bd2d0}
|
||||||
|
\field{sortinit}{2}
|
||||||
|
\field{sortinithash}{8b555b3791beccb63322c22f3320aa9a}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{journaltitle}{2016 IEEE Aerospace Conference}
|
||||||
|
\field{title}{State of the art of virtual reality technology}
|
||||||
|
\field{year}{2016}
|
||||||
|
\field{pages}{1\bibrangedash 19}
|
||||||
|
\range{pages}{19}
|
||||||
|
\endentry
|
||||||
|
\entry{unity_shader_graph}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=3f56ad8f8e05fcad24de3fcf878fb50b}{%
|
||||||
|
family={{Unity Technologies}},
|
||||||
|
familyi={U\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{bibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorbibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authornamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\field{extraname}{3}
|
||||||
|
\field{sortinit}{2}
|
||||||
|
\field{sortinithash}{8b555b3791beccb63322c22f3320aa9a}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unity3d.com/Packages/com.unity.shadergraph@latest}}
|
||||||
|
\field{title}{Shader Graph}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{farina2013shader}{book}{}{}
|
||||||
|
\name{author}{3}{}{%
|
||||||
|
{{hash=6ca52220dab72505e42a2ee6a5df166b}{%
|
||||||
|
family={Farina},
|
||||||
|
familyi={F\bibinitperiod},
|
||||||
|
given={C.},
|
||||||
|
giveni={C\bibinitperiod}}}%
|
||||||
|
{{hash=b16a5e52b80ec6d4477275d9158d471a}{%
|
||||||
|
family={Di\bibnamedelima Benedetto},
|
||||||
|
familyi={D\bibinitperiod\bibinitdelim B\bibinitperiod},
|
||||||
|
given={M.},
|
||||||
|
giveni={M\bibinitperiod}}}%
|
||||||
|
{{hash=f33de23ff515d5bacfb8ce29af5c9126}{%
|
||||||
|
family={Cignoni},
|
||||||
|
familyi={C\bibinitperiod},
|
||||||
|
given={P.},
|
||||||
|
giveni={P\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\list{publisher}{1}{%
|
||||||
|
{A~K~Peters/CRC Press}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{2f1e4db8ccc9c63fd50976ed7e156cdc}
|
||||||
|
\strng{fullhash}{d13c08493794758fc34897f3bb1b9e23}
|
||||||
|
\strng{fullhashraw}{d13c08493794758fc34897f3bb1b9e23}
|
||||||
|
\strng{bibnamehash}{d13c08493794758fc34897f3bb1b9e23}
|
||||||
|
\strng{authorbibnamehash}{d13c08493794758fc34897f3bb1b9e23}
|
||||||
|
\strng{authornamehash}{2f1e4db8ccc9c63fd50976ed7e156cdc}
|
||||||
|
\strng{authorfullhash}{d13c08493794758fc34897f3bb1b9e23}
|
||||||
|
\strng{authorfullhashraw}{d13c08493794758fc34897f3bb1b9e23}
|
||||||
|
\field{sortinit}{2}
|
||||||
|
\field{sortinithash}{8b555b3791beccb63322c22f3320aa9a}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{title}{ShaderX and GPU Pro series -- Advanced rendering techniques}
|
||||||
|
\field{year}{2013}
|
||||||
|
\endentry
|
||||||
|
\entry{unreal_material_editor}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=f74dc6a40e6ed3e07e99f3e972a5394a}{%
|
||||||
|
family={{Epic Games}},
|
||||||
|
familyi={E\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{bibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorbibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authornamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\field{extraname}{3}
|
||||||
|
\field{sortinit}{3}
|
||||||
|
\field{sortinithash}{ad6fe7482ffbd7b9f99c9e8b5dccd3d7}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unrealengine.com/5.3/en-US/unreal-engine-material-editor-user-guide/}}
|
||||||
|
\field{title}{Material Editor User Guide}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{nvidia_physx}{inproceedings}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=9ad14fae09b617d96cb4af76c555b394}{%
|
||||||
|
family={{NVIDIA Corporation}},
|
||||||
|
familyi={N\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{9ad14fae09b617d96cb4af76c555b394}
|
||||||
|
\strng{fullhash}{9ad14fae09b617d96cb4af76c555b394}
|
||||||
|
\strng{fullhashraw}{9ad14fae09b617d96cb4af76c555b394}
|
||||||
|
\strng{bibnamehash}{9ad14fae09b617d96cb4af76c555b394}
|
||||||
|
\strng{authorbibnamehash}{9ad14fae09b617d96cb4af76c555b394}
|
||||||
|
\strng{authornamehash}{9ad14fae09b617d96cb4af76c555b394}
|
||||||
|
\strng{authorfullhash}{9ad14fae09b617d96cb4af76c555b394}
|
||||||
|
\strng{authorfullhashraw}{9ad14fae09b617d96cb4af76c555b394}
|
||||||
|
\field{sortinit}{4}
|
||||||
|
\field{sortinithash}{9381316451d1b9788675a07e972a12a7}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://developer.nvidia.com/physx-sdk}}
|
||||||
|
\field{title}{NVIDIA PhysX SDK Documentation}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{unity_physics}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=3f56ad8f8e05fcad24de3fcf878fb50b}{%
|
||||||
|
family={{Unity Technologies}},
|
||||||
|
familyi={U\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{bibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorbibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authornamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\field{extraname}{4}
|
||||||
|
\field{sortinit}{4}
|
||||||
|
\field{sortinithash}{9381316451d1b9788675a07e972a12a7}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unity3d.com/Manual/PhysicsSection.html}}
|
||||||
|
\field{title}{Physics in Unity}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{unreal_chaos}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=f74dc6a40e6ed3e07e99f3e972a5394a}{%
|
||||||
|
family={{Epic Games}},
|
||||||
|
familyi={E\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{bibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorbibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authornamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\field{extraname}{4}
|
||||||
|
\field{sortinit}{5}
|
||||||
|
\field{sortinithash}{20e9b4b0b173788c5dace24730f47d8c}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unrealengine.com/5.3/en-US/chaos-physics-in-unreal-engine/}}
|
||||||
|
\field{title}{Chaos Physics}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{unity_vfx_graph}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=3f56ad8f8e05fcad24de3fcf878fb50b}{%
|
||||||
|
family={{Unity Technologies}},
|
||||||
|
familyi={U\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{bibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorbibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authornamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\field{extraname}{5}
|
||||||
|
\field{sortinit}{5}
|
||||||
|
\field{sortinithash}{20e9b4b0b173788c5dace24730f47d8c}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unity3d.com/Packages/com.unity.visualeffectgraph@latest}}
|
||||||
|
\field{title}{Visual Effect Graph}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{unreal_niagara}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=f74dc6a40e6ed3e07e99f3e972a5394a}{%
|
||||||
|
family={{Epic Games}},
|
||||||
|
familyi={E\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{bibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorbibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authornamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\field{extraname}{5}
|
||||||
|
\field{sortinit}{5}
|
||||||
|
\field{sortinithash}{20e9b4b0b173788c5dace24730f47d8c}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unrealengine.com/5.3/en-US/creating-visual-effects-in-niagara-for-unreal-engine/}}
|
||||||
|
\field{title}{Niagara Visual Effects}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{unreal_metasounds}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=f74dc6a40e6ed3e07e99f3e972a5394a}{%
|
||||||
|
family={{Epic Games}},
|
||||||
|
familyi={E\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{bibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorbibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authornamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\field{extraname}{6}
|
||||||
|
\field{sortinit}{6}
|
||||||
|
\field{sortinithash}{b33bc299efb3c36abec520a4c896a66d}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unrealengine.com/5.3/en-US/metasounds-in-unreal-engine/}}
|
||||||
|
\field{title}{MetaSounds}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{unity_profiler}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=3f56ad8f8e05fcad24de3fcf878fb50b}{%
|
||||||
|
family={{Unity Technologies}},
|
||||||
|
familyi={U\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{bibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorbibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authornamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\field{extraname}{6}
|
||||||
|
\field{sortinit}{6}
|
||||||
|
\field{sortinithash}{b33bc299efb3c36abec520a4c896a66d}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unity3d.com/Manual/Profiler.html}}
|
||||||
|
\field{title}{Unity Profiler}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{unreal_insights}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=f74dc6a40e6ed3e07e99f3e972a5394a}{%
|
||||||
|
family={{Epic Games}},
|
||||||
|
familyi={E\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{fullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{bibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorbibnamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authornamehash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhash}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\strng{authorfullhashraw}{f74dc6a40e6ed3e07e99f3e972a5394a}
|
||||||
|
\field{extraname}{7}
|
||||||
|
\field{sortinit}{7}
|
||||||
|
\field{sortinithash}{108d0be1b1bee9773a1173443802c0a3}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://docs.unrealengine.com/5.3/en-US/unreal-insights-in-unreal-engine/}}
|
||||||
|
\field{title}{Unreal Insights}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
|
\entry{statista_unity_market}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=62182ca58a739daa8ddd8a48b7b19abb}{%
|
||||||
|
family={{Statista}},
|
||||||
|
familyi={S\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{62182ca58a739daa8ddd8a48b7b19abb}
|
||||||
|
\strng{fullhash}{62182ca58a739daa8ddd8a48b7b19abb}
|
||||||
|
\strng{fullhashraw}{62182ca58a739daa8ddd8a48b7b19abb}
|
||||||
|
\strng{bibnamehash}{62182ca58a739daa8ddd8a48b7b19abb}
|
||||||
|
\strng{authorbibnamehash}{62182ca58a739daa8ddd8a48b7b19abb}
|
||||||
|
\strng{authornamehash}{62182ca58a739daa8ddd8a48b7b19abb}
|
||||||
|
\strng{authorfullhash}{62182ca58a739daa8ddd8a48b7b19abb}
|
||||||
|
\strng{authorfullhashraw}{62182ca58a739daa8ddd8a48b7b19abb}
|
||||||
|
\field{sortinit}{8}
|
||||||
|
\field{sortinithash}{a231b008ebf0ecbe0b4d96dcc159445f}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://www.statista.com/statistics/}}
|
||||||
|
\field{title}{Most popular game engines among mobile game developers worldwide as of 2023}
|
||||||
|
\field{year}{2023}
|
||||||
|
\endentry
|
||||||
|
\entry{unity_gaming_report}{misc}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{hash=3f56ad8f8e05fcad24de3fcf878fb50b}{%
|
||||||
|
family={{Unity Technologies}},
|
||||||
|
familyi={U\bibinitperiod}}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{fullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{bibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorbibnamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authornamehash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhash}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\strng{authorfullhashraw}{3f56ad8f8e05fcad24de3fcf878fb50b}
|
||||||
|
\field{extraname}{7}
|
||||||
|
\field{sortinit}{8}
|
||||||
|
\field{sortinithash}{a231b008ebf0ecbe0b4d96dcc159445f}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{howpublished}{Dostęp zdalny: \url{https://unity.com/resources/gaming-report}}
|
||||||
|
\field{title}{Unity Gaming Report 2024}
|
||||||
|
\field{year}{2024}
|
||||||
|
\endentry
|
||||||
\enddatalist
|
\enddatalist
|
||||||
\endrefsection
|
\endrefsection
|
||||||
\endinput
|
\endinput
|
||||||
|
|||||||
BIN
latex/main.pdf
BIN
latex/main.pdf
Binary file not shown.
@ -12,6 +12,13 @@
|
|||||||
|
|
||||||
\graphicspath{{tex/img/}} % Katalog z obrazkami.
|
\graphicspath{{tex/img/}} % Katalog z obrazkami.
|
||||||
\addbibresource{bibliografia.bib} % Plik .bib z bibliografią
|
\addbibresource{bibliografia.bib} % Plik .bib z bibliografią
|
||||||
|
\usepackage{placeins}
|
||||||
|
\usepackage{float}
|
||||||
|
% Fix ToC number width for deep sections (e.g. 5.10.1)
|
||||||
|
\usepackage{tocloft}
|
||||||
|
\setlength{\cftsecnumwidth}{3em}
|
||||||
|
\setlength{\cftsubsecnumwidth}{4em}
|
||||||
|
\setlength{\cftsubsubsecnumwidth}{5em}
|
||||||
|
|
||||||
%-------------------------------------------------------------
|
%-------------------------------------------------------------
|
||||||
% Wybór wydziału:
|
% Wybór wydziału:
|
||||||
|
|||||||
@ -2,38 +2,60 @@
|
|||||||
\section{Wstęp}
|
\section{Wstęp}
|
||||||
|
|
||||||
\subsection{Motywacja i cel pracy}
|
\subsection{Motywacja i cel pracy}
|
||||||
Współczesny rynek gier komputerowych charakteryzuje się dynamicznym rozwojem technologicznym i~rosnącymi wymaganiami zarówno twórców, jak i~graczy. Wybór odpowiedniego silnika gier jest kluczową decyzją, która wpływa na cały proces tworzenia gry, jej wydajność oraz możliwości techniczne.
|
Współczesny rynek gier komputerowych charakteryzuje się dynamicznym rozwojem technologicznym
|
||||||
|
i~rosnącymi wymaganiami zarówno twórców, jak i~graczy. Wybór odpowiedniego silnika gier jest
|
||||||
|
kluczową decyzją, która wpływa na cały proces tworzenia gry, jej wydajność oraz możliwości techniczne.
|
||||||
|
|
||||||
Celem niniejszej pracy jest kompleksowe porównanie wydajności i~możliwości współczesnych silników gier komputerowych, ze szczególnym uwzględnieniem ich wpływu na proces tworzenia gier oraz końcową jakość produktu.
|
Celem niniejszej pracy jest porównanie wydajności i~możliwości dwóch głównych, współczesnych
|
||||||
|
silników gier komputerowych, ze szczególnym uwzględnieniem ich wpływu na proces tworzenia gier
|
||||||
|
oraz końcową jakość produktu.
|
||||||
|
|
||||||
\subsection{Zakres pracy}
|
\subsection{Zakres pracy}
|
||||||
Praca obejmuje analizę następujących aspektów:
|
Praca obejmuje analizę następujących aspektów:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Wydajność renderowania grafiki 2D i~3D
|
\item Wydajność renderowania grafiki
|
||||||
\item Możliwości i~funkcjonalności oferowane przez różne silniki
|
\item Możliwości i~funkcjonalności oferowane przez różne silniki
|
||||||
\item Łatwość użycia i~krzywa uczenia się
|
\item Łatwość użycia i~krzywa uczenia się
|
||||||
\item Wsparcie dla różnych platform docelowych
|
\item Praca z narzędziem przy użycji dużych modeli językowch
|
||||||
\item Ekosystem narzędzi i~społeczność deweloperska
|
\item Ekosystem narzędzi i~społeczność deweloperska
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\subsection{Wybór gry testowej -- gatunek bullet hell}
|
\subsection{Wybór gry testowej -- gatunek bullet hell}
|
||||||
\label{subsec:bullet-hell}
|
\label{subsec:bullet-hell}
|
||||||
|
|
||||||
W~celu przeprowadzenia praktycznych testów wydajnościowych zdecydowano się na implementację gry z~gatunku \textbf{bullet hell} (dosł.~,,piekło pocisków''), znanego również jako \textbf{danmaku} (z~jap.~,,kurtyna pocisków'') lub \textbf{manic shooter}.
|
W~celu przeprowadzenia praktycznych testów wydajnościowych zdecydowano się na implementację
|
||||||
|
gry z~gatunku \textbf{bullet hell} (dosł.~,,piekło pocisków''), znanego również jako
|
||||||
|
\textbf{danmaku} (z~jap.~,,kurtyna pocisków'') lub \textbf{manic shooter}.
|
||||||
|
|
||||||
\subsubsection{Charakterystyka gatunku}
|
\subsubsection{Charakterystyka gatunku}
|
||||||
|
|
||||||
Bullet hell to podgatunek gier typu shoot 'em up (strzelanka), w~którym gracz steruje zwykle niewielkim statkiem kosmicznym lub postacią, mierząc się z~falami przeciwników wystrzeliwujących ogromne ilości pocisków tworzących skomplikowane wzory na ekranie. Kluczowe cechy gatunku obejmują:
|
Bullet hell to podgatunek gier typu shoot 'em up, w~którym gracz steruje zwykle
|
||||||
|
niewielkim statkiem kosmicznym lub postacią, mierząc się z~falami przeciwników wystrzeliwujących
|
||||||
|
ogromne ilości pocisków tworzących skomplikowane wzory na ekranie. Kluczowe cechy gatunku obejmują:
|
||||||
|
|
||||||
\begin{itemize}
|
\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
|
\item \textbf{Masowa ilość pocisków} -- na ekranie jednocześnie może znajdować się od kilkuset
|
||||||
\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 gęstymi wzorami pocisków
|
do kilku tysięcy pocisków, tworzących złożone formacje geometryczne
|
||||||
\item \textbf{Wzory pocisków} -- przeciwnicy wystrzeliwują pociski według określonych algorytmów, tworząc spirale, fale, rozgałęzienia i~inne formacje
|
\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
|
\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
|
\item \textbf{Eskalacja trudności} -- wraz z~postępem gry wzrasta liczba przeciwników
|
||||||
|
i~gęstość pocisków
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
Klasyczne przykłady gatunku to serie \textit{Touhou Project}, \textit{DoDonPachi}, \textit{Ikaruga} oraz \textit{Geometry Wars}.
|
Klasyczne przykłady gatunku to serie \textit{Touhou Project},
|
||||||
|
\textit{DoDonPachi}, \textit{Ikaruga} lub
|
||||||
|
\textit{Geometry Wars}.
|
||||||
|
\begin{figure}[!h]
|
||||||
|
\centering
|
||||||
|
\includegraphics[width=1\linewidth]{touhou.jpg}
|
||||||
|
\caption{Przykład gry z gatunku bullet hell (seria Touhou). \cite{glau2021touhou}}
|
||||||
|
\label{fig:touhou}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\subsubsection{Uzasadnienie wyboru gatunku}
|
\subsubsection{Uzasadnienie wyboru gatunku}
|
||||||
|
|
||||||
@ -52,7 +74,6 @@ Gatunek bullet hell został wybrany jako podstawa testów wydajnościowych z~nas
|
|||||||
|
|
||||||
\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
|
||||||
|
|
||||||
\item \textbf{Wymuszenie optymalizacji} -- ze względu na ekstremalną liczbę obiektów, implementacja bullet hell wymusza stosowanie technik optymalizacyjnych (object pooling, spatial partitioning), których efektywność może różnić się między silnikami
|
|
||||||
\end{enumerate}
|
\end{enumerate}
|
||||||
|
|
||||||
\subsubsection{Parametry gry testowej}
|
\subsubsection{Parametry gry testowej}
|
||||||
@ -60,12 +81,10 @@ Gatunek bullet hell został wybrany jako podstawa testów wydajnościowych z~nas
|
|||||||
Zaimplementowana gra testowa charakteryzuje się następującymi parametrami:
|
Zaimplementowana gra testowa charakteryzuje się następującymi parametrami:
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Czas rozgrywki: 90 sekund (tryb przetrwania)
|
\item Czas rozgrywki: 90 sekund
|
||||||
\item Eskalacja trudności: liniowy wzrost częstotliwości spawnu przeciwników
|
\item Eskalacja trudności: liniowy wzrost częstotliwości spawnu przeciwników
|
||||||
\item Typy przeciwników: 3 warianty z~różnymi wzorami strzelania
|
\item Typy przeciwników: 3 warianty z~różnymi wzorami strzelania
|
||||||
\item Maksymalna liczba jednoczesnych pocisków: do 500 obiektów
|
|
||||||
\item System punktacji oparty na eliminacji przeciwników
|
\item System punktacji oparty na eliminacji przeciwników
|
||||||
\item Object pooling dla pocisków (eliminacja alokacji w~runtime)
|
|
||||||
\end{itemize}
|
\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.
|
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.
|
||||||
|
|||||||
@ -2,16 +2,43 @@
|
|||||||
\section{Przegląd literatury i istniejących rozwiązań}
|
\section{Przegląd literatury i istniejących rozwiązań}
|
||||||
|
|
||||||
\subsection{Historia rozwoju silników gier}
|
\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. Według Ullmann et al. \cite{ullmann2022game}, współczesne silniki gier charakteryzują się modularną architekturą, która umożliwia ponowne wykorzystanie komponentów między różnymi projektami.
|
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 fundamentalnej 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.
|
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.
|
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}
|
\subsection{Klasyfikacja silników gier}
|
||||||
|
|
||||||
\subsubsection{Architektura silników według Gregory'ego}
|
\subsubsection{Architektura silników według Gregory'ego}
|
||||||
Gregory \cite{gregory2018game} przedstawia szczegółową taksonomię architektur silników gier, wyróżniając kilka kluczowych typów organizacji:
|
Gregory \cite{gregory2018game} przedstawia taksonomię architektur silników gier, wyróżniając kilka kluczowych typów organizacji:
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item \textbf{Silniki obiektowe} - bazujące na hierarchii obiektów gry z dziedziczeniem
|
\item \textbf{Silniki obiektowe} - bazujące na hierarchii obiektów gry z dziedziczeniem
|
||||||
@ -27,50 +54,45 @@ Analiza literatury pokazuje wyraźne różnice między rozwiązaniami komercyjny
|
|||||||
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.
|
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.
|
||||||
|
|
||||||
\subsubsection{Silniki specjalistyczne vs. uniwersalne}
|
\subsubsection{Silniki specjalistyczne vs. uniwersalne}
|
||||||
Pavkov et al. \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.
|
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.
|
||||||
|
|
||||||
\subsection{Aktualny stan badań}
|
\subsection{Aktualny stan badań}
|
||||||
|
|
||||||
\subsubsection{Badania wydajności}
|
\subsubsection{Badania wydajności}
|
||||||
Messaoudi et al. \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.
|
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.
|
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.
|
||||||
|
|
||||||
\subsubsection{Metodologie porównawcze}
|
\subsubsection{Metodologie porównawcze}
|
||||||
Pattrasitidecha \cite{pattrasitidecha2014comparison} opracował macierz porównawczą dla silników gier mobilnych 3D, definiując kryteria selekcji i kluczowe aspekty oceny. Ta metodologia została szeroko adoptowana w późniejszych badaniach.
|
Pattrasitidecha \cite{pattrasitidecha2014comparison}
|
||||||
|
opracował macierz porównawczą dla silników gier mobilnych 3D,
|
||||||
|
definiując kryteria selekcji i kluczowe aspekty oceny.
|
||||||
|
|
||||||
Vohera et al. \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.
|
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.
|
||||||
|
|
||||||
\subsubsection{Specjalizowane zastosowania}
|
\subsubsection{Specjalizowane zastosowania}
|
||||||
Marks et al. \cite{marks2008evaluation} oceniali silniki gier pod kątem zastosowań w symulacjach medycznych i szkoleniach klinicznych, wprowadzając specyficzne kryteria oceny dla aplikacji edukacyjnych.
|
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.
|
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.
|
||||||
|
|
||||||
\subsubsection{Badania społeczności i ekosystemu}
|
\subsubsection{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.
|
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.
|
||||||
|
|
||||||
\subsection{Identyfikacja luk badawczych}
|
\subsection{Motywacja i cel pracy}
|
||||||
|
|
||||||
Analiza dostępnej literatury ujawnia kilka istotnych luk badawczych:
|
Przegląd literatury pokazuje, że istnieje wiele badań porównawczych
|
||||||
|
silników gier, jednak większość z nich koncentruje się na wybranych
|
||||||
\begin{enumerate}
|
aspektach, takich jak wydajność renderowania, łatwość użycia czy
|
||||||
\item \textbf{Brak kompleksowych badań wielokryterialnych} - większość istniejących prac koncentruje się na pojedynczych aspektach (wydajność, funkcjonalność) bez holistycznego podejścia
|
wsparcie dla konkretnych platform. Niniejsza praca wpisuje się w ten
|
||||||
|
nurt, przeprowadzając praktyczne porównanie silników Unity i Unreal
|
||||||
\item \textbf{Ograniczone badania długoterminowe} - brakuje analiz wpływu aktualizacji silników na stabilność i wydajność projektów
|
Engine pod kątem wydajności w wybranych scenariuszach testowych.
|
||||||
|
|
||||||
\item \textbf{Niewystarczające dane o współczesnych silnikach} - wiele badań koncentruje się na starszych wersjach silników, nie uwzględniając najnowszych możliwości
|
|
||||||
|
|
||||||
\item \textbf{Brak standaryzacji metodologii} - różne badania stosują odmienne kryteria oceny, co utrudnia porównanie wyników
|
|
||||||
|
|
||||||
\item \textbf{Ograniczone badania cross-platform} - niewiele prac analizuje wydajność silników na różnych platformach docelowych w sposób systematyczny
|
|
||||||
\end{enumerate}
|
|
||||||
|
|
||||||
Niniejsza praca ma na celu wypełnienie tych luk poprzez przeprowadzenie kompleksowej analizy porównawczej współczesnych silników gier z zastosowaniem ustandaryzowanej metodologii i wielokryterialnego podejścia do oceny.
|
|
||||||
|
|
||||||
\subsection{Trendy technologiczne}
|
\subsection{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.
|
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 et al. \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.
|
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,
|
% Bibliografia zawiera odniesienia do kluczowych publikacji naukowych,
|
||||||
% dokumentacji technicznej oraz raportów branżowych
|
% dokumentacji technicznej oraz raportów branżowych
|
||||||
|
|||||||
@ -3,14 +3,33 @@
|
|||||||
|
|
||||||
\subsection{Kryteria wyboru silników do analizy}
|
\subsection{Kryteria wyboru silników do analizy}
|
||||||
|
|
||||||
Rynek silników gier komputerowych oferuje szeroki wachlarz rozwiązań, od prostych frameworków 2D po zaawansowane środowiska do tworzenia fotorealistycznych produkcji AAA. W ramach niniejszej pracy zdecydowano się na dogłębną analizę dwóch silników: \textbf{Unity} oraz \textbf{Unreal Engine}. Wybór ten podyktowany był kilkoma kluczowymi czynnikami:
|
Rynek silników gier komputerowych oferuje szeroki wachlarz rozwiązań,
|
||||||
|
od prostych frameworków 2D po zaawansowane środowiska do tworzenia
|
||||||
|
fotorealistycznych produkcji AAA \cite{gregory2018game}.
|
||||||
|
W ramach niniejszej pracy zdecydowano
|
||||||
|
się na dogłębną analizę dwóch silników: \textbf{Unity}
|
||||||
|
oraz \textbf{Unreal Engine}. Wybór ten podyktowany był
|
||||||
|
kilkoma kluczowymi czynnikami:
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item \textbf{Dominacja rynkowa} -- według danych z~2024 roku, Unity i~Unreal Engine wspólnie obsługują ponad 70\% globalnego rynku gier komputerowych i~mobilnych
|
\item \textbf{Dominacja rynkowa} -- według raportu Video Game Insights,
|
||||||
\item \textbf{Reprezentatywność podejść architektonicznych} -- silniki reprezentują odmienne filozofie: Unity opiera się na języku C\# z~garbage collectorem, a~Unreal wykorzystuje natywny C++ z~ręcznym zarządzaniem pamięcią
|
w~2024 roku 51\% gier wydanych na platformie Steam powstało w~Unity,
|
||||||
\item \textbf{Różnorodność zastosowań} -- Unity tradycyjnie dominuje w segmencie gier mobilnych i indie, natomiast Unreal jest preferowany w produkcjach AAA i projektach wymagających fotorealistycznej grafiki
|
a~28\% w~Unreal Engine \cite{vgi2025engines}
|
||||||
\item \textbf{Dostępność} -- oba silniki oferują darmowe wersje dla małych zespołów i projektów edukacyjnych, co czyni je dostępnymi dla szerokiego grona deweloperów
|
\item \textbf{Reprezentatywność podejść architektonicznych} --
|
||||||
\item \textbf{Bogata dokumentacja} -- zarówno Unity jak i Unreal dysponują rozbudowaną dokumentacją oficjalną oraz aktywnymi społecznościami
|
silniki reprezentują odmienne filozofie: Unity opiera się na
|
||||||
|
języku C\# z~garbage collectorem,
|
||||||
|
a~Unreal wykorzystuje C++ z~własnym systemem refleksji,
|
||||||
|
makrami oraz garbage collectorem 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}
|
||||||
|
\item \textbf{Dostępność} -- oba silniki oferują darmowe wersje
|
||||||
|
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}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\subsection{Unity}
|
\subsection{Unity}
|
||||||
@ -18,42 +37,70 @@ Rynek silników gier komputerowych oferuje szeroki wachlarz rozwiązań, od pros
|
|||||||
|
|
||||||
\subsubsection{Wprowadzenie i historia}
|
\subsubsection{Wprowadzenie i historia}
|
||||||
|
|
||||||
Unity to wieloplatformowy silnik gier stworzony przez Unity Technologies, którego pierwsza wersja została wydana w 2005 roku jako ekskluzywne narzędzie dla systemu macOS. Od tego czasu silnik przeszedł znaczącą ewolucję, stając się jednym z najpopularniejszych rozwiązań do tworzenia gier na świecie.
|
Unity to wieloplatformowy silnik gier stworzony przez Unity
|
||||||
|
Technologies, którego pierwsza wersja została zaprezentowana
|
||||||
|
w czerwcu 2005 roku na konferencji Apple Worldwide Developers Conference
|
||||||
|
jako narzędzie dla systemu Mac OS X \cite{unity_wikipedia}.
|
||||||
|
Od tego czasu silnik przeszedł znaczącą ewolucję, stając się jednym
|
||||||
|
z najpopularniejszych rozwiązań do tworzenia gier na świecie.
|
||||||
|
|
||||||
Kluczowym momentem w historii Unity było wprowadzenie w 2010 roku darmowej wersji silnika (Unity Free), co znacząco obniżyło barierę wejścia dla początkujących deweloperów i małych studiów. Decyzja ta przyczyniła się do eksplozji popularności silnika w segmencie gier mobilnych oraz indie.
|
Kluczowym momentem w historii Unity było wprowadzenie darmowej wersji
|
||||||
|
silnika, co znacząco obniżyło barierę wejścia dla początkujących
|
||||||
|
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 na platformie .NET/Mono, co zapewnia:
|
Unity wykorzystuje język programowania \textbf{C\#} działający na
|
||||||
|
platformie .NET/Mono, co zapewnia:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Automatyczne zarządzanie pamięcią poprzez garbage collector
|
\item Automatyczne zarządzanie pamięcią poprzez garbage collector
|
||||||
\item Bezpieczeństwo typów i obsługę wyjątków
|
\item Bezpieczeństwo typów i obsługę wyjątków
|
||||||
\item Bogatą bibliotekę standardową
|
\item Bogatą bibliotekę standardową
|
||||||
\item Stosunkowo łagodną krzywą uczenia dla programistów znających Javę lub podobne języki
|
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
Architektura Unity opiera się na wzorcu \textit{GameObject-Component}, 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.
|
Architektura Unity opiera się na wzorcu \textit{GameObject-Component},
|
||||||
|
gdzie każdy obiekt w scenie (GameObject) może posiadać dowolną
|
||||||
|
liczbę komponentów definiujących jego zachowanie
|
||||||
|
\cite{unity_components_docs, unity_gameobject_docs}.
|
||||||
|
Podejście to promuje kompozycję nad dziedziczeniem i ułatwia
|
||||||
|
tworzenie modularnego kodu.
|
||||||
|
|
||||||
\subsubsection{Możliwości i funkcjonalności}
|
\subsubsection{Możliwości i funkcjonalności}
|
||||||
|
|
||||||
Unity oferuje kompleksowy zestaw narzędzi do tworzenia gier 2D i 3D:
|
Unity oferuje kompleksowy zestaw narzędzi do tworzenia gier 2D i 3D:
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\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{Rendering} -- wsparcie dla wielu pipeline'ów
|
||||||
\item \textbf{Fizyka} -- integracja z silnikami PhysX (3D) i Box2D (2D)
|
renderowania: Built-in, Universal Render Pipeline (URP) dla platform
|
||||||
\item \textbf{Animacja} -- system Mecanim z obsługą maszyn stanów i blendingu animacji
|
mobilnych oraz High Definition Render Pipeline (HDRP) dla wysokiej
|
||||||
|
jakości grafiki \cite{unity_urp_docs, unity_hdrp_docs}
|
||||||
|
\item \textbf{Fizyka} -- integracja z silnikami PhysX (3D) i Box2D
|
||||||
|
(2D) \cite{unity_physics}
|
||||||
|
\item \textbf{Animacja} -- system Mecanim z obsługą maszyn stanów
|
||||||
|
i blendingu animacji \cite{unity_animation_docs}
|
||||||
\item \textbf{Audio} -- wbudowany system dźwięku przestrzennego
|
\item \textbf{Audio} -- wbudowany system dźwięku przestrzennego
|
||||||
\item \textbf{UI} -- dwa systemy interfejsu użytkownika: legacy uGUI oraz nowoczesny UI Toolkit
|
\cite{unity_audio_docs}
|
||||||
\item \textbf{Multiplayer} -- Netcode for GameObjects oraz integracja z usługami sieciowymi
|
\item \textbf{UI} -- dwa systemy interfejsu użytkownika: uGUI oraz
|
||||||
|
nowoczesny UI Toolkit \cite{unity_ugui_docs, unity_uitoolkit_docs}
|
||||||
|
\item \textbf{Multiplayer} -- Netcode for GameObjects oraz
|
||||||
|
integracja z usługami sieciowymi \cite{unity_netcode_docs}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\subsubsection{Narzędzia deweloperskie}
|
\subsubsection{Narzędzia deweloperskie}
|
||||||
|
|
||||||
Edytor Unity zapewnia intuicyjny interfejs graficzny z następującymi funkcjonalnościami:
|
Edytor Unity zapewnia interfejs graficzny z następującymi
|
||||||
|
funkcjonalnościami \cite{unity_wikipedia}:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Hierarchiczny widok sceny z możliwością edycji w czasie rzeczywistym
|
\item Hierarchiczny widok sceny z możliwością edycji w czasie
|
||||||
\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ęć)
|
\item Wbudowany profiler wydajności (CPU, GPU, pamięć)
|
||||||
\item Asset Store -- marketplace z gotowymi zasobami i rozszerzeniami
|
\cite{unity_profiler}
|
||||||
\item Obsługa hot reload -- możliwość edycji kodu podczas działania gry
|
\item Asset Store -- marketplace z gotowymi zasobami i
|
||||||
|
rozszerzeniami
|
||||||
|
\item Obsługa hot reload -- możliwość edycji kodu podczas działania
|
||||||
|
gry
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\subsection{Unreal Engine}
|
\subsection{Unreal Engine}
|
||||||
@ -61,48 +108,61 @@ Edytor Unity zapewnia intuicyjny interfejs graficzny z następującymi funkcjona
|
|||||||
|
|
||||||
\subsubsection{Wprowadzenie i historia}
|
\subsubsection{Wprowadzenie i historia}
|
||||||
|
|
||||||
Unreal Engine to silnik gier stworzony przez Epic Games, którego historia sięga 1998 roku, kiedy to zadebiutował wraz z grą \textit{Unreal}. Od początku silnik był projektowany z myślą o tworzeniu gier pierwszoosobowych (FPS) o wysokiej jakości graficznej, co nadal pozostaje jego mocną stroną.
|
Unreal Engine to silnik gier stworzony przez Epic Games,
|
||||||
|
którego historia sięga 1998 roku, kiedy to zadebiutował wraz z
|
||||||
|
grą \textit{Unreal} \cite{unreal_wikipedia}. Od początku silnik był projektowany z myślą o
|
||||||
|
tworzeniu gier pierwszoosobowych (FPS) o wysokiej jakości graficznej,
|
||||||
|
co nadal pozostaje jego mocną stroną \cite{unreal_wikipedia,unreal_docs}.
|
||||||
|
|
||||||
Przełomowym momentem było wydanie Unreal Engine 4 w 2014 roku na licencji royalty-free (5\% od przychodów powyżej \$1 miliona), a następnie Unreal Engine 5 w 2022 roku, wprowadzającego rewolucyjne technologie takie jak Nanite (wirtualizowana geometria) i Lumen (globalne oświetlenie w czasie rzeczywistym).
|
Przełomowym momentem było wydanie Unreal Engine 4 w 2014 roku na
|
||||||
|
licencji royalty-free (5\% od przychodów powyżej \$1 miliona), a
|
||||||
|
następnie Unreal Engine 5 w 2022 roku, wprowadzającym
|
||||||
|
technologie takie jak Nanite (wirtualizowana geometria) i Lumen
|
||||||
|
(globalne oświetlenie w czasie rzeczywistym) \cite{unreal_wikipedia,unreal_nanite,unreal_lumen}.
|
||||||
|
|
||||||
Unreal Engine wykorzystuje język programowania \textbf{C++} z rozszerzeniami specyficznymi dla silnika (makra UE), co zapewnia:
|
Unreal Engine wykorzystuje język programowania \textbf{C++} z
|
||||||
|
rozszerzeniami specyficznymi dla silnika (makra UE), co zapewnia:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Maksymalną wydajność dzięki kompilacji do kodu natywnego
|
\item Maksymalną wydajność dzięki kompilacji do kodu natywnego
|
||||||
\item Pełną kontrolę nad zarządzaniem pamięcią
|
\item Pełną kontrolę nad zarządzaniem pamięcią
|
||||||
\item Dostęp do kodu źródłowego silnika (po uzyskaniu licencji)
|
|
||||||
\item Strome krzywe uczenia, szczególnie dla programistów bez doświadczenia w C++
|
\item Strome krzywe uczenia, szczególnie dla programistów bez doświadczenia w C++
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
Dodatkowo Unreal oferuje system \textbf{Blueprints} -- wizualny język skryptowy pozwalający na tworzenie logiki gry bez pisania kodu. Blueprinty są szczególnie przydatne dla designerów i artystów, choć dla złożonych systemów mogą być mniej wydajne niż natywny C++.
|
Dodatkowo Unreal oferuje system \textbf{Blueprints} --
|
||||||
|
wizualny język skryptowy pozwalający na tworzenie logiki gry
|
||||||
|
bez pisania kodu \cite{unreal_blueprints}. Szczególnie przydatne dla
|
||||||
|
designerów i artystów, choć dla złożonych systemów mogą
|
||||||
|
być mniej wydajne niż natywny C++.
|
||||||
|
|
||||||
\subsubsection{Możliwości i funkcjonalności}
|
\subsubsection{Możliwości i funkcjonalności}
|
||||||
|
|
||||||
Unreal Engine wyróżnia się zaawansowanymi możliwościami graficznymi:
|
Unreal Engine wyróżnia się zaawansowanymi możliwościami graficznymi:
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item \textbf{Rendering} -- fotorealistyczna grafika z obsługą ray tracingu, Nanite i Lumen
|
\item \textbf{Rendering} -- fotorealistyczna grafika z obsługą ray tracingu, Nanite i Lumen \cite{unreal_nanite,unreal_lumen}
|
||||||
\item \textbf{Fizyka} -- silnik Chaos Physics z obsługą destrukcji i symulacji ciał miękkich
|
\item \textbf{Fizyka} -- silnik Chaos Physics z obsługą destrukcji i symulacji ciał miękkich \cite{unreal_chaos}
|
||||||
\item \textbf{Animacja} -- Control Rig, Animation Blueprints, IK Retargeting
|
\item \textbf{Animacja} -- Control Rig, Animation Blueprints, IK Retargeting \cite{unreal_docs}
|
||||||
\item \textbf{Landscape} -- zaawansowane narzędzia do tworzenia dużych terenów
|
\item \textbf{Landscape} -- zaawansowane narzędzia do tworzenia dużych terenów \cite{unreal_docs}
|
||||||
\item \textbf{Niagara} -- system efektów cząsteczkowych nowej generacji
|
\item \textbf{Niagara} -- system efektów cząsteczkowych nowej generacji \cite{unreal_niagara}
|
||||||
\item \textbf{Sequencer} -- narzędzie do tworzenia cinematików i cutscen
|
\item \textbf{Sequencer} -- narzędzie do tworzenia cinematików i cutscen \cite{unreal_sequencer}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\subsubsection{Narzędzia deweloperskie}
|
\subsubsection{Narzędzia deweloperskie}
|
||||||
|
|
||||||
Unreal Editor oferuje rozbudowane środowisko deweloperskie:
|
Unreal Editor oferuje rozbudowane środowisko deweloperskie:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Edytor poziomów z obsługą streamingu i Level of Detail (LOD)
|
\item Edytor poziomów z obsługą streamingu i Level of Detail (LOD) \cite{unreal_docs}
|
||||||
\item Blueprint Visual Scripting -- programowanie wizualne
|
\item Blueprint Visual Scripting -- programowanie wizualne \cite{unreal_blueprints}
|
||||||
\item Material Editor -- węzłowy edytor materiałów
|
\item Material Editor -- węzłowy edytor materiałów \cite{unreal_material_editor}
|
||||||
\item Wbudowany profiler z analizą GPU/CPU i pamięci
|
\item Wbudowany profiler z analizą GPU/CPU i pamięci \cite{unreal_docs}
|
||||||
\item Marketplace -- sklep z zasobami i pluginami
|
\item Marketplace -- sklep z zasobami i pluginami \cite{unreal_docs}
|
||||||
\item Live Coding -- eksperymentalne wsparcie dla hot reload w C++
|
\item Dostęp do kodu źródłowego silnika \cite{unreal_wikipedia}
|
||||||
|
\item Live Coding -- eksperymentalne wsparcie dla hot reload w C++ \cite{unreal_livecoding}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\subsection{Porównanie architektoniczne}
|
\subsection{Porównanie architektoniczne}
|
||||||
|
\FloatBarrier
|
||||||
\begin{table}[ht]
|
\begin{table}[H!]
|
||||||
\centering
|
\centering
|
||||||
\caption{Porównanie kluczowych cech Unity i Unreal Engine}
|
\caption{Porównanie kluczowych cech Unity i Unreal Engine}
|
||||||
\label{tab:unity-vs-unreal}
|
\label{tab:unity-vs-unreal}
|
||||||
@ -122,21 +182,31 @@ Kod źródłowy & Częściowo dostępny & Pełny dostęp \\
|
|||||||
\hline
|
\hline
|
||||||
Rozmiar pustego projektu & $\sim$100 MB & $\sim$1-2 GB \\
|
Rozmiar pustego projektu & $\sim$100 MB & $\sim$1-2 GB \\
|
||||||
\hline
|
\hline
|
||||||
Krzywa uczenia & Łagodna & Stroma \\
|
Główne zastosowania & Mobile, indie, 2D & AAA, FPS, 3D \\
|
||||||
\hline
|
|
||||||
Główne zastosowania & Mobile, indie, 2D & AAA, FPS, fotorealizm \\
|
|
||||||
\hline
|
\hline
|
||||||
\end{tabular}
|
\end{tabular}
|
||||||
\end{table}
|
\end{table}
|
||||||
|
|
||||||
\subsection{Uzasadnienie wyboru do badań}
|
\subsection{Uzasadnienie wyboru do badań}
|
||||||
|
Wybór Unity i Unreal Engine jako przedmiotu porównania pozwala na
|
||||||
|
analizę dwóch fundamentalnie różnych podejść do tworzenia gier:
|
||||||
|
|
||||||
Wybór Unity i Unreal Engine jako przedmiotu porównania pozwala na analizę dwóch fundamentalnie różnych podejść do tworzenia gier:
|
Motywacja wyboru: Unity i Unreal Engine pozostają dwoma najpopularniejszymi silnikami używanymi w większości nowoczesnych produkcji — zarówno w segmencie indie, jak i w grach AAA — co czyni ich porównanie reprezentatywnym dla współczesnego rynku gier \cite{vgi2025engines,g2gameengines}.
|
||||||
|
|
||||||
|
Wybór Unity i Unreal Engine jako przedmiotu porównania pozwala na
|
||||||
|
analizę dwóch fundamentalnie różnych podejść do tworzenia gier:
|
||||||
|
|
||||||
\begin{enumerate}
|
\begin{enumerate}
|
||||||
\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ę
|
\item \textbf{Produktywność vs wydajność} -- C\# w Unity oferuje
|
||||||
\item \textbf{Dostępność vs specjalizacja} -- Unity celuje w szeroki rynek z niskim progiem wejścia, Unreal koncentruje się na produkcjach premium
|
szybszy rozwój kosztem pewnego narzutu wydajnościowego, podczas
|
||||||
\item \textbf{Elastyczność vs integracja} -- Unity pozwala na większą swobodę w doborze zewnętrznych narzędzi, Unreal oferuje bardziej zintegrowane rozwiązania
|
gdy C++ w Unreal wymaga więcej pracy, ale zapewnia maksymalną
|
||||||
|
kontrolę
|
||||||
|
\item \textbf{Dostępność vs specjalizacja} -- Unity celuje w
|
||||||
|
szeroki rynek z niskim progiem wejścia, Unreal koncentruje się
|
||||||
|
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
|
||||||
\end{enumerate}
|
\end{enumerate}
|
||||||
|
|
||||||
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.
|
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.
|
||||||
|
|||||||
@ -3,7 +3,8 @@
|
|||||||
|
|
||||||
\subsection{Założenia metodologiczne}
|
\subsection{Założenia metodologiczne}
|
||||||
\subsubsection{Cel badań}
|
\subsubsection{Cel badań}
|
||||||
Głównym celem badań jest obiektywne porównanie wydajności i możliwości wybranych silników gier w kontrolowanych warunkach.
|
Głównym celem badań jest porównanie wydajności i możliwości
|
||||||
|
wybranych silników gier.
|
||||||
|
|
||||||
\subsubsection{Hipotezy badawcze}
|
\subsubsection{Hipotezy badawcze}
|
||||||
\begin{enumerate}
|
\begin{enumerate}
|
||||||
|
|||||||
BIN
latex/tex/img/touhou.jpg
Normal file
BIN
latex/tex/img/touhou.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 257 KiB |
Loading…
Reference in New Issue
Block a user