Systémy souřadnic

V jádru aplikace hybridní reality umístí hologramy do vašeho světa, které vypadají jako a zní jako skutečné objekty. To zahrnuje přesné umístění a orientaci těchto hologramů na smysluplných místech na světě, ať už je svět jejich fyzickou místností nebo virtuální říši, kterou jste vytvořili. Systém Windows poskytuje různé reálné souřadnicové systémy pro vyjádření geometrie – tyto systémy se označují jako prostorové souřadnicové systémy. Pomocí těchto systémů můžete uvažovat o poloze hologramu, orientaci, pohledu nebo poloze rukou.


Podpora zařízení

Funkce HoloLens (1. generace) HoloLens 2 Imerzivní náhlavní soupravy
Nehybný referenční rámec ✔️ ✔️ ✔️
Připojený referenční rámec ✔️ ✔️ ✔️
Referenční rámec fáze Ještě se nepodporuje. Ještě se nepodporuje. ✔️
Prostorové kotvy ✔️ ✔️ ✔️
Prostorové mapování ✔️ ✔️
Porozumění scéně ✔️

Škálovat prostředí hybridní reality

Aplikace hybridní reality můžete navrhovat pro širokou škálu uživatelských prostředí, od 360stupňových prohlížečů videa s využitím orientace náhlavní soupravy až po plnohodnotné aplikace a hry ve světovém měřítku s využitím prostorového mapování a prostorových ukotvení:


Škála zkušeností Požadavky Příklad prostředí
Pouze orientace Orientace náhlavní soupravy (zarovnaná s gravitací) 360° prohlížeč videa
Sedící měřítko Výše plus pozice náhlavní soupravy na základě nulové polohy Závodní hra nebo simulátor vesmíru
Stálé měřítko Počátek nad pódium plus Akční hra, kde se kačíte a vyhýbáte se v místě
Prostorové měřítko Mnohoúhelník nad hranici fáze plus Puzzle hra, kde se procházíte kolem puzzle
Světové měřítko Prostorové ukotvení (a obvykle prostorové mapování) Hra s nepřáteli pocházejícími z vašich skutečných zdí, jako je RoboRaid

Výše uvedené možnosti se škálují podle modelu "vnořování panenky". Klíčovým principem návrhu pro Windows Mixed Reality je toto: daná náhlavní souprava podporuje aplikace vytvořené pro cílové prostředí a všechny menší škály.


Sledování 6DOF Definovaná podlaha Sledování 360° Definované hranice Prostorové kotvy Maximální možnosti
No - - - - Pouze orientace
Ano No - - - Sedí
Ano Ano No - - Vestoje – vpřed
Ano Ano Ano No - Stání - 360°
Ano Ano Ano Ano No Prostor
Ano Ano Ano Ano Ano Světě

Referenční rámec fáze se v HoloLensu zatím nepodporuje. Aplikace v prostorovém měřítku v HoloLensu v současné době potřebuje k vyhledání podlahy a zdí uživatele používat prostorové mapování nebo porozumění scéně .

Prostorové souřadnicové systémy

Všechny aplikace 3D grafiky používají kartézské souřadnicové systémy k úvahám o pozicích a orientacích virtuálních objektů. Tyto souřadnicové systémy vytvářejí tři kolmé osy: X, Y a Z. Každý objekt, který přidáte do scény, bude mít ve svém souřadnicovém systému pozici XYZ. Systém Windows nazývá souřadnicový systém, který má ve fyzickém světě skutečný význam, prostorový souřadnicový systém, který vyjadřuje hodnoty souřadnic v metrech. To znamená, že objekty umístěné dvě jednotky od sebe na ose X, Y nebo Z se při vykreslení v hybridní realitě zobrazí dva metry od sebe. S vědomím toho můžete snadno vykreslit objekty a prostředí v reálném měřítku.

Kartézské souřadnicové systémy se obecně označují jako "pravák" nebo "levák", protože můžete použít pozice rukou k označení směru os XYZ. V obou souřadnicových systémech ukazuje kladná osa X doprava a kladná osa Y ukazuje nahoru. Rozdíl mezi těmito dvěma souřadnicemi spočívá v tom, že v pravém souřadnicovém systému ukazuje osa Z směrem k vám, zatímco v levostranné soustavě souřadnic směřuje osa Z směrem od vás.

Obrázek pravé ruky osoby demonstrující praruční souřadnicový systém

Obrázek levé ruky osoby znázorňující levý souřadnicový systém

Prostorové souřadnicové systémy ve Windows (a proto Windows Mixed Reality) jsou vždy pravé ruky.

[! POZNÁMKY]

  • Unity a Unreal používají levý souřadnicový systém.
  • I když jsou nejběžnějšími systémy souřadnice pro levou a pravou ruku, existují i jiné souřadnicové systémy používané v 3D softwaru. Například u aplikací 3D modelování není neobvyklé používat souřadnicový systém, ve kterém osa Y ukazuje směrem k prohlížeči nebo směrem od něj a osa Z směřuje nahoru.

Vytvoření prostředí jen pro orientaci nebo vsedě

Klíčem k holografickému vykreslování je změna zobrazení jednotlivých hologramů v aplikaci při pohybu uživatele tak, aby odpovídalo předpovídanému pohybu hlavou. Pomocí nehybného referenčního rámce můžete vytvářet prostředí v sesazené škále, která respektuje změny pozice hlavy a orientace hlavy uživatele.

Některý obsah musí ignorovat aktualizace pozice hlavy a zůstat pevně uchycený na zvoleném nadpisu a vzdálenosti od uživatele. Primárním příkladem je 360stupňové video: vzhledem k tomu, že je video zachyceno z jedné pevné perspektivy, zničilo by to iluzi, že se pozice zobrazení bude pohybovat na základě obsahu, i když se orientace zobrazení mění, když se uživatel rozhlíží kolem. Takové prostředí jen pro orientaci můžete vytvořit pomocí připojeného referenčního rámce.

Nehybný referenční rámec

Souřadnicový systém poskytovaný nehybným referenčním rámcem pracuje na zachování co nejstabilnější pozice objektů v blízkosti uživatele v závislosti na světě a současně respektuje změny v pozici hlavy uživatele.

Pro prostředí v sesazené škále v herním engéru, jako je Unity, je pevný referenční rámec tím, co definuje "světový původ". Objekty, které jsou umístěny na konkrétní souřadnici světa, používají pevný referenční rámec k definování své pozice v reálném světě pomocí stejných souřadnic. Obsah, který zůstává ve světě, i když se uživatel prochází, se označuje jako obsah uzamčený světem .

Aplikace obvykle vytvoří jeden statický referenční rámec při spuštění a použije svůj souřadnicový systém po celou dobu její životnosti. Jako vývojář aplikací v Unity můžete jednoduše začít umisťovat obsah na základě původu, který bude na počáteční pozici a orientaci uživatele. Pokud se uživatel přesune na nové místo a chce pokračovat ve svém prostředí v sesedání, můžete v této lokalitě provést nejnovější informace o světovém původu.

V průběhu času, když se systém dozví více o prostředí uživatele, může určit, že vzdálenosti mezi různými body v reálném světě jsou kratší nebo delší, než systém dříve předpokládal. Pokud vykreslujete hologramy ve statickém referenčním rámci pro aplikaci na HoloLensu, kde uživatelé putují za oblast o šířce asi 5 metrů, může aplikace pozorovat posun ve zjištěném umístění těchto hologramů. Pokud vaše zkušenosti s uživateli překračují 5 metrů, vytváříte prostředí ve světovém měřítku, které bude vyžadovat další techniky, aby se hologramy udržely stabilní, jak je popsáno níže.

Připojený referenční rámec

Připojený referenční rámec se při procházení přesune s uživatelem s pevným nadpisem definovaným při prvním vytvoření rámce aplikací. Díky tomu se uživatel může pohodlně podívat na obsah umístěný v rámci daného referenčního rámce. Obsah vykreslený tímto způsobem relativním pro uživatele se nazývá obsah uzamčený tělem .

Když náhlavní souprava nedokáže zjistit, kde na světě je, je připojený referenční rámec jediným souřadnicovým systémem, který lze použít k vykreslení hologramů. Díky tomu je ideální pro zobrazení náhradního uživatelského rozhraní, které uživateli oznámí, že je jeho zařízení nemůže najít na světě. Aplikace, které jsou v usazeném nebo vyšším měřítku, by měly obsahovat záložní řešení jen pro orientaci, které uživateli pomůže znovu začít s uživatelským rozhraním, které je podobné tomu, které se zobrazuje na domovské stránce Mixed Reality.

Vytvoření stálého nebo prostorového prostředí

Pokud chcete u imerzivní náhlavní soupravy přejít nad rámec měřítka v sedě a vytvořit si prostředí v trvalém měřítku, můžete použít referenční rámec fáze.

Pokud chcete zajistit prostředí v měřítku místnosti a umožnit uživatelům procházet se v předdefinované hranici 5 metrů, můžete také zkontrolovat hranice fáze .

Referenční rámec fáze

Při prvním nastavení imerzivní náhlavní soupravy uživatel definuje fázi, která představuje místnost, ve které bude zažívat hybridní realitu. Fáze minimálně definuje počátek fáze, prostorový souřadnicový systém vycentrovaný na zvolené pozici podlahy uživatele a orientaci dopředu tam, kde chce zařízení používat. Umístěním obsahu do souřadnicového systému této fáze v rovině podlahy Y=0 můžete zajistit, aby se hologramy zobrazovaly pohodlně na podlaze, když uživatel stojí, a uživatelům tak poskytnete prostředí ve stoje.

Meze fáze

Uživatel může také volitelně definovat hranice fáze, tedy oblast v místnosti, kterou vymazal, aby se mohl pohybovat v hybridní realitě. Pokud ano, aplikace může vytvořit prostředí v měřítku místnosti a pomocí těchto hranic zajistit, aby se hologramy vždy umístily tam, kde se k nim uživatel dostane.

Vzhledem k tomu, že referenční rámec fáze poskytuje jeden pevný souřadnicový systém, do kterého lze umístit obsah relativní k podlaze, je to nejjednodušší cesta pro přenos aplikací v trvalém měřítku a prostorových aplikací vyvinutých pro náhlavní soupravy virtuální reality. Stejně jako u těchto platforem VR však může jeden souřadnicový systém stabilizovat obsah pouze v průměru asi 5 metrů (16 stop), než účinky pákových ramen způsobí, že se obsah daleko od středu výrazně posune, jak se systém přizpůsobí. Chcete-li překročit 5 metrů, jsou potřeba prostorové kotvy.

Vytváření prostředí ve světovém měřítku

HoloLens umožňuje skutečné prostředí ve světovém měřítku , které uživatelům umožňuje procházet se více než 5 metrů. K vytvoření aplikace ve světovém měřítku budete potřebovat nové techniky nad rámec těch, které se používají pro prostředí v prostorovém měřítku.

Proč nelze použít jeden pevný souřadnicový systém nad 5 metrů

Při psaní her, aplikací pro vizualizaci dat nebo aplikací virtuální reality je dnes typickým přístupem vytvoření jednoho absolutního souřadnicového systému světa, na který se všechny ostatní souřadnice můžou spolehlivě namapovat zpět. V takovém prostředí můžete vždy najít stabilní transformaci, která definuje vztah mezi libovolnými dvěma objekty v daném světě. Pokud jste tyto objekty nepřesunuli, jejich relativní transformace by vždy zůstaly stejné. Tento druh globálního souřadnicového systému funguje dobře při vykreslování čistě virtuálního světa, kde předem znáte veškerou geometrii. Aplikace VR v měřítku místností dnes obvykle vytvářejí tento druh absolutního souřadnicového systému v měřítku místnosti s jeho původem na podlaze.

Naproti tomu zařízení bez připojené hybridní reality, jako je HoloLens, má dynamické senzory řízené porozumění světu a průběžně upravuje své znalosti o okolí uživatele, když prochází mnoho metrů po celém patře budovy. Pokud byste ve světovém měřítku umístili všechny hologramy do jediného systému pevných souřadnic, musely by se tyto hologramy v průběhu času posunovat, a to buď na základě světa, nebo k sobě navzájem.

Náhlavní souprava může například v současné době věřit, že dvě místa na světě jsou od sebe vzdálená 4 metry, a později to zpřesnit a zjistit, že umístění jsou ve skutečnosti 3,9 metrů od sebe. Pokud by byly tyto hologramy původně umístěny 4 metry od sebe v jediném tuhém souřadnicovém systému, jeden z nich by se vždy zobrazoval 0,1 m od skutečného světa.

Prostorové kotvy

Windows Mixed Reality vyřeší problém popsaný v předchozí části tak, že vám umožní vytvořit prostorové kotvy pro označení důležitých bodů na světě, kam uživatel umístil hologramy. Prostorová kotva představuje důležitý bod na světě, který by měl systém sledovat v průběhu času.

Jak se zařízení učí o světě, můžou tyto prostorové kotvy podle potřeby podle potřeby upravit svou polohu, aby každá kotva zůstala přesně tam, kde byla umístěna, na základě reálného světa. Umístěním prostorové kotvy na místo, kam uživatel umístí hologram, a následným umístěním tohoto hologramu na základě jeho prostorové ukotvení, můžete zajistit, aby si hologram zachoval optimální stabilitu, i když se uživatel potuluje přes desítky metrů.

Tato kontinuální úprava prostorových kotev založených na sobě je klíčovým rozdílem mezi souřadnicovými systémy od prostorových ukotvení a statických referenčních rámců:

  • Hologramy umístěné v nehybné vztažné kostce si navzájem udržují pevný vztah. Když ale uživatel prochází dlouhé vzdálenosti, může se souřadnicový systém daného rámce posunovat na základě světa, aby se zajistilo, že hologramy vedle uživatele budou vypadat stabilní.

  • Hologramy umístěné v referenčním rámci fáze si také navzájem udržují pevný vztah. Na rozdíl od statického rámu zůstává rám fáze vždy pevně na místě na základě svého definovaného fyzického původu. Obsah vykreslený v souřadnicovém systému fáze za jeho hranici 5 metrů se však bude zdát stabilní pouze v době, kdy uživatel stojí v této hranici.

  • Hologramy umístěné pomocí jedné prostorové kotvy se mohou posunovat na základě hologramů umístěných pomocí jiné prostorové kotvy. To umožňuje systému Windows lépe porozumět poloze každé prostorové kotvy, i když se například jedna kotva potřebuje upravit doleva a druhá se musí upravit doprava.

Na rozdíl od nehybného referenčního rámce, který vždy optimalizuje stabilitu v blízkosti uživatele, pódia referenční rámec a prostorové kotvy zajišťují stabilitu v blízkosti jejich původu. To pomáhá, aby tyto hologramy zůstaly přesně na místě v průběhu času, ale také to znamená, že hologramy vykreslené příliš daleko od jejich souřadnicového systému budou mít stále závažnější účinky pákových ramen. Důvodem je to, že malé úpravy pozice a orientace pódia nebo kotvy se zvětšují úměrně vzdálenosti od této kotvy.

Dobrým pravidlem je zajistit, aby vše, co vykreslujete na základě souřadnic vzdálené prostorové kotvy, bylo v rozmezí asi 3 metrů od jeho původu. Pro blízký původ fáze je vykreslování vzdáleného obsahu v pořádku, protože jakákoli zvýšená poziční chyba ovlivní pouze malé hologramy, které se v zobrazení uživatele moc neposouvají.

Trvalost prostorových ukotvení

Prostorové ukotvení také umožní aplikaci zapamatovat si důležité místo i po pozastavení aplikace nebo vypnutí zařízení.

Prostorové kotvy, které aplikace vytvoří, můžete uložit na disk a později je znovu načíst, a to tak, že je uložíte do úložiště prostorových ukotvení vaší aplikace. Při ukládání nebo načítání ukotvení zadáte klíč řetězce, který je pro vaši aplikaci smysluplný, abyste ho později identifikovali. Tento klíč si můžete představit jako název souboru pro kotvu. Pokud chcete k této ukotvení přidružit další data, například 3D model, který uživatel umístil do tohoto umístění, uložte je do místního úložiště aplikace a přidružte ho ke zvolenému klíči.

Díky zachování ukotvení ve storu můžou uživatelé umístit jednotlivé hologramy nebo pracovní prostor, kolem kterého aplikace umístí své různé hologramy, a pak tyto hologramy později najít tam, kde je očekávají, v mnoha použitích vaší aplikace.

Azure Spatial Anchors můžete také použít k asynchronnímu hologramu na zařízeních HoloLens, iOS a Android. Sdílením odolné cloudové prostorové kotvy může několik zařízení sledovat stejný trvalý hologram v průběhu času, i když se tato zařízení nenacházejí současně.

Sdílení prostorových ukotvení

Vaše aplikace může také sdílet prostorovou ukotvení v reálném čase s jinými zařízeními, což umožňuje sdílené prostředí v reálném čase.

Pomocí Azure Spatial Anchors může vaše aplikace sdílet prostorovou ukotvení na více zařízeních HoloLens, iOS a Android. Díky tomu, že každé zařízení vykresluje hologram pomocí stejné prostorové ukotvení, uvidí všichni uživatelé, že se hologram zobrazí na stejném místě v reálném světě.

Vyhněte se obsahu uzamčenému hlavou

Důrazně nedoporučujeme vykreslovat obsah uzamčený hlavou, který zůstane na pevném místě na displeji (například HUD). Obecně platí, že obsah uzamčený hlavou je pro uživatele nepohodlný a nepřipadá jako přirozená součást jejich světa.

Obsah uzamčený hlavou by měl být obvykle nahrazen hologramy, které jsou připojeny k uživateli nebo umístěny do samotného světa. Například kurzory by měly být obecně posunuty do světa a měly by se přirozeně škálovat tak, aby odrážely polohu a vzdálenost objektu pod pohledem uživatele.

Zpracování chyb sledování

V některých prostředích, jako jsou tmavé chodby, nemusí být možné, aby se náhlavní souprava používající sledování zevnitř správně našel na světě. To může vést k tomu, že se hologramy při nesprávném zpracování buď nezobrazí, nebo se zobrazí na nesprávných místech. Teď probereme podmínky, za kterých k tomu může dojít, jeho dopad na uživatelské prostředí a tipy, jak tuto situaci co nejlépe zvládnout.

Náhlavní souprava nemůže sledovat kvůli nedostatečným datům ze senzorů

Někdy senzory náhlavní soupravy nedokážou zjistit, kde náhlavní souprava je. K tomu může dojít v následujícím případě:

  • Místnost je tmavá
  • Pokud jsou senzory pokryté vlasy nebo rukama
  • Pokud okolí nemá dost textury.

Když k tomu dojde, náhlavní souprava nebude moct sledovat svoji polohu s dostatečnou přesností, aby vykreslila světem uzamčené hologramy. Nemůžete zjistit, kde je na zařízení založena prostorová kotva, statický rámec nebo rámec scény. Obsah uzamčený tělem ale můžete vykreslit v připojeném referenčním rámci.

Vaše aplikace by měla uživatele informovat o tom, jak získat sledování polohy zpět a vykreslovat nějaký náhradní obsah uzamčený tělem, který popisuje některé tipy, jako je odhalení senzorů a zapnutí dalších světel.

Nesprávná stopa náhlavní soupravy kvůli dynamickým změnám prostředí

Zařízení nemůže správně sledovat, pokud v prostředí dochází k mnoha dynamickým změnám, například když se v místnosti prochází mnoho lidí. V tomto případě se může zdát, že hologramy přeskakují nebo se odchylují, když se zařízení v tomto dynamickém prostředí pokouší sledovat. Pokud narazíte na tento scénář, doporučujeme používat zařízení v méně dynamickém prostředí.

Náhlavní souprava nesprávně sleduje, protože prostředí se v průběhu času výrazně změnilo

Když začnete používat náhlavní soupravu v prostředí, kde se přesunul nábytek, závěsy na stěnách atd., je možné, že se některé hologramy budou zobrazovat posunuté z původního umístění. Při pohybu uživatele v novém prostoru se můžou skákat i starší hologramy, protože systém už prostoru nerozumí. Systém se pak pokusí přemapovat prostředí a zároveň se pokusí sladit funkce místnosti. V tomto scénáři doporučujeme vyzvat uživatele, aby nahradili hologramy, které připnuli na světě, pokud se nezobrazují tam, kde se mají.

Náhlavní souprava nesprávně sleduje identické mezery v prostředí

V některých případech může mít domov nebo jiný prostor dvě identické oblasti. Například dvě identické konferenční místnosti, dvě identické rohové oblasti, dva velké identické plakáty, které pokrývají zorné pole zařízení. V takových scénářích může být zařízení občas zaměňováno mezi identickými částmi a označit je jako stejné ve svém interním znázornění. To může způsobit, že se hologramy z některých oblastí zobrazí na jiných místech. Zařízení může často ztratit sledování, protože jeho interní reprezentace prostředí je poškozená. V takovém případě se doporučuje resetovat porozumění prostředí systému. Resetování mapy vede ke ztrátě všech umístění prostorových ukotvení. To způsobí, že náhlavní souprava bude dobře sledovat v jedinečných oblastech prostředí. Problém se však může opakovat, pokud se zařízení znovu zamění mezi identickými oblastmi.

Viz také