Daleko nejoblíbenějšími enginy pro menší herní vývojáře jsou Unity a Unreal Engine, a to z dobrého důvodu.
Unity vs Unreal je vášnivě diskutované téma, srovnatelné s tématem Microsoft vs Apple.
Oba jsou schopny vytvářet grafiku v kvalitě AAA, oba mají skvělé mosty mezi většinou standardních softwarů v oboru.
Přicházejí s rozsáhlou sadou nástrojů včetně editoru terénu, simulace fyziky, animací, pokročilého osvětlení, podpory VR a mnoha dalších.
Bývaly doby, kdy bylo možné jednotlivé enginy snadno rozlišit pouhým pohledem na hru. Oba měly svůj vlastní „vzhled“, dobrý i špatný.
Tato doba však pominula a pouhým pohledem na výsledek jste jeden engine od druhého nerozeznali. Vezměme si jako příklad výše uvedený obrázek, levá postava byla vykreslena v Unrealu a pravá v Unity.
Je více v rukou herních designérů, aby hra vypadala určitým způsobem, což je dobře!
Na první pohled to tedy vypadá, že máme remízu? No.. Ne tak docela.. Každý engine má své výhody i nevýhody. Jak se říká, krása je v očích diváka, a to platí i pro herní enginy.
Pokud se teprve začínáte učit dělat hry, nebo jste možná trochu zkušenější a zajímá vás, zda jste se rozhodli správně. Přečtěte si, jak se ponoříme hlouběji do této probíhající války dvou titánů Unity vs. Unreal.
Video (článek napsaný níže)
V případě, že se chcete raději opřít a poslouchat, vložil jsem video, které podrobně popisuje mé zkušenosti s oběma enginy. Video obsahuje aktuálnější informace a vzhledem k tomu, že bylo nahráno až poté, co jsem původně napsal tento článek, je v něm i několik zajímavostí navíc.
Pokud byste raději četli, pokračujte a sjeďte dolů pro celý článek. Na aktualizaci článku právě pracuji. (95 % informací je však stále velmi platných). Srovnání cen bylo aktualizováno v roce 2020.
Úvod
Společnost Unity, která byla založena v roce 2004 s cílem zpřístupnit vývoj her všem a nejen velkým společnostem, přesně to dokázala.
Téměř každý nezávislý vývojář her buď začínal s Unity, nebo ho stále používá jako svůj hlavní nástroj.
Díky velmi intuitivnímu designu a kódovacímu jazyku C# se snadno učí a používá. Skvělá komunita, obrovský obchod s prostředky, spousta tutoriálů a kurzů, které lze najít online.
To vše dělá z Unity přesvědčivou volbu pro menší týmy a lidi, kteří s tvorbou her teprve začínají.
Pokud se chcete podívat na příklady toho, co Unity dokáže, přinášíme vám seznam nejlepších her vytvořených v Unity.
Společně s debutovým titulem „Unreal“ jej vyvinula a v roce 1998 vydala společnost Epic Games, následoval superhit „Unreal Tournament“. Hra Unreal byla vždy známá svou brzdící grafikou a přítomností ve špičce herní kultury AAA.
Nyní se svým nejnovějším cenovým modelem zpřístupňuje i menším vývojářům, čímž se Unreal dostává do konkurenčního boje s Unity.
Ačkoli je jeho dokumentace poněkud nepřehledná, nemá tak širokou komunitu jako Unity. Některá zastrašující rozhraní, nemluvě o tom, že kódovacím jazykem je C++.
Nabízí výkonný herní engine, který posouvá grafiku na nejvyšší úroveň při zachování efektivity. Unreal je nabitý funkcemi a nástroji, po jejichž zvládnutí vám nebude klást žádné meze při realizaci vašich vizí.
S posledním úsilím společnosti Epic o zpřístupnění Unrealu zavedením Blueprints (vizuálního kódovacího systému), neustálým úsilím o zlepšení dokumentace, výukového obsahu a velkým důrazem na budování komunity je Unreal solidní volbou pro každého herního vývojáře.
Grafika

Teď, když máme trochu pozadí, přejděme ke koňským silám obou motorů.
Oba enginy podporují 2D i plně 3D renderované hry. Používají nejnovější technologie včetně PBR (Physically-Based Rendering), GI (Global Illumination), objemových světel, postprocesingu, pokročilých shaderů a mnoho dalšího.
Na papíře to vypadá, že je jedno, který engine si vyberete, pokud je pro vás důležitá vizuální stránka.
Ačkoli můžete být schopni dosáhnout stejného výsledku pomocí obou enginů, v tomto ohledu Unity bohužel zaostává.
Unreal – grafika
Jak jsem již zmínil, podobných výsledků MŮŽETE dosáhnout pomocí obou enginů. Unreal je však nabitý nástroji, předvolbami, které skutečně fungují hned po vybalení z krabice a dají se snadno upravit.
Volumetrická světla, postprocesing, odlesky objektivu, na co si vzpomenete. Všechno je tam připraveno k použití a vypadá to skvěle od okamžiku, kdy to pustíte.
Osvětlení v Unrealu vypadá ve srovnání s Unity mnohem přesněji a plynuleji. Když zapékáte osvětlení s „produkční kvalitou“, vypadá úžasně, s minimem, ale většinou bez grafických závad nebo podivných artefaktů.
Stíny mají pěkný falloff a vyleštěný vzhled. To vše při použití mnohem menšího počtu kreslicích volání než Unity, což výrazně zlepšuje výkon.
Je také vybaven úžasným editorem materiálů, pomocí grafu uzlů můžete snadno vytvářet a upravovat materiály. It works very similarly to other 3D softwares like Maya or 3DS MAX. This enabling you to quickly adjust and iterate with live feedback within Unreal itself.


Post processing is fully integrated and ready to use, giving you a wide option for grading, lens flares, volumetric effects etc.
The system is similar to what is used in the film industry giving it a smooth cinematographic feel.
You also have the option to place trigger volumes around the world, so that when a player enters that volume the colors change. Tj. na chladnější modrou, což vám umožní nastavit náladu pro různé oblasti na mapě apod

Unity – grafika
Na jejím vylepšování se neustále pracuje, Unity však postrádá určitou vybroušenost, pokud jde o vytvoření dobře vypadajícího výsledku.
Může se stát, že budete mít problém dosáhnout toho, co jste si představovali. Bude to chtít trochu odhodlání, nicméně se vám to podaří, ale ne bez námahy.
Systém osvětlení je poměrně moderní a podporuje nejnovější technologie, jako je PBR a GI, jak již bylo zmíněno, ale mnohokrát se přistihnete, že osvětlení scény pečete a snažíte se vyřešit podivné artefakty a další problémy.
Detaily stínů nejsou tak pěkné jako v Unrealu, ale rozhodně nejsou špatné. S novou aktualizací 2018 Unity aktualizovalo na lehčí model osvětlení, což bylo rozhodně potřeba. Ve srovnání s Unrealem to však stále může být lepší.
Unity nemá téměř žádný editor materiálů, podporuje však obvyklé normálové mapy, mapy okluze, základní textury atd. s některými velmi omezenými parametry k úpravě.
Ale i tak se vám bude stávat, že budete často přepínat mezi svým texturovacím programem a Unity, budete muset provádět drobné úpravy, exportovat všechny soubory, vyzkoušet je v Unity, pak opláchnout a opakovat.
Poznámka – Unity vydalo beta verzi s obsaženým editorem materiálů, který však vyžaduje velmi specifická grafická nastavení a může se stát docela zmatkem. Pro začátečníky a středně pokročilé uživatele není zrovna jednoduché používat jejich grafické shadery, navíc je stále v beta verzi, což znamená, že nebyl řádně integrován do Unity, a proto jej nebudu považovat za oficiální funkci… zatím 🙂
Post processing se nabízí, ale je třeba jej stáhnout z obchodu s prostředky a nainstalovat (zdarma) a funguje, ale má tendenci házet chyby v konzoli a má spoustu dalších omezení. I když dělá, co potřebuje, stále působí dost primitivně a nedotaženě ve srovnání s tím, co nabízí Unreal.
Křivka učení

Tady Unity září. Díky jeho intuitivnímu rozhraní budete s enginem experimentovat a zkoušet různé herní nápady během chvilky. A je to opravdu zábava!
Je to tak rychlé a snadné, že můžete něco spíchnout a podělit se o to s přáteli. Je to prostě tak zjednodušené a snadno pochopitelné.
A to nemluvím o obrovském množství obsahu, který je k dispozici online. Od kurzů po jednoduché návody, fóra a vynikající dokumentaci se skvělou funkcí vyhledávání atd.
Ať už máte jakýkoli problém, můžete si být jisti, že v dokumentaci najdete příspěvek na fóru nebo stránku, která vám objasní vaše nejasnosti.
Unreal… No, je to zastrašující. Těžké. Frustrující. Těžké..
C++ je docela potvora, která vám zamotá hlavu, systém Blueprint sice pomáhá (do Blueprintů se ponoříme hlouběji dále), ale bez znalosti C++ si budete dost tahat vlasy.
Rozhraní je sice pěkné, ale obrovské, s nekonečným množstvím dalších vyskakovacích oken napěchovaných ještě více tlačítky, která vás zmatou.
To v kombinaci s faktem, že na internetu prostě není tolik výukového obsahu jako u Unity, dokumentace, která není tak snadno čitelná, a nepříliš početná komunita, která by vám pomohla s problémy (i když to se snad v nepříliš vzdálené budoucnosti zlepší).
Pokud se dostanete k nějakému problému, můžete snadno strávit hodiny hledáním řešení na internetu – a ani se vám nemusí nutně podařit najít to, co potřebujete.

Jestliže s tvorbou her začínáte, rozhodně nedoporučuji začínat s Unrealem, vzdáte to.
A než mi v komentářích vynadáte, protože VY jste náhodou začali s Unrealem bez zkušeností a jde vám to skvěle, tak gratuluju… vy génie… 🙁
Já to rozhodně vzdal rychleji než rychlostí světla, když jsem poprvé otevřel Unreal.
Toolbox
Oba enginy se dodávají se sadou nástrojů, se kterými si můžete hrát.
Oba mají své vlastní obchody s prostředky, kde najdete velké množství zásuvných modulů, kusů kódu, animací a modelů, z nichž některé vytvořil Unreal/Unity, ale také rozšíření vytvořená komunitou.
Obchody s aktivy jsou také příležitostí k prodeji a sdílení toho, co jste vytvořili.

Unity – toolbox
Unity comes loaded with tools for you to use, including Physics, Animation, Lighting, Event triggers, Audio and much more.
But even so, there is still a lot to be desired, after spending some time in Unity, I can’t help but feeling the emptiness a bit.

And the tools that actually do come with Unity feel.. Well, not great.
Every time I start getting into the polish of a game mechanic, even something as basic as an FPS player controller, I find myself having to rebuild it from scratch.
Taking the FPS controller as example, which is probably the most common function on average in modern games. Ten, který je součástí Unity, působí nafoukle, neoptimalizovaně a upřímně řečeno, při hraní nepůsobí zrovna nejlépe.
To platí i pro spoustu dalších nástrojů, některé z nich sice fungují, ale aby fungovaly správně, můžete potřebovat zásuvný modul, kterým nástroj berličkujete, nebo prostě strávíte spoustu času tím, že se s ním budete piplat.
Nemůžete se ubránit pocitu, že všechno vypadá tak trochu osekaně, stejně jako standardní nástroje, které začnou v konzoli házet chyby, i když jste se ještě ničeho nedotkli.
Podtrženo a sečteno, pokud se chystáte vytvářet hry v Unity, připravte se na to, že si spoustu nástrojů budete psát sami, protože standardní balík vás velmi rychle omrzí.
Naštěstí je obchod s prostředky Unity přeplněn zásuvnými moduly, rozšířeními a dalšími užitečnými věcmi, které vám pomohou tyto chybějící kousky zakultivovat, a to obvykle za rozumnou cenu.
Je ale v pořádku spoléhat se tak silně na komunitu, že za vás engine opraví?
Ale nakonec je velmi snadné pustit se do vytváření vlastních nástrojů v rámci Unity a také je to opravdu zábavné, pokud vás takové věci samozřejmě baví.
Rozhodně to zkuste, než mě v tomto bodě budete příliš poslouchat. Možná Unity nabízí přesně to, co potřebujete k dokončení své hry!
Unreal – sada nástrojů
V podobném případě jako v případě srovnání grafiky je Unreal vybaven obrovským množstvím nástrojů a funkcí, které z velké části prostě vypadají, že fungují přímo z krabice.
Nevýhodou je, že je opět velmi komplikovaný. Někdy máte pocit, že se nacházíte uprostřed bludiště a netušíte, kam jít. Ale jakmile cestu poznáte, nic vás nezastaví.
Všechny nástroje se zdají být dobře integrované, nic není jakoby nabourané, je to robustní a funguje to.
Všechny nástroje se zdají být dobře integrované, nic není jakoby nabourané, je to robustní a.. Většinou 🙂
K dispozici je samozřejmě i obchod s prostředky, který není tak zásobený jako ten v Unity a je v průměru o něco dražší. Ale i tak může poskytnout skvělou podporu pro vaši hru.
Pokud chcete ovladač pro 3rd person hráče, hoďte ho tam a stiskněte play. Můžete začít běhat, skákat, krčit se a v mžiku otestovat úroveň. Nemusíte importovat balíčky ani šmátrat v nastavení, aby to fungovalo.

Terénní editor s přehledem překonává Unity. Nemá konkurenci.
Ale… Co když vám chybí něco, co nutně potřebujete? A zdá se, že obchod s aktivy nenabízí to, co požadujete?
Stejně jako u Unity máte možnost vytvořit si vlastní nástroje, ale protože vše musí být napsáno v jazyce C++, a jen fakt, že Unreal je obecně trochu pokročilejší. Nepochybně budete mít s psaním vlastních nástrojů větší potíže. Přinejmenším na začátku.
Coding
Unity uses C# which is fairly similar to C++ but a lot simpler and easier to learn.
This making it a great first step to learning how to code.
Unreal is full on C++ which is arguably the hardest coding language to learn, but they do also have what they call Blueprints.

Blueprints is a visual scripting system where you do not have to put in a single line of code.
You connect nodes together with various function and can that way „code“ your game’s different behaviours without actually having to code.
While it is great and you probably could make a whole game without a single line of code this way. In it’s current state, some things are just better done in code.
Having some C++ skills will be very useful when working in Unreal.
2D games

If you are looking at creating 2D content, there really isn’t much to talk about. Your best bet will be Unity.
With its simplified UI and very well developed 2D tools, intuitive sprite animation etc – you really can’t go wrong with Unity.
It can of course be done in Unreal as well, but there just isn’t much point as Unreal is not developed for 2D games. It will add an unnecessary level of complexity that just simply isn’t needed.
Price
Unity is available in three options, Personal, Plus and Pro.
The personal edition comes with all core features and is completely free. You are allowed up to $100K USD in annual revenue. Před spuštěním hry jste také nuceni mít úvodní obrazovku „Made in Unity“.
Plus vám umožňuje roční příjmy až 200 tisíc USD a při registraci na rok vás vyjde na 40 USD měsíčně v rámci předplatného. Přináší také další výhody, jako jsou – vlastní úvodní obrazovka, 20% sleva v obchodě s aktivy a hlášení pádů výkonu a další.
Pro vám poskytuje všechny výhody Plus a nemá žádný limit ročních příjmů. Je za příznivou cenu 150 dolarů měsíčně. Pokud ale vyděláváte více než 200 tisíc dolarů ročně, opravdu to není problém 😉
Více informací o cenách Unity najdete zde.
Unreal má jiný přístup – poskytne vám kompletní engine se všemi jeho funkcemi zdarma. Po dodání hry jim však navždy dlužíte 5 % z celkových příjmů. S výjimkou prvních 3000 dolarů za hru za kalendářní čtvrtletí, z nichž si ponecháte 100 %.
Další informace o cenách Unrealu najdete zde.
Co ostatní enginy?

Existují i jiné enginy, například Cry Engine od společnosti CryTek, který se také začal zaměřovat na širší publikum a používá stejný cenový model jako Unreal a začal se prosazovat u menších vývojářů. Možná uděláme srovnání včetně enginu Cry dále.
K překvapení všech, Amazon uvolnil motor Lumberyard, a nejen to. Je zdarma. Tečka. Žádné licenční poplatky, žádné předplatné. Zdarma.
Jejich představa je taková, že pokud vytvoříte hru pro více hráčů, můžete Amazonu zaplatit za hosting serveru a doufat, že místo toho vyděláte jejich peníze. Hra je založena na enginu CryTek, takže se nenechte mýlit tím, že se nejedná o plnohodnotný AAA engine.
I have not yet tried it so I can not form an opinion about it just yet but I will definitely get in there and test it out as soon as time allows.
GameMaker developed by YoYo is another option, it focuses primarily on 2D games. It is not as powerful as Unity or Unreal, but might be a great option if you want to get your feet wet and try some 2D game deving. Some great indie titles have been made using GameMaker, take Hyper Light Drifter for example. Gorgeous.
Conclusion – which engine is right for YOU?
Unreal je v mnoha ohledech skvělý, ale díky své strmé křivce učení může být docela od věci, pokud jste začátečník. Dokonce i Unity může na začátku působit docela zastrašujícím dojmem!
Ale Unreal je rozhodně nejlepší volbou, pokud se chcete zaměřit na špičkovou grafiku a hratelnost.
Jistě, Unity má některé nedostatky a možná nevytáhne grafiku tak vysoko jako Unreal, ale i tak dokáže vytvořit skvěle vypadající výsledek. Vytvořit hotovou hru v Unity bude mnohem snazší a rychlejší než v Unrealu, alespoň ze začátku.
Takže verdikt zní: Pokud jste na tuto stránku přišli s tím, že chcete začít s tvorbou her jako koníčkem nebo kariérou, je pravděpodobné, že byste rozhodně měli začít s Unity.
A na Unreal přejít později, až budete mít nějaké zkušenosti.
Poté si můžete vytvořit vlastní názor na to, která cesta je pro vás nejvhodnější.
Spousta toho, co se naučíte v Unity, se dá víceméně použít i v Unrealu, takže nemějte pocit, že učit se Unity je ztráta času.
Učení
Ben Tristem vytvořil několik skvělých kurzů pro Unity i Unreal, jeho kurzy nemohu než doporučit. Díky jeho stabilnímu tempu a intuitivním výzvám je učení se kódování a ovládání softwaru tak zábavné a snadné!
Můžete se samozřejmě podívat i na webové stránky Unity i Unrealu, protože nabízejí pěkné výukové materiály. Doporučoval bych ale nejprve absolvovat Benovy kurzy, abyste se rozkoukali a zvýšili si sebevědomí.