← Zpět na přehled PVR
NI-PVR • Pokročilá virtuální realita

3D Herní enginy pro VR

Přehled, architektura a srovnání vývojových prostředí pro virtuální a smíšenou realitu

Petr Pauš
FIT ČVUT v Praze
Přehled • Ekosystém vývojových nástrojů

Vývojová prostředí s podporou VR

„Velké“ enginy (AAA & Indie)

  • Unity3D: Nejrozšířenější multiplatformní engine, standard pro mobilní VR (Meta Quest).
  • Unreal Engine: Špičkový fotorealismus, nativní C++, Nanite a Lumen pro PCVR a konzole.
  • CryEngine: Původní průkopník fotorealistického renderingu velkých exteriérů.

Webové frameworky (WebVR / WebXR)

  • A-Frame: Deklarativní HTML framework od Mozilly postavený nad Three.js.
  • React VR / React 360: Komponentový přístup k tvorbě interaktivních 360° zážitků.

Další možnosti

  • Godot Engine: 100% free open-source (MIT licence), lehký editor, podpora OpenXR.
  • Amazon Lumberyard / O3DE: Engine odvozený z CryEngine s cloudovou integrací AWS.

Neos VR (Resonite)

  • Online kolaborativní VR editor a sociální metaverzní svět přímo uvnitř VR headsetu.
  • Český start-up (Tomáš Mariančík), k dispozici zdarma na Steamu, výuka BI-VR1.
Unity Logo • Unreal Engine Logo • CryEngine Logo
Standardizace • Architektura API

Ekosystém vývoje & standard OpenXR 1.1

Historická fragmentace (Legacy SDKs)

V minulosti museli vývojáři integrovat proprietární rozhraní pro každé zařízení zvlášť: Oculus SDK, SteamVR / OpenVR, Windows Mixed Reality nebo HTC Vive Wave. To vedlo k vendor lock-in a neudržitelnému kódu.

Standard Khronos Group

OpenXR je bezplatný, otevřený průmyslový standard podporovaný společnostmi Meta, Valve, Microsoft, Apple, Sony i Google. Verze OpenXR 1.1 sjednocuje klíčová rozšíření přímo do jádra (multi-view, hand tracking, foveated rendering a spatial anchors).

Vrstvy architektury OpenXR

1. Aplikace / Herní engine: Unity, Unreal Engine, Godot, WebXR runtime.
2. OpenXR API Layers: Validace, trasování, API overlay a zachytávání snímků.
3. OpenXR Loader: openxr_loader.dll / .so detekuje aktivní runtime.
4. OpenXR Runtime & Ovladač: Meta Quest Link/Native, SteamVR, Monado (Linux).
Výkon • Fyziologie a časový rozpočet

Limity hardwaru & Frame Budget ve VR

Důležité: M2P < 20 ms

Motion-to-Photon (M2P) latence: Čas od fyzického pohybu hlavy po rozsvícení (pixelů) fotonů na displeji musí být striktně pod 20 ms. Překročení způsobuje vestibulární konflikt a okamžitou nevolnost (kinetózu).

Přísný Frame Budget na snímek

  • 72 FPS (Quest minimum): 13,88 ms na celý snímek.
  • 90 FPS (Standard pro komfortní VR): 11,11 ms.
  • 120 FPS (High-end / soutěžní tituly): 8,33 ms.
V tomto čase musí CPU spočítat logiku + fyziku (~3 ms), odeslat draw cally (~2 ms) a GPU dokončit rasterizaci i kompozici (~5 ms).

Záchranné mechanismy: Reprojekce

Pokud engine nestihne vyrenderovat snímek včas, zapojí se asynchronní warping na compositing vrstvě:

  • ATW (Asynchronous Timewarp): Rotace posledního hotového snímku na GPU těsně před V-Sync dle nejčastějšího čtení IMU gyroskopu.
  • ASW (Asynchronous SpaceWarp / Motion Smoothing): Využívá pohybové vektory (Motion Vectors) a hloubku pro interpolaci chybějícího snímku při polovičním framerate (45 → 90 FPS).

Pozor na vizuální artefakty

Reprojekce není náhrada za špatnou optimalizaci. Vede ke zvlnění hran (wobbling), chybám v okluzi a duchům při rychlém pohybu rukou.

Unity3D • Úvod a architektura

Unity3D: základní informace

Historie & Filozofie

Vývoj od roku 2004 (původně vývojové prostředí pro Mac OS X postavené na běhovém prostředí Mono). Cílem bylo zpřístupnit herní a interaktivní 3D vývoj široké veřejnosti.

  • Cílová skupina: Mimořádně vhodné pro začínající i pokročilé vývojáře a indie týmy.
  • Programovací jazyk: Primárně C# (.NET ekosystém, IL2CPP AOT překlad).
  • Dimenze: Plnohodnotná podpora pro 2D i 3D grafiku ve stejném editoru.
  • Cenový model:
    • Zdarma (Personal): Do obratu $200k ročně.
    • Komerční předplatné: Měsíční poplatky za licence Unity Pro / Enterprise.
Uživatelské rozhraní editoru Unity
Uživatelské rozhraní editoru Unity (Scene, Hierarchy, Inspector, Project)
Unity3D • Silné stránky

Unity3D: výhody

Vývoj & Ergonomie

  • Rychlé zaučení: Intuitivní grafické rozhraní, logická hierarchie GameObjectů a komponent.
  • C# přístupnost: Jazyk C# je výrazně jednodušší a bezpečnější než nízkoúrovňové C++ (automatická správa paměti, silné typování).
  • Blesková kompilace: Rychlý build a okamžitá iterace v režimu Play bez restartu editoru.

Komunita & Ekosystém

  • Obrovská komunita: Nepřeberné množství tutoriálů, oficiální dokumentace, učebnic a fór.
  • Obsáhlý Asset Store: Tisíce hotových 3D modelů, animací, VR frameworků i bezplatných skriptů.
  • Unity Ads & Analytics: Vestavěné služby pro snadnou monetizaci a telemetrii projektů.

Multiplatformnost & VR

  • Podpora 20+ platforem: Windows, macOS, Linux, Android, iOS, WebGL, PlayStation, Xbox.
  • Prvotřídní VR/AR ekosystém: Meta Quest 2/3/Pro, Pico, HTC Vive, Valve Index, Apple Vision Pro.
  • Univerzálnost: Od lehkých 2D hříček přes mobilní VR simulace až po průmyslová digitální dvojčata.

Moderní grafické technologie

  • Renderovací pipeliny: Universal Render Pipeline (URP pro VR/mobily) a High Definition Render Pipeline (HDRP).
  • Vizuální shadery: Node-based nástroj Shader Graph pro tvorbu PBR materiálů bez psaní kódu.
  • Globální osvětlení: Pečené i dynamické GI, světelné sondy a pokročilý postprocessing.
Unity3D • Limity a slabiny

Unity3D: nevýhody (oproti UE)

Grafika & Vizuální věrnost

Horší práce se světlem a materiály out-of-the-box: Dosažení filmového fotorealismu vyžaduje v Unity značné úsilí a expertní ladění osvětlovacích modelů ve srovnání s Unreal Engine.

Uzavřenost jádra

Není volně dostupný zdrojový kód: C++ jádro enginu je uzavřené. Přístup ke zdrojovému kódu je možný pouze pro enterprise partnery za velmi vysoké licenční poplatky.

Vizuální skriptování

Historicky chybělo vestavěné vizuální programování. Nástroj Bolt byl integrován až později, ale nedosahuje popularity ani možností Unreal Blueprints.

Výkon a správa paměti

Garbage Collector spikes: Automatický úklid paměti v C# může způsobit mikrozáseky (stuttering). Ve VR, kde je nutné držet stabilních 72/90/120 FPS, může jakýkoliv drop snímku vyvolat nevolnost (kinetózu).

AAA segment

Méně velkých AAA blockbusterů: Většina největších herních studií volí pro velké fotorealistické projekty Unreal nebo vlastní interní engine.

Správa balíčků (Package Manager)

Přechod na modulární balíčky často vede k „dependency hell“, kde se jednotlivé experimentální verze balíčků navzájem vylučují nebo po aktualizaci rozbijí projekt.

Unity3D • Subsystémy a architektura

Unity3D: možnosti a subsystémy

Grafika & Vizuál

  • Osvětlení: Real-time i baked Global Illumination, světelné a reflexní sondy (Light & Reflection Probes).
  • Částicové efekty: CPU systém Shuriken a vysoce výkonný GPU VFX Graph pro miliony částic.
  • Postprocessing: Integrovaný Volume stack (Bloom, Color Grading, Ambient Occlusion, Depth of Field).

Fyzika & Prostředí

  • Fyzikální simulace: Integrovaná NVIDIA PhysX (3D) a Box2D (2D fyzika).
  • Kolize & Události: Rigidbodies, konvexní a mesh collidery, triggers, Raycasting a event dispatch.
  • Terén: Výškový editor krajiny, stromy, dynamická tráva a detailní textury.
  • Simulace látek (Cloth): Fyzika tkanin, oděvů a vlajek ve větru.

Animace, Audio & VR

  • Animace (Mecanim): Stavové automaty, blend trees, ragdoll a Inverse Kinematics (IK).
  • Prostorový zvuk (Spatial Audio): 3D poziční audio, mixéry, audio filtry a reverb zóny.
  • VR & Smíšená realita: XR Interaction Toolkit, OpenXR standard, hand tracking, teleportace a grabování objektů.
Unity3D • Technologická dema

Unity3D: ukázky možností enginu

The Heretic
▶
The Heretic Demo
https://youtu.be/iQZobAhgayA
Book of the Dead
▶
Unity Forest Demo (Book of the Dead)
https://youtu.be/YjgO6ok2xcg
Unity 2019.3
▶
Unity 2019.3 Tech Demo & Ray Tracing
https://youtu.be/gincn1XNs14
Unity 6
▶
Time Ghost | Unity 6
https://www.youtube.com/watch?v=o1JIK5W3DRU
Unreal Engine • Úvod a architektura

Unreal Engine: základní informace

Historie & Pozice na trhu

Vyvíjen společností Epic Games od roku 1998 (původně pro průlomovou 3D FPS hru Unreal pod vedením Tima Sweeneyho). Dnes představuje absolutní špičku v oblasti fotorealistické 3D grafiky.

  • Programovací jazyky & logika:
    • C++: Maximální nativní výkon a přímý přístup k jádru enginu.
    • Blueprints: Vizuální programování bez nutnosti kompilace C++.
    • Historicky: Vlastní skriptovací jazyk UnrealScript.
  • Zaměření: Primárně 3D grafika, špičkové shadery, dynamické GI a filmový post-processing.
  • Multiplatformní build: PC, herní konzole (PS5, Xbox), iOS, Android a VR zařízení.

Průmyslové nasazení

Masivně využívaný nejen v herním AAA průmyslu, ale i v Hollywoodu (virtuální produkce seriálu The Mandalorian na obřích LED stěnách StageCraft), architektuře a automobilovém průmyslu.

Licenční a obchodní model

  • 100% zdarma pro vývoj i výuku: Kompletní funkce bez omezení.
  • Royalty model: Platí se 5 % z tržeb až po překročení $1M hrubého zisku.
  • 0% poplatky na EGS: Při distribuci přes Epic Games Store je royalty poplatek zcela odpuštěn.
Unreal Engine • Silné stránky

Unreal Engine: výhody

Zdrojový kód & Editor

  • Zdroják na GitHubu: Kompletní zdrojový kód v C++ je volně přístupný po bezplatné registraci. Lze prozkoumat, ladit a upravit libovolnou část enginu.
  • Moderní integrovaný editor: Špičkové rozhraní s propracovaným materiálovým editorem, křivkami animací a debuggingem Blueprints.

Výkon & Optimalizace jádra

  • Nativní C++ výkon: Žádný overhead virtuálního stroje ani záseky způsobené Garbage Collectorem.
  • Špičková optimalizace: Propracovaný paměťový alokátor a paralelní task grafy pro moderní vícejádrová CPU.

Grafický výstup & Megascans

  • Bezkonkurenční grafika out-of-the-box: Scéna s výchozím nastavením materiálů a světel vypadá okamžitě fotorealisticky.
  • Quixel Megascans zdarma: Přístup k největší světové knihovně fotogrammetrických 3D modelů a textur.
  • Měsíční bezplatný obsah: Epic dává každý měsíc komunitě zdarma profesionální balíčky a assety.

Zázemí & Ostrá produkce

  • Zázemí v AAA produkci: Desítky světových hitů (Gears of War, Batman: Arkham, Tekken, Final Fantasy VII Remake).
  • Testování: Epic engine neustále testuje a profiluje na hře Fortnite pro stovky milionů hráčů napříč všemi platformami.
Unreal Engine • Limity a slabiny

Unreal Engine: nevýhody

Obtížnost učení & Komplexita

  • Strmá učební křivka: Mnohem obtížnější na zvládnutí pro začátečníky než Unity.
  • C++ komplikovanost: Nutnost chápat správu paměti, práci s pointery a specifická makra Unrealu (UPROPERTY, UFUNCTION, UCLASS).
  • Úskalí Blueprints: Při komplexnější herní logice snadno vzniká nepřehledný „spaghetti kód“, který se velmi obtížně diffuje v verzovacích systémech (Git).

Komunita & Podpora začátečníků

Menší komunita pro začínající vývojáře než u Unity, méně učebnic a specializovaných návodů. Dokumentace bývá u pokročilých témat nekompletní a vyžaduje studium C++ kódu.

Extrémní hardware & Doby kompilace

  • Extra pomalá kompilace: Sestavení C++ projektů trvá minuty až desítky minut.
  • Kompilace shaderů: Po otevření nového projektu může engine kompilovat velký počet shaderů.
  • Pomalý import assetů: Příprava meshů, generování Distance Fields a baking dost trvají.

Zaměření & Opuštěné segmenty

  • 2D je víceméně opuštěno: Modul Paper2D se již nevyvíjí.
  • Silná specializace: Zaměřený hlavně na 1st a 3rd person 3D akce.
  • HTML5 / Web: WebGL výstup byl zrušen.
  • Menší Asset Marketplace: Menší počet.
Unreal Engine • Pokročilé technologie

Unreal Engine: možnosti a architektura

Tradiční subsystémy špičkové třídy

  • Animace: Control Rig (tvorba animací přímo v editoru), Full-body Inverse Kinematics, Blend Spaces a stavové automaty.
  • Fyzika (Chaos): Vysoce výkonná simulace destrukce zdiva, Ragdoll, vozidla a fluidní efekty.
  • Zvuk (MetaSounds): Procedurální syntéza audia a node-based zvukový subsystém nové generace.
  • VR & XR: Plná podpora OpenXR, optimalizovaný Forward Shading renderer pro ostrý stereoskopický obraz a MSAA vyhlazování.
  • Materiálový editor: Pokročilý node-based systém s podporou subtilních PBR shaderů.

Převratné inovace v Unreal Engine 5

  • Nanite (Virtualizovaná geometrie):
    Umožňuje importovat filmové modely se stovkami milionů polygonů bez nutnosti ručně vytvářet úrovně detailů (LOD) nebo péct normálové mapy.
  • Lumen (Globální osvětlení a odrazy):
    Plně dynamické GI v reálném čase reagující okamžitě na změny geometrie a světel (žádné zdlouhavé pečení lightmap!).
  • Niagara: Nová generace částicového systému počítaného na GPU pro simulace kouře, ohně, tekutin a hejn.
  • Chaos Cloth & Groom: Fyzika látek a fotorealistické prameny vlasů a chlupů.
Unreal Engine • Technologická dema

Unreal Engine: ukázky možností enginu

Lumen in the Land of Nanite
▶
Unreal Engine 5: Lumen in the Land of Nanite
https://youtu.be/qC5KtatMcUw?t=81
A Boy and His Kite
▶
Unreal Engine 4: Open World Demo (A Boy and His Kite)
https://youtu.be/tn607OoVoRw
UE4 Raytracing
▶
Unreal Engine 4: Real-Time Ray Tracing Demo
https://youtu.be/J3ue35ago3Y
UE4 Raytracing
▶
Unreal Engine 5: The Witcher Tech demo
https://www.youtube.com/watch?v=Nthv4xF_zHU
Godot • Open-source alternativa

Godot Engine: svobodný herní engine

  • Lehký multiplatformní editor: Windows, macOS, Linux (velikost instalátoru pouze desítky MB, spustí se okamžitě bez instalace).
  • Multiplatformní výstup: Windows, macOS, Linux, mobily (Android, iOS), Web (HTML5/WebAssembly), konzole (přes partnery).
  • Jazyky: GDScript (Python-like skriptovací jazyk), C# (.NET) a nativní C++ (GDExtension).
  • Grafický backend: Vulkan, OpenGL ES 3.0 / 2.0; podpora HDR, PBR, shaderů a FXAA/TAA.
  • VR podpora: Integrovaný OpenXR modul v jádru.
  • Slabina: Méně celosvětově známých AAA her (spíše indie scéna: Brotato, Cassette Beasts).

2D a 3D free open-source engine šířený pod MIT licencí. Žádné licenční poplatky, žádná procenta z tržeb.

Godot Engine Logo
Godot 3D Grafika
Godot 3D grafické možnosti, PBR materiály a stínování
Godot • Editor a architektura uzlů

Godot Engine: editor a architektura uzlů

Godot Engine Editor Interface
Uživatelské rozhraní editoru Godot (Scene Tree, 3D Viewport, Inspector, FileSystem)

Architektura: Vše je uzel (Node)

  • Hierarchie uzlů: Každý herní objekt je uzlem s konkrétní funkčností (MeshInstance3D, CollisionShape3D, Camera3D).
  • Kompozice scén: Scéna v Godotu je strom uzlů. Jednotlivé scény lze skládat a vnořovat do sebe.

Pracovní postup v editoru

  • Integrované prostředí: Editor obsahuje zabudovaný skriptovací editor pro GDScript s našeptávačem a offline dokumentací.
  • Okamžitý start: Spuštění a test scény trvá méně než 1 sekundu.
  • Čistý 2D i 3D: 2D a 3D zobrazení jsou od sebe oddělena: 2D scény nepoužívají falešnou 3D kameru, ale skutečné pixelové souřadnice.
WebXR • Prohlížečové frameworky

A-Frame: virtuální realita na webu

WebXR bez instalace

Open-source JavaScript knihovna vyvinutá v laboratořích Mozilly. Postavená nad Three.js a WebGL/WebXR API.

  • Běží v běžném prohlížeči: Uživatel nemusí nic instalovat, stačí otevřít URL odkaz v mobilu či VR headsetu (Quest Browser, Apple Vision Pro).
  • Podpora VR i AR: Automaticky detekuje headset, prostorové ovladače a trackování rukou.
  • Deklarativní HTML syntax: Zápis 3D scén pomocí Entity-Component-System (ECS) přímo do DOM stromu.
<html>
  <head>
    <meta charset="utf-8">
    <title>Hello, WebVR! • A-Frame</title>
    <script src="https://aframe.io/releases/1.4.0/aframe.min.js"></script>
  </head>
  <body>
    <a-scene background="color: #FAFAFA">
      <!-- Krychle s rotací a stínem -->
      <a-box position="-1 0.5 -3" rotation="0 45 0"
             color="#4CC3D9" shadow></a-box>

      <!-- Koule -->
      <a-sphere position="0 1.25 -5" radius="1.25"
                color="#EF2D5E" shadow></a-sphere>

      <!-- Válec -->
      <a-cylinder position="1 0.75 -3" radius="0.5"
                  height="1.5" color="#FFC65D" shadow></a-cylinder>

      <!-- Podlaha / rovina -->
      <a-plane position="0 0 -4" rotation="-90 0 0"
               width="4" height="4" color="#7BC8A4" shadow></a-plane>
    </a-scene>
  </body>
</html>
VR Nativní • Editace uvnitř virtuální reality

Neos VR / Resonite: software pro tvoření světů ve VR

Platforma umožňující vytvářet, editovat a programovat kompletní virtuální světy přímo s nasazeným headsetem v kooperaci s ostatními uživateli.

  • Český start-up: Založeno českým vývojářem Tomášem Mariančíkem (Frooxius) a studiem Solirax (dnešní pokračovatel: Resonite).
  • Zdarma na Steamu: Volně ke stažení pro libovolný PCVR headset.
  • Výuka na FIT ČVUT: Platforma využívaná v předmětu BI-VR1 (Virtuální realita 1).
  • Vizuální programování LogiX: Tvorba kompletní aplikační logiky a skriptů manipulací s 3D uzly a vodiči v prostoru.
  • Sociální síť a metaverzum: Import 3D modelů pouhým přetažením myší či rukou do prostoru a okamžité sdílení s přáteli.
Neos VR Demo
▶
Ukázka: Tvorba a skriptování v Neos VR
https://youtu.be/Vta9iqHmwNY
Ukázka tvorby ve VR v Neos VR
Tvorba a manipulace s 3D objekty a logikou přímo ve virtuální realitě v Neos VR
Srovnání • Rozhodovací matice

Srovnání herních enginů pro VR

Přehledné porovnání klíčových parametrů pro volbu optimálního vývojového prostředí:

Engine / Nástroj Jazyky & Skriptování Licence & Cena VR Ekosystém & Silné stránky Kdy zvolit pro projekt?
Unity3D C# (.NET)
Visual Scripting
Zdarma do $200k obratu,
poté roční předplatné
Jednička na trhu mobilního VR (Quest), masivní Asset Store, XR Interaction Toolkit. Doporučeno pro většinu VR/AR projektů, mobilní headsety a začátečníky.
Unreal Engine C++ & Blueprints Zdarma, 5 % royalty až po překročení zisku $1M hrubého Absolutní špička fotorealismu, Nanite & Lumen, Quixel Megascans, filmová kvalita. High-end PCVR tituly, fotorealistické simulace, virtuální produkce a AAA hry.
Godot Engine GDScript, C#, C++ 100% Free (MIT)
žádné poplatky
Extrémně lehký (~50 MB), bleskový start, nezávislost na korporacích, OpenXR. Indie tituly, open-source projekty, výuka a týmy s nulovým rozpočtem.
A-Frame (WebXR) HTML & JavaScript
Three.js ECS
100% Free (MIT) Okamžitá dostupnost v prohlížeči přes URL, žádná instalace, webové AR/VR. Webové showroomy, interaktivní prezentace na konferencích, e-commerce v AR.
Neos VR / Resonite LogiX (ve VR) & C# Zdarma na Steamu Editace zevnitř VR prostoru v kooperativním multiplayeru v reálném čase. Kolaborativní setkávání, výuka v imerzi (BI-VR1), tvorba metaverzních světů.