Unreal Engine

**Unreal Engine** (**UE**) je 3D počítačový grafický herný engine vyvinutý spoločnosťou Epic Games, ktorý bol prvýkrát predstavený v roku 1998 v strieľačke z pohľadu prvej osoby *[[Unreal (videohra z roku 1998)|Unreal]]*. Pôvodne bol vyvinutý pre PC strieľačky z pohľadu prvej osoby a odvtedy sa používa v rôznych žánroch hier a prijali ho aj iné odvetvia, najmä filmový a televízny priemysel. Unreal Engine je napísaný v jazyku C++ a vyznačuje sa vysokou mierou prenosnosti, pričom podporuje širokú škálu desktopových, mobilných, konzolových a virtuálnych platforiem.

Najnovšia generácia, Unreal Engine 5, bola spustená v apríli 2022. Jeho zdrojový kód je dostupný na GitHub a komerčné využitie je udelené na základe licenčného modelu, pričom Epic si účtuje 5 % z príjmov nad 1 milión USD, čo sa neplatí pre hry publikované exkluzívne v obchode Epic Games Store. Epic do enginu začlenil funkcie od akvizovaných spoločností, ako je Quixel, ktorá údajne profituje z príjmov *[[Fortnite]]*.

## História

### Prvá generácia

Unreal Engine 1 bol pôvodne vyvinutý v roku 1995 zakladateľom spoločnosti Epic Games Timom Sweeneym pre *[[Unreal (videohra z roku 1998)|Unreal]]* a používal softvérové ​​vykresľovanie. Podporoval Windows, Linux, Mac a Unix. Spoločnosť Epic neskôr začala licencovať engine iným herným štúdiám.

### Unreal Engine 2

Unreal Engine 2 prešiel zo softvérového renderovania na hardvérové ​​a priniesol podporu pre konzoly PlayStation 2, Xbox a GameCube. Prvá hra používajúca UE2 bola vydaná v roku 2002 a jej posledná aktualizácia bola dodaná v roku 2005.

### Unreal Engine 3

Unreal Engine 3 bol jedným z prvých herných enginov, ktoré podporovali multithreading. Ako základné grafické API používal DirectX 9, čím zjednodušil svoj vykresľovací kód. Prvé hry používajúce UE3 boli vydané koncom roka 2006.

### Unreal Engine 4

Unreal Engine 4 priniesol podporu pre fyzikálne materiály a vizuálny skriptovací systém „Blueprints“. Prvá hra využívajúca UE4 bola vydaná v apríli 2014. Bola to prvá verzia Unrealu, ktorú bolo možné bezplatne stiahnuť s licenčnými poplatkami z príjmov z hry.

### Unreal Engine 5

Unreal Engine 5 obsahuje Nanite, virtualizovaný geometrický systém, ktorý umožňuje vývojárom hier používať ľubovoľne kvalitné siete s automaticky generovanou úrovňou detailov (Level of Detail), a Lumen, dynamický systém globálneho osvetlenia a odrazov, ktorý využíva softvérové ​​a hardvérové ​​sledovanie lúčov. Bol predstavený v máji 2020 a oficiálne vydaný v apríli 2022.

### Unreal Engine 6
Sweeney hovoril o Unreal Engine 6 v podcaste Lexa Fridmana v roku 2025 a naznačil, že prvé ukážkové verzie budú dostupné o dva až tri roky. Ďalšia verzia sa bude snažiť zjednotiť v súčasnosti oddelené vývojové prúdy používané pre Fortnite a širší engine.

## Skriptovanie

### UnrealScript
UnrealScript (často skrátene UScript) bol natívny skriptovací jazyk Unreal Engine, ktorý sa používal na tvorbu herného kódu a herných udalostí pred vydaním Unreal Engine 4. Jazyk bol navrhnutý pre jednoduché programovanie hier na vysokej úrovni. UnrealScript naprogramoval Tim Sweeney, ktorý tiež vytvoril skorší herný skriptovací jazyk ZZT-OOP. Hlavný programátor *[[Deus Ex (videohra)|Deus Ex]]* Chris Norden ho opísal ako „super flexibilný“, ale poznamenal jeho nízku rýchlosť vykonávania.

Podobne ako Java, aj UnrealScript bol objektovo orientovaný bez viacnásobného dedenia (triedy dedia zo spoločnej triedy Object) a triedy boli definované v jednotlivých súboroch pomenovaných podľa triedy, ktorú definujú. Na rozdiel od Javy, UnrealScript nemal obaly objektov pre primitívne typy. Rozhrania boli podporované iba v Unreal Engine generácie 3 a v niekoľkých hrách Unreal Engine 2. UnrealScript podporoval preťažovanie operátorov, ale nie preťažovanie metód, s výnimkou voliteľných parametrov.

Na konferencii vývojárov hier v roku 2012 spoločnosť Epic oznámila, že UnrealScript bude odstránený z Unreal Engine 4 v prospech C++. Vizuálne skriptovanie bude podporované systémom vizuálneho skriptovania Blueprints, ktorý nahradí skorší systém vizuálneho skriptovania Kismet.

### Verse
Verse je nový skriptovací jazyk pre Unreal Engine, prvýkrát implementovaný vo *[[Fortnite]]*. Simon Peyton Jones, známy svojimi príspevkami k programovaciemu jazyku Haskell, sa pripojil k Epic Games v decembri 2021 ako inžiniersky pracovník, aby pracoval na Verse so svojím dlhoročným kolegom Lennartom Augustssonom a ďalšími. Navrhnutý Sweeneym, bol oficiálne predstavený na Haskell eXchange v decembri 2022 ako open source funkcionálno-logický jazyk pre metaverzum. Bol tiež publikovaný výskumný článok s názvom *The Verse Calculus: a Core Calculus for Functional Logic Programming*.

Jazyk bol nakoniec spustený v marci 2023 ako súčasť vydania Unreal Editor pre Fortnite (UEFN) na konferencii vývojárov hier s plánmi, že bude dostupný pre všetkých používateľov Unreal Engine do roku 2025.

## Referencie

Kategória:Herné enginy
Kategória:3D grafický softvér
Kategória:Epic Games
Kategória:Unreal