Archiv rubriky: PC Virtuální Realita



Náhodou jsem narazil na YT kanál autora Spitbua, který zde prezentuje svůj doma vyrobený kokpit Spitfiru, který mu umožňuje létat v simulátoru DCS. Autor je z Norska a svůj kokpit stavěl 2 roky. Létá v něm však kupodivu ve Virtuální Realitě. Říkal jsem si, zda to není škoda mít tak krásný kokpit a pak si nasadit VR headset, a vše okolo si tak nechat “zmizet”. Pak jsem si ale uvědomil, že díky přesné 1:1 replice kokpitu může pilot ve VR sáhnout na jakýkoli přepínač či ovládací prvek a skutečně ho uchopit do ruky, protože přesně v tom místě jako ve VR se nachází i reálný ovladač v kokpitu! To mi přijde jako naprosto dokonalá aplikace VR pro simulátorové létání.

Pro další informace a fotky viz Facebooková stránka autora ZDE. V jednom z příspěvků například píše, že v jeho simulátoru si přišel zalétat skutečný pilot Spitfiru Lars Ness. Bez jakékoliv přípravy či testování byl v simulátoru schopen hned bezvadně přistát. Prohlásil, že se cítil jako by byl ve skutečném Spitfiru. To svědčí nejen o kvalitách pilota, ale také o kvalitách simulátoru DCS a jeho letovém modelu a o precizní stavbě celého simpitu!

Lars Ness

PC Virtuální Realita



Pro létání ve Virtuální realitě používám headset Oculus Rift S. Neocenitelným pomocníkem je pro mne utilita Oculus Tray Tool (OTT), která mj. umožňuje zobrazit ve VR tzv. Visual Head Up Display (HUD) s klíčovými údaji popisujícími výkon vaší aplikace. Asi nejužitečnější je volba Application Render Timing, která zobrazí nejen aktuální FPS, ale také GPU a CPU render timing.

Pozn. Render timing hodnoty jsou naprosto klíčové pro zjištění, zda Váš HW apliaci (simulátor) zvládá v minimálních 80 FPS nebo ne. Pokud hodnota timing pro GPU nebo CPU vystoupí nad cca 12 ms, přestane být 80 FPS udržitelných a klesne. Pokud máte nastaveno automatické přepínání ASW, skočí FPS na 40 a systém dále jede v režimu prokládaných snímků při zachování plynulosti. Pokud ASW z nějakého důvodu nemáte zapnuté, FPS klesne a renderování scény přestává být plynulé.

OTT HUD je výborná pomůcka, ale jakým způsobem si ji ve VR spustit?

a) Nejjednodušší možností, ale zároveň tou nejméně praktickou, je stopnout simulátor, sundat si headset z hlavy, myší na monitoru otevřít OTT a HUD si prostě zvolit, nasadit headset a ukončit pausu simulátoru. Když pak chceme HUD opět zavřít, musíme celou proceduru se sundáním headsetu zopakovat.

b) Krokem k lepší ergonomii je definování kláves pro otevření a zavření HUD. K tomu slouží příslušná volba v OTT :

Já jsem si zvolil klávesu NUM / pro otevření HUD a klávesy CTRL + NUM / pro zavření HUD. Přesto jsem si zatím pomohli pouze nepatrně, protože k tomu, aby klávesy fungovaly, musí být okno OTT aktivní. A to znamená vždy opět sundat headset,přes ALT + TAB se přepnout do okna OTT a pak teprve použít naše klávesové zkratky.

c) Jak asi tušíte, nejlepší možností je používat ke spuštění HUD hlasový příkaz. Tak se vyhneme otravnému sundávání headsetu a zapínaní/vypínání HUD najednou bude rychlé a komfortní. K tomu je nejlepší použít aplikaci Voice Attack, která je dle mého názoru naprostou nutností pro pohodlné používání VR headsetu.

Jak tedy na to? Musíme vyřešit hlavní problém a sice, že OTT HUD funguje jako overlay přes aktuálně běžící aplikaci. Budeme tedy muset použít vždy dva příkazy:

  1. První hlasový příkaz, který pošle naše hotkeys (definované v předchozí ožnosti b) posané výše) do OTT okna;
  2. druhý hlasový příkaz, který navrátí focus zpět do simulátoru (IL-2);
  3. oba tyto hlasové příkazy pak pro jednoduchost spojíme do jediného (třetího) hlasového příkazu, který zajistí jejich postupné automatické provedení a který tedy jako jediný budeme prakticky používat.

Výše uvedený postup použijeme jak pro definování hlasového příkazu pro spuštění HUD tak pro zavření HUD. Nejprve tedy postup jak ve Voice Attack vytvořit příkaz pro otevření (zobrazení) HUD v simulátoru:

A nyní druhý příkaz, který zajistí přepnutí focusu zpět z OTT do simulátoru (a provedení akce nám potvrdí hláškou “OK”):

Příkaz pro změnu focusu se definuje v Other -> Windows -> Perform a Windows Function:

Nyní zbývá vytvořit hlasový příkaz, který bude obsahovat volání obou dvou připravených hlasových příkazů:

Oba příkazy se zadají přes volbu Other -> Voice Attack Action -> Execute Another Command:

Uff a je hotovo :-) Nyní tedy máme připraven příkaz na otevření HUD, který kdykoli během letu aktivujeme příkazem “head up display“.

Podobně si pak vyrobíme příkaz pro zavření HUD. Změna bude pouze v tom, že si připravíme nový první příkaz pro zavření HUD, který použije příslušné klávesové zkratky OTT pro zavření HUD (CTRL + NUM /).:

Finální příkaz pak můžeme volat například příkazem “head up display close“.

PC Virtuální Realita



V první části článku jsem se zaměřil na popis svých dojmů z používání headsetu VR Oculus Rift S v leteckém simulátoru. Ve druhé části bych se rád věnoval popisu některých nastavení, která používám, a to opět se zaměřením na simulátor IL-2 Great Battles.

Rift S má svoji frekvenci nastavenou na rozumných 80 FPS a proto je třeba se ideálně k této frekvenci v simulátoru blížit. Na druhé straně však jako virtuální piloti chceme mít co nejlepší možnou kvalitu renderované scény. Celé nastavování je tedy především o nastavení vlastního HW na maximum a o hledání kompromisu v nastavení SW.

Používání VR pro simulátory vyžaduje high-end PC

Hned na začátku musím také upozornit, že VR patří dnes k herní technologické špičce a proto jsou zde logicky nemalé nároky na HW. Na hraní běžných her ve VR si ještě vystačíte s lehce nadprůměrným HW, avšak pro létání na simulátorech to už bez diskuze vyžaduje high end.

Na začátek si proto dovolím uvést specifikace svého PC, protože uvedené tipy v nastavení se budou k tomuto HW přímo vztahovat: i7-7700K@5.0GHz(delid), 32 GB RAM, GTX 1080Ti, MB ASUS Z-270A, chladič CPU BeQuiet! Dark Rock Pro 3, HDD Samsung SSD 960 EVO NVMe M.2.

A nyní už pojďme ke konkrétním radám týkajících se nastavení HW a SW:

Nejprve je třeba se zaměřit na výkon CPU. Simulátory obecně se dnes odlišují od všech ostatních her tím, že pro renderování scény spotřebovávají mnohem větší pracovní čas procesoru než jiné hry. Naneštěstí však většina současných simulátorů nemá fungující multithreading a tedy využívá pro většinu výpočtů pouze jediné jádro CPU. Z toho plyne nutnost mít procesor přetaktovaný na maximum, aby využívané jádro pracovalo na co nejvyšší možné frekvenci a produkovalo tak dostatečné množsví výkonu. Ideální jsou procesory Intel s označním K, které mají odemknutý násobič a lze je tedy taktovat.

Aby však šel CPU dobře taktovat, musí být dobře chlazen. Kvalitní větrák je tedy nutnou podmínkou (a nemusí to být vodník, stačí kvalitní vzduchový větrák). Schopnost CPU nechat se dobře chladit také výrazně zvýší tzv. delid, tj. nahrazení továrního ne úplně ideálně teplovodivého spojení čipu CPU s kovovým krytem, novým kvalitnějším spojením. Doporučuji nechat si delid udělat od profesionálů, např. na delid.cz, kde vám za cenu cca 1000 kč delid obratem provedou. Pro simulátory je ideální mít procesor přetaktován na hranici 5.0 Ghz. Rozdíl proti taktům nastaveným od výrobce, které byly například u mého i7-7700 K pouhých 4,2 GHz, je opravdu velmi znatelný! Samotného přetaktování se bát nemusíte, s novými základními deskami je to dnes hračka i pro laika a chcete-li se do problematiky ponořit důkladně, internet je plný návodů jak na to.

Pro optimální využítí vašeho HW je samozřejmě nutné, aby celá vaše sestava byla vyvážená a nebylo zde nějaké “úzké hrdlo”, které by omezovalo výkon celé sestavy. Další rady týkající se HW by však už byly nad rámec tohoto článku, proto odkazuji na internet, kde lze snadno dohledat všechny potřebné informace. Zmíním snad pouze, že pamět doporučuji raději 16 GB (8 GB bude hodně hraniční) a co se týká grafické karty, pak jako minimum pro létání ve VR na simulátorech doporučuji GTX 1080Ti. Disky SSD by dnes už měly být samozřejmostí. Jednoznačně jsou také potřeba Windows 10 aktualizované na nejnovější vezi (s Windows 7 ve VR už moc nepochodíte).

Dalším krokem je omezit běh zbytečného SW, který by spotřebovával drahocený výkon. V případě, že máte simulátor IL-2 Great Battles, potřebujete mít spuštěnou platformu SteamVR. Ovšem headset sám si spouští vlastní platformu Oculus Home a na PC vám tedy běží dvě náročné aplikace, i když by teoreticky stačila jen jediná. Řešením je přechod na OpenComposite, který eliminuje nutnost spouštět na systémové prostředky náročný SteamVR.

A dostáváme se k nastavení samotného headsetu Rift S. Především si nastavte SW IPD, které odpovídá IPD vašich očí, aby svět, který bude generován, měl reálné rozměry.

Pozn. SW IPD v nastavení Headsetu je něco jiného než HW IPD, které mají některé jiné headsety. HW IPD (Inter Pupilary Distance = vzdálenost zorniček očí) nastavuje fyzickou vzdálenost mezi čočkami headsetu a umožnuje Vám tak správně nastavit optiku, aby byl obraz nebyl rozmazaný. Rift S žel tuto možnost nemá. SW IPD pak zadanou hodnotu (měla by odpovídat vašemu reálnému IPD) použije jako vstupní údaj k tomu, aby renderovaná scéna pro vás měla správné rozměry korespondující s reálným světem. Pokud zadáte hodnotu SW IPD odlišnou od vašeho rálného IPD, bude se vám vykreslený svět jevit jako změnšený nebo zvětšený vzhledem ke své reálné předloze.

Dalším krokem je instalace Oculus Tray Tool (OTT). Jedná se o velmi užitečnou utilitu, která vám mj. umožní nastavit tzv. Pixel Desnsity (PD), tedy rozlišení renderované scény (jedná se v podstatě o supersampling). Pokud PD nastavíte na 1.0 generuje se 100% a tedy bude renderována scéna v nativním doporučeném rozlišení pro daný typ headsetu. Pokud PD zvýšíte např. na 1.5, tj. na 150%, bude se renderovat rozlišení podstatně vyšší a před jeho zobrazením se SW upraví zpět pro zobrazení na displayi headsetu. Proč něco takového dělat? Protože výsledný obraz pak bude mít mnohem lepší antialiasing, tj. bude potlačena zubatost hran objetů a výsledná scnéna bude prostě “hezčí”. Taková akce ovšem stojí drahocený výkon a je proto třeba testovat, které nastavení vám bude nejlépe sedět. Já osobně na své sestavě preferuji PD 1.1, abych po většinu času v simulátoru dosahoval 75-80 FPS.

Neméně důležitou věcí, kterou je třeba v OTT nastavit je tzv. ASW (Asynchronous Space Warp). Jedná se o chytrý způsob, jak zajistit plynulost renderované scény i v případě, že váš HW nestíhá a není schopen ve spuštěné aplikaci zajistit generování minimálních 80 FPS (v praxi 75-80). Plynulosti je dosaženo tak, že se FPS sníží na polovinu, tj. na 40 FPS, a mezi každý snímek se vloží vždy jeden syntetický. Scéna zůstane plynulá a v ideálním případě uživatel nic nepozná. Prakticky se však u rychle pohybujících se objektů (letadla kolem vás) projevuje znatelný ghosting (stín za pohybujícím se objektem, či dokonce zřetelné zdvojení takového objektu – v našem případě letounu, který kolem vás letí). Pokud však váš HW nestíhá, musíte volit mezi větším a menším zlem. Nezapnete-li ASW trhá vám celá renderovaná scéna, zapnete-li, je vše plynulé, ale s ghostingem u rychle se pohybujících objektů.

Osobně ASW používám. Díky OTT máte na výběr tři režimy, ON, OFF a AUTO. Osobně doporučuji nastavit na AUTO. Tím zajistíte, že pokud máte dostatečný výkon, jedete na 75-80 FPS, což je vždy nejlepší řešení, a pokud HW nestíhá, dojde k automatickému zapnutí ASW. Když požadavky aplikace na výkon HW klesnou, ASW se opět automaticky vypne a máte zpět nativních 75-80 FPS. Více informací o ASW 2.0 se můžete dozvědět např. ZDE nebo ZDE.

Co se týká OTT, rád bych ještě zmínil možnost vytvoření profilů. Jejich používání vřele doporučuji. Pod tlačítkem Profiles si vytvoříte profil pro IL-2, musíte zde smozřejmě uvést cestu k il2.exe soboru a nastavíte si zde požadované hodnoty pro PD a ASW. Defaultní hodnoty pak můžete v hlavním nastavení ponechat a teprve když si spustíte simulátor, OTT nastaví hodnoty zadané v profilu.

OTT umožnuje samozřejmě i řadu dalších nastavení. Zmínil bych ještě PowerOptions, kde je vhodné nastavit volbu High Performance a také je praktické si OTT nechat spouštět automaticky se startem Windows.

Posledním krokem, který nám zbývá zmínit, je nastavení v samotném simulátoru. Preference každého uživatele mohou být rozdílné, proto berte moje nastavení pouze jako tip pro své vlastní hledání. Já létám s následujícími parametry v grafickém nastavení.

Dovolím si pouze krátký komentář k některým volbám: Screen resolution určuje, jak velké okno bude zobrazeno na LCD, tj. nemá vliv na rozlišení pro display headsetu, proto je lepší ponechat zde rozlišení co nejmenší, aby spotřebovávalo co nejméně systémových prostředků. Landscape distance můžete dát na maximum tj. 150 km, dopad na FPS není velký. Landscape filter nastavený na blur pomůže odstranit nepříjemný “shimmering” způsobovaný 3D objekty. Mraky doporučuji na High, protože na Medium a nižší dochází k tomu, že letouny na popředí mraků mizí. Tato nepříjmenost je způsobena technologií vykreslování mraků v tomto simulátoru a nic s tím zatím neuděláme. AA jednoznačně na maximum, tj. 4xAA. Určitě vypnout SSAO a HDR, které zbytečně brzdí výkon.

Moje poslední rada k nastavení VR se týká hlasového ovládání: nevím jak dostatečně zdůraznit, že používání hlasového ovládání je v případě simulátorů s jejich miliónem možných klávesových zkratek naprostá nezbytnost. Používání aplikace Voice Attack vám velmi, ale opravdu velmi, usnadní život ve virtuální realitě. Odkazuji proto na své předchozí články ZDE a ZDE.

Příklad jak vypadají mé hlasové příkazy ve Voice Attack

PC Virtuální Realita