Térbeli horgonyok
A térbeli horgony a világ egyik fontos pontját jelöli, amelyet a rendszer nyomon követ az idő múlásával. Minden horgony más horgonyok vagy referenciakeretek alapján állítható koordinátarendszert biztosít, hogy a rögzített hologramok pontosan a helyükön maradjanak. Ha egy horgony koordinátarendszerében renderel egy hologramot, az adott hologram adott időpontban a legpontosabban pozicionálható. Ez a hologram helyzetének időbeli kis mértékű módosítása árán jön létre, mivel a rendszer a valós világ alapján folyamatosan visszahelyezi a helyére.
A térbeli horgonyokat az alkalmazás-munkamenetek és az eszközök között is megőrizheti és megoszthatja:
- A helyi térbeli horgonyok lemezre mentésével és későbbi betöltésével az alkalmazás kiszámíthatja ugyanazt a helyet a valós világban, több alkalmazás-munkamenetben egyetlen HoloLens-munkamenetben.
- Ha az Azure Spatial Anchors használatával hoz létre felhőhorgonyt, az alkalmazás megoszthat egy térbeli horgonyt több HoloLens-, iOS- és Android-eszközön. Ha minden eszköz ugyanazt a térbeli horgonyt használva renderel egy hologramot, a felhasználók látni fogják, hogy a hologram ugyanazon a helyen jelenik meg a való világban. Ez lehetővé teszi a valós idejű megosztott élményeket.
- Az Azure Spatial Anchors használatával aszinkron hologram-megőrzést is végezhet HoloLens-, iOS- és Android-eszközökön. A tartós felhőbeli térbeli horgony megosztásával több eszköz is megfigyelheti ugyanazt az állandó hologramot, még akkor is, ha ezek az eszközök nem egyszerre vannak jelen.
Az 5 méter átmérőjű, lekötött asztali headsetek állandó vagy helyiségméretű élményéhez általában a térbeli horgonyok helyett a szakasz referenciakeretét használhatja, amely egyetlen koordinátarendszert biztosít az összes tartalom megjelenítéséhez. Ha azonban az alkalmazása lehetővé teszi, hogy a felhasználók 5 méternél tovább barangoljanak a HoloLensben, ami akár egy épület teljes emeletén is működik, akkor térbeli horgonyokra lesz szüksége a tartalom stabil állapotának megőrzéséhez.
Bár a térbeli horgonyok nagyszerűek a hologramokhoz, amelyeknek rögzítettnek kell maradniuk a világon, a horgony elhelyezése után nem lehet áthelyezni. A horgonyoknak vannak olyan alternatívái, amelyek jobban megfelelnek a felhasználóval együtt címkéző dinamikus hologramoknak. A legjobb, ha a dinamikus hologramokat egy helyhez kötött referenciakerettel (a Unity világkoordinátáinak alapjaként) vagy egy csatolt referenciakerettel helyezi el.
Ajánlott eljárások
Ezek a térbeli horgonyokra vonatkozó irányelvek segítségével stabil hologramokat jeleníthet meg, amelyek pontosan nyomon követik a valós világot.
Térbeli horgonyok létrehozása, ahol a felhasználók elhelyezik őket
A felhasználók általában kifejezetten térbeli horgonyokat helyeznek el.
A HoloLens esetében például egy alkalmazás metszi a felhasználó tekintetét a térbeli leképezési hálóval, hogy a felhasználó eldönthesse, hol kell elhelyezni a hologramot. Amikor a felhasználó erre a hologramra koppint, hozzon létre egy térbeli horgonyt a metszeti ponton, majd helyezze a hologramot a horgony koordinátarendszerének forrására.
A helyi térbeli horgonyok könnyen és nagy teljesítményűen hozhatók létre. A rendszer akkor egyesíti a belső adatokat, ha több horgony meg tudja osztani az alapul szolgáló érzékelőadatokat. Javasoljuk, hogy hozzon létre egy új helyi térbeli horgonyt minden olyan hologramhoz, amelyet a felhasználó kifejezetten elhelyez, kivéve az alább ismertetett eseteket, például a hologramok merev csoportjait.
A horgonyzott hologramokat mindig a horgonyuktól számított 3 méteren belül rendereljük
A térbeli horgonyok stabilizálják a koordinátarendszerüket a horgony forrásának közelében. Ha a hologramokat a forrástól több mint 3 méterre rendereli, a hologramok a kar-kar hatás miatt észrevehető pozícióhibákat tapasztalhatnak a forrástól való távolságuk arányában. Ez akkor működik, ha a felhasználó a horgony közelében áll, mivel a hologram is messze van a felhasználótól. Más szóval a távoli hologram szögletes hibája kicsi lesz. Ha azonban a felhasználó felmegy erre a távoli hologramra, az nagy lesz a nézetükben, így nyilvánvalóvá válik a távoli horgony forrásából származó kar-kar effektusok.
Merev fürtöt alkotó hologramok csoportosítása
Több hologram is használhatja ugyanazt a térbeli horgonyt, ha az alkalmazás elvárja, hogy ezek a hologramok rögzített kapcsolatokat tartsanak fenn egymással.
Ha például egy holografikus naprendszert animál egy szobában, jobb, ha az összes naprendszer-objektumot egyetlen horgonyhoz köti a középpontban. Így zökkenőmentesen mozognak egymás alapján. Ebben az esetben a naprendszer egésze van rögzítve, annak ellenére, hogy összetevői dinamikusan mozognak a horgony körül.
A hologram stabilitásának fenntartásához a fő kikötés a fenti 3 méteres szabály betartása.
Dinamikus hologramok renderelése helyi térbeli horgony helyett helyhez kötött referenciakerettel
Ha rendkívül dinamikus hologramja van, például egy szoba körül sétáló karakter vagy egy lebegő felhasználói felület, amely a felhasználó közelében található fal mentén halad, a legjobb, ha kihagyja a helyi térbeli horgonyokat, és ezeket a hologramokat közvetlenül a helyhez kötött referenciakeret által biztosított koordinátarendszerben jeleníti meg. A Unityben ezt úgy érheti el, hogy hologramokat helyez közvetlenül világkoordinátákba WorldAnchor nélkül. A helyhez kötött referenciakeretben lévő hologramok eltérést tapasztalhatnak, ha a felhasználó távol van a hologramtól. Ez azonban kevésbé valószínű a dinamikus hologramok esetében: vagy a hologram folyamatosan mozog, vagy a mozgása folyamatosan közel tartja a felhasználóhoz, ahol a sodródás minimalizálva lesz.
A dinamikus hologramok egyik érdekes esete egy olyan objektum, amely egy rögzített koordinátarendszerből egy másikba animálódik. Előfordulhat például, hogy két vár 10 méterre van egymástól, mindegyik a saját térbeli horgonyán van, és az egyik kastély ágyúgolyót lőtt a másik kastélyra. Amikor az ágyúgolyót aktiválják, a megfelelő helyen renderelheti a helyhez kötött referenciakeretben, hogy egybeesjen az ágyúval az első kastély horgonyozott koordinátarendszerében. Ezután követheti a pályáját a helyhez kötött referenciakeretben, ahogy 10 métert repül a levegőben. Ahogy az ágyúgolyó eléri a másik kastélyt, áthelyezheti a második vár rögzített koordinátarendszerébe, hogy lehetővé tegye a fizikai számításokat a vár merev testével.
Ha rendkívül dinamikus hologramot oszt meg az eszközökön, válasszon egy felhőbeli térbeli horgonyt szülőként, mert a helyhez kötött referenciakeretek nem oszthatók meg az eszközök között. Azonban gondoskodnia kell arról, hogy a dinamikus hologram vagy a megtekintő eszközök a horgony 3 méteres sugarán belül maradjanak, így a hologram stabilan jelenik meg az összes eszközön.
Kerülje a térbeli horgonyok rácsának létrehozását
Előfordulhat, hogy az alkalmazás csábítóan veti el a térbeli horgonyok reguláris rácsát, miközben a felhasználó körbejár, és dinamikus objektumokat helyez át horgonyról horgonyra, miközben mozognak. Ez azonban több felügyeletet igényel az alkalmazás számára, anélkül, hogy a rendszer belsőleg fenntartja a mély érzékelőadatokat. Ezekben az esetekben jobb eredményeket érhet el, ha a hologramokat a fenti szakaszban ismertetett helyhez kötött referenciakeretbe helyezi. Ha egy felhőbeli térbeli horgonykészletet helyez előre egy statikus tér köré, fontolja meg a térbeli horgonyok elhelyezését a fő hologramok helyén, amelyeket a felhasználó a fenti elv alapján átvesz ahelyett, hogy egy tetszőleges horgonyrácsot hoz létre. Ez biztosítja, hogy maximális stabilitást kapjon ezekhez a kulcs hologramokhoz.
A már nem szükséges helyi térbeli horgonyok felszabadítása
Bár a helyi térbeli horgony aktív, a rendszer prioritásként kezeli a horgony közelében lévő érzékelőadatok megőrzését. Ha már nem használ térbeli horgonyt, ne férhessen hozzá a koordinátarendszerhez. Ez lehetővé teszi a mögöttes érzékelőadatok szükség szerinti eltávolítását.
Ez különösen fontos a térbeli horgonytárolóban tárolt helyi horgonyok esetében. A horgonyok mögötti érzékelőadatok folyamatosan megmaradnak, hogy az alkalmazás a jövőbeli munkamenetekben megtalálja a horgonyt, ami csökkenti a többi horgony nyomon követéséhez rendelkezésre álló helyet. Csak azokat a helyi horgonyokat őrizze meg, amelyeket a későbbi munkamenetekben újra meg kell keresnie. Javasoljuk, hogy távolítsa el őket az áruházból, ha már nem értelmezhetők a felhasználó számára.
A felhőbeli térbeli horgonyok esetében a tárterület a forgatókönyvnek megfelelően méretezhető. Annyi felhőhorgonyt tárolhat, amennyit csak szeretne, és felszabadíthatja őket, ha tudja, hogy a felhasználóknak nem lesz szükségük többé a horgonyra.