Sdílet prostřednictvím


Základní myšlenka

Vnitřní systémy sledování hlavy jsou úžasnou novou technologií. V jejich silných silách jsou téměř magické. Ale mají také své slabiny.

Systémy pro sledování vnitřní hlavy, jako jsou ty v HoloLensu, jsou dobré říct, kde je hlava relativní vzhledem k okolním fyzickým funkcím. Stejně tak dobře říkají, kde jsou skutečné funkce relativní vzhledem k hlavě.

Ale nejsou tak dobrá při tom, kde je hlava relativní vzhledem k tomu, kde byla hlava. Když se hlava pohybuje od bodu A do bodu B, sledovací systém bude obecně mírně chybný o tom, jak daleko hlava cestuje. To znamená, že sledovací systém nebude správný o vzdálenosti mezi body A a B. Tento účinek se často a matoucí nazývá "problém se škálováním".

Když pak hlava pojede z bodu B zpět do bodu A, bude opět špatná o vzdálenosti, která se pohybuje. Bude působivě blízko ke správnému, ale výrazně nesprávné. Tento účinek se také označuje jako "posun".

Tyto problémy jsou popsány více v těchto nejčastějších dotazech.

Pointou je, že nástroje World Locking Tools mohou tyto problémy vyřešit. V druhém případě posunu můžou nástroje World Locking Tools rozpoznat, že hlava je zpět blízko bodu A, od fyzických prvků kolem bodu A a opraví souřadnice hlavy.

V předchozím případě problém se škálováním nástroje World Locking Tools mohou převzít vstup z aplikace, aby věděl, kde bod B je relativní k bodu A, a opravit tuto vzdálenost také cestování.

Abyste pochopili, jak nástroje World Locking Tools tyto problémy řeší, budou užitečné některé další terminologie.

Spongy a svět uzamčené prostory

Spongy space

Jádrem nástrojů World Locking Tools je optimalizační modul. Přebírá jako vstupy graf aktuálně aktivních prostorových ukotvení na světě spolu s aktuálními informacemi o sledování hlavy. Tento vstup se v rámci této a související dokumentace a kódu běžně označuje jako stav Spongy. Stav spongy je tak pojmenovaný, protože je neustále v fluxu. Prostorové kotvy jsou vždy v pohybu vzhledem k sobě a v jejich nativním prostoru souřadnice spongy , protože příchozí data snímačů upřesní jejich stav.

Tento spongy prostor je jediný souřadnicový systém, ve kterém byl dříve k dispozici vývojář aplikace hybridní reality.

Svět uzamčený prostor

Ze stavu spongy vypočítá modul World Locking Tools stabilní prostor, který optimálně zarovná spongy prostor s fyzickým světem. Tento stabilní prostor se označuje jako svět uzamčený prostor a jeho úplný stav jako zmrazený stav.

Je důležité si uvědomit, že spongy prostor i svět uzamčený prostor jsou pevné kartézské souřadnicové systémy a ve skutečnosti se liší od sebe pouze otočením a posunem. Transformace z spongy prostoru na svět uzamčeného prostoru se ale mění při zpracování nových dat snímačů.

Rozdíl mezi těmito dvěma mezerami spočívá v tom, že zatímco příchozí data ze snímačů jsou schopná upřesnit (tj. přesouvat) prostorové kotvy vzhledem k sobě a hlava v prostoru spongy je zvolena k minimalizaci takových přesunů. Tento rozdíl umožňuje, aby se objekty scény umístěné ve světě uzamčeného prostoru zobrazovaly pevně ve fyzickém světě, aniž by byly připojeny k jednotlivým prostorovými ukotvením. Každý rámec modulu vypočítá svět uzamčený prostor, ve kterém jsou podkladové kotvy nejstabilnější. To znamená, že svět uzamknut prostor, ve kterém virtuální objekty zůstávají optimálně v souladu s funkcemi reálného světa.

Tato transformace se použije u scény tak, že upraví místní transformaci nadřazené kamery v grafu scény. Vzhledem k tomu, že fotoaparát definuje původní spongy prostor, vloží tento "svět uzamčený od spongy" transformuje do hierarchie kamery vytvoří kořenový prostor scény, aby byl svět uzamčen prostor.

Uchování

Stav ukotvení lze volitelně zachovat napříč relacemi. Existují ruční ovládací prvky pro uložení aktuálního stavu i pro načítání z uloženého stavu. Kromě toho příznaky ve Správci nástrojů World Locking Tools umožňují nebo zakazují automatické pravidelné ukládání zablokovaných stavů a automatické načítání posledního uloženého stavu při spuštění.

Použití těchto funkcí umožňuje skenování a stabilizaci reálného prostoru, aby se zachovalo v několika relacích.

Kromě toho platí, že pokud se funkce Připnutí mezery používá k zarovnání prostoru modelování k reálnému prostoru, je možné toto zarovnání zachovat. V takovém případě můžou následující relace automaticky načíst modelovanou scénu do fyzického prostoru po počáteční relaci zarovnání připnutí mezery k fyzickému prostoru. Následující relace pak můžou automaticky načíst modelovanou scénu do fyzického prostoru s virtuálními a skutečnými funkcemi.

Další informace najdete v tématu Trvalost a funkce Připnutí místa.

důsledky Kamera pohybu

Jemná, ale důležitá věc, kterou je zde třeba poznamenat, je, že použitím transformace opravy na kameru byla nativní unity "statický rámec odkazu" převeden na optimální svět uzamčený rámec odkazu. Vzhledem k tomu, že se nepřesunuly žádné objekty ve scéně, tato oprava nezasahuje do fyzikální simulace ani jiných dynamických výpočtů.

Kamera, která se ale přesouvá v rámci statického rámce odkazu, má důsledky. Konkrétně všechny subsystémy, které předpokládají, že transformace hlavy je jedinou transformací mezi statickým rámcem odkazu a prostorem kamery, nebudou správná.

Tato chyba obvykle není problém, jako jsou například možnosti teleportu, které už spoléhají na možnost umístit transformaci mezi fotoaparátem a kořenovým prostorem.

MrTK už také faktory v potřebě těchto transformací, takže pro uživatele služeb MRTK to bude "fungovat".

Pro uživatele, kteří vyžadují přímý přístup k systémům nižší úrovně, které nemůžou využívat MRTK, jsou ukázky k vytváření adaptérů k dispozici. Tady je několik takových příkladů:

Viz také