Loading AI tools
silnik gier komputerowych Z Wikipedii, wolnej encyklopedii
Unreal Engine – silnik gier komputerowych, wyprodukowany przez przedsiębiorstwo Epic Games. Pierwotnie wykorzystywany w strzelankach pierwszoosobowych, z czasem zaczął być wykorzystywany również w innych gatunkach gier komputerowych.
Logo programu | |
Autor | Epic Games |
---|---|
Aktualna wersja stabilna | 5.4 (23 kwietnia 2024) [±] |
Język programowania | C++[1] |
Platforma sprzętowa | PlayStation 3, PlayStation 4, Xbox 360, Xbox One, Nintendo Switch, Xbox Series X/S, PlayStation 5, Google Stadia |
System operacyjny | Windows, Linux[2][3], macOS[4], Android, iOS |
Rodzaj | silnik gry komputerowej |
Strona internetowa |
Jądro silnika zostało napisane w języku C++[1], a jego twórcy zaimplementowali w nim mechanizmy wspomagające wieloplatformowość. Ze względu na to oraz wysoki poziom technologiczny (16 lat rozwoju silnika przy dużym wsparciu finansowym) wielu deweloperów gier chętnie go wykorzystuje. Obsługuje między innymi platformy Windows, Linux[2][3], macOS[4], PlayStation 3, PlayStation 4[2][3], Xbox 360, Xbox One[2][3] oraz iOS[4]. Wraz z wydaniem wersji 4.25 zapewniono też wsparcie dla konsol Xbox Series X/S, PlayStation 5, Nintendo Switch oraz platformy Google Stadia[5].
Wersja zadebiutowała w 1998 roku w grze Unreal. Silnik zawierał wtedy mechanizm renderowania, system wykrywania kolizji, system sztucznej inteligencji, system widoczności, zarządzania siecią i systemem plików. Z powodu poziomu technologicznego ówczesnych komputerów zastosowano cylindryczne wykrywanie kolizji, choć dysponowano lepszą technologią. Unreal Engine 1 wykorzystywał Glide API opracowany specjalnie dla procesorów graficznych 3dfx, zamiast OpenGL[6]. Jednym z największych powodów jego popularności było zastosowanie łatwej do modyfikacji architektury silnika i włączenie języka skryptowego[7]. Kolejną innowacją w porównaniu do silników poprzedniej generacji było zastosowanie technologii sieciowej, która znacznie ulepszyła skalowalność silnika w grach wieloosobowych. Również Unreal jako pierwszy silnik w pełni wykorzystywał model klient-serwer w architekturze silnika[8].
Druga wersja silnika zadebiutowała w 2002 roku w grze America’s Army. Największą zmianą jest napisane całkowicie od nowa jądro silnika oraz silnik renderowania. Zintegrowano z silnikiem nowy edytor poziomów UnrealEd 3, a także silnik fizyczny Karma physics SDK, wykorzystaną między innymi w grach Unreal Tournament 2003 i Unreal Championship. Ponadto zaktualizowano wiele elementów silnika, dodano wsparcie dla platform PlayStation 2, GameCube i Xbox. W wersji UE 2.5 poprawiono renderowanie, dodano fizykę pojazdów oraz wsparcie dla technologii 64-bitowej w Unreal Tournament 2004. Wyspecjalizowana wersja UE 2.5 o nazwie UE2X, wykorzystana w grze Unreal Championship 2, została zoptymalizowana dla pierwszej generacji konsoli Xbox. Dodatkowo wspiera ona technologię dźwięku EAX 3.0.
Trzecia wersja silnika pojawiła się w 2006 roku wraz z grą Gears of War. Silnik projektowano z myślą o wykorzystaniu technologii DirectX w wersjach 9, 10 i 11, a także do zastosowania w konsolach PlayStation 3 oraz Xbox 360. Silnik obsługuje zaawansowane technologie takie jak: high dynamic range rendering, per-pixel lighting, a także dynamiczne cienie. W 2009 roku na Game Developers Conference zapowiedziano wydanie poprawek do silnika, które zawierały obsługę wysokiej jakości efektów świetlnych, symulacje zniszczeń obiektów oraz symulację tłumu[9]. Silnik jest również wykorzystywany do projektowania obiektów, tworzenia symulatorów jazdy oraz filmów. Licencje na wykorzystywanie silnika zakupiło m.in.: Atari, Activision, Capcom, Disney, Electronic Arts, Konami, THQ, Sega, Sony, Ubisoft i wiele innych przedsiębiorstw.
W 2005 roku wiceprezes Epic Games Mark Rein przyznał, że prace nad Unreal Engine 4 trwają od 2003 roku[10]. Na konferencji DICE Summit w 2010 roku powiedział też, że silnik nie jest w stanie pracować na siódmej generacji konsol do gier i komputerów oraz że prawdopodobnie będzie wykorzystany w konsolach ósmej generacji. Czwarta wersja została wydana 19 marca 2014 roku[11]. Pierwszą grą opartą na tym silniku była Daylight. Miesiąc po premierze ukazała się pierwsza aktualizacja, która umożliwiła współpracę z PlayStation 4, Xbox One oraz Linuksem[2][3]. Od 2 marca 2015 silnik wraz z przyszłymi aktualizacjami stał się darmowy dla wszystkich twórców, którzy chcieliby tworzyć na nim gry. W przypadku produkcji komercyjnych, które zarobiły ponad trzy tysiące dolarów, twórcy zobowiązani byli do opłacania tantiem w wysokości pięciu procent zysków[12]. 13 maja 2020 próg dla tantiem podwyższono do wysokości miliona dolarów[13][14].
19 maja 2020 roku opublikowano demo technologiczne Unreal Engine 5, a wraz z nim zapowiedziano znaczące zmiany silnika[15]. Główną nowością jest wprowadzenie technologii oświetlenia globalnego „Lumen” oraz systemu „Nanite” umożliwiającego budowę sceny 3D o dużym poziomie szczegółowości. Dwa lata później, 5 kwietnia 2022 roku opublikowano silnik w wersji 5.0[16].
UnrealScript (skrótowo UScript) był obiektowym językiem skryptowym wykorzystywanym w silniku gry Unreal Engine do wersji trzeciej. Został on zaprojektowany do prostego wysokopoziomowego programowania gier komputerowych[17]. Jego twórcą jest Tim Sweeney, który zaprojektował również uprzednio wykorzystywany język skryptowy ZZT-OOP[18]. Strukturalnie przypominał język Java, jednak bez wielokrotnego dziedziczenia i bez wrapperów dla typów podstawowych. Obsługa interfejsów została wprowadzona dopiero w wersji z Unreal Engine 3 oraz w nielicznych grach na Unreal Engine 2. Możliwe było także przeciążanie operatorów, jednak bez przeciążania metod, z wyjątkiem parametrów opcjonalnych.
Główny programista Deus Ex, Chris Norden, opisał UnrealScript jako „super elastyczny”, ale ganił jego wolne działanie[19].
Na konferencji GDC w 2012 roku firma Epic ogłosiła, że język UnrealScript zostanie usunięty z silnika Unreal Engine 4 na rzecz języka C++. Skrypty wizualne miały być obsługiwane przez system Blueprints Visual Scripting, zastępujący wcześniejszy system skryptów wizualnych o nazwie Kismet[20][21].
Jednym z kluczowych momentów w rozwoju Unreal Engine 4 była seria debat na temat UnrealScript – języka skryptowego, który zbudowałem i który rozwijaliśmy przez trzy generacje. I co musieliśmy zrobić, aby w przyszłości uczynić go konkurencyjnym. Przeglądaliśmy coraz większe i większe listy rzeczy, które musimy zrobić, aby go zaktualizować i kto mógłby wykonać tę pracę, ale stawało się to bardzo, bardzo niepraktyczne. Odbyło się wielkie spotkanie, by spróbować to uporządkować, spróbować wyciąć pewne rzeczy i zdecydować, co zatrzymać, zaplanować i… był taki moment, kiedy na to spojrzałem i powiedziałem „wiecie, wszystko, co proponujecie dodać do UnrealScript jest już w C++. Dlaczego po prostu nie zabijemy UnrealScript i nie przejdziemy do czystego C++? Wiecie, maksymalna wydajność i maksymalna możliwość debugowania. Daje nam to wszystkie te korzyści.”
Verse jest nowym językiem skryptowym dla Unreal Engine, po raz pierwszy zaimplementowanym w grze Fortnite[22]. Simon Peyton Jones, jeden z twórców języka Haskell, dołączył do zespołu inżynierów Epic Games w grudniu 2021 roku i rozpoczął prace nad Verse razem ze swoim kolegą Lennartem Augustssonem i pozostałymi członkami zespołu[23]. Efekt tych badań został oficjalnie zaprezentowany na Haskell eXchange w grudniu 2022 roku jako otwarty język funkcjonalno-logiczny dla metaświata. Równolegle opublikowano także artykuł badawczy zatytułowany „The Verse Calculus: a Core Calculus for Functional Logic Programming”[24].
Język został ostatecznie wprowadzony na rynek w marcu 2023 roku w ramach wydania edytora Unreal Editor for Fortnite (UEFN) na Game Developers Conference. Udostępnienie go dla wszystkich użytkowników Unreal Engine jest planowane na 2025 rok[22].
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.