Térbeli horgonyok
A térbeli horgony a világ egyik fontos pontjának felel meg, amelyet a rendszer idővel nyomon követ. 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. A horgony koordinátarendszerében a hologram renderelésével bármikor a legpontosabban pozicionálhatja a hologramot. Ez a hologram helyzetének időbeli kis mértékű kiigazításával jár, mivel a rendszer folyamatosan a helyére helyezi vissza a valós világ alapján.
A térbeli horgonyokat az alkalmazás munkamenetei között is megőrizheti és megoszthatja: Ha a helyi térbeli horgonyokat lemezre menti, majd később betölti őket, az alkalmazás kiszámíthatja ugyanazt a helyet a valós világban több alkalmazás-munkamenetben egyetlen HoloLensen.
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 referencia fáziskeretét használhatja, amely egyetlen koordinátarendszert biztosít, amelyben az összes tartalmat megjelenítheti. Ha azonban az alkalmazás lehetővé teszi, hogy a felhasználók 5 méternél tovább vándoroljanak a HoloLensben, amely akár egy épület teljes emeletén is működik, térbeli horgonyokra lesz szüksége a tartalom stabil állapotának megőrzéséhez.
Bár a térbeli horgonyok nagyszerűek olyan hologramokhoz, amelyeknek rögzítettnek kell maradniuk a világon, a horgony elhelyezése után nem lehet áthelyezni. A horgonyoknak vannak alternatívái, amelyek a felhasználóval együtt címkézendő dinamikus hologramokhoz jobban megfelelnek. A legjobb, ha dinamikus hologramokat helyez el egy helyhez kötött referenciakeret (a Unity világkoordinátáinak alapja) vagy egy csatolt referenciakeret használatával.
Ajánlott eljárások
Ezek a térbeli horgonyszabályokkal 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
Általában a felhasználók helyeznek el kifejezetten térbeli horgonyokat.
A HoloLensben 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, hologramot helyezzen el. Amikor a felhasználó a hologram elhelyezéséhez koppint, hozzon létre egy térbeli horgonyt a metszeti ponton, majd helyezze a hologramot a horgony koordináta-rendszerének forrására.
A helyi térbeli horgonyok könnyen és teljesíthetően hozhatók létre. A rendszer egyesíti a belső adatokat, ha több horgony meg tudja osztani a mögöttes érzékelő adatait. Javasoljuk, hogy hozzon létre egy új helyi térbeli horgonyt minden 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 horgonytól számított 3 méteren belül renderelje
A térbeli horgonyok stabilizálják a koordinátarendszerüket a horgony eredetének közelében. Ha a hologramokat a forrástól 3 méternél távolabb rendereli, a hologramok a karos effektusok 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öghibája kicsi lesz. Ha azonban a felhasználó felmegy a távoli hologramra, az nagy lesz a nézetükben, így nyilvánvalóvá válik a távoli horgonyból származó kar-kar effektusok.
Merev fürtöt alkotó hologramok csoportosítása
Több hologram is megoszthatja 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özpontban. Így gördülékenyen mozognak egymás alapján. Ebben az esetben a naprendszer egésze van rögzítve, annak ellenére, hogy az összetevői dinamikusan mozognak a horgony körül.
A hologram stabilitásának fenntartásához a fő kifogás a fenti 3 méteres szabály követése.
Dinamikus hologramok renderelése helyi térbeli horgony helyett helyhez kötött referenciakerettel
Ha rendkívül dinamikus hologramot használ, például egy helyiségben sétáló karaktert vagy egy lebegő felhasználói felületet, amely a felhasználó közelében található fal mentén halad, érdemes kihagyni a helyi térbeli horgonyokat, és ezeket a hologramokat közvetlenül a helyhez kötött referenciakeret által biztosított koordinátarendszerben megjeleníteni. A Unityben ezt úgy érheti el, hogy hologramokat helyez közvetlenül a világ koordinátáiba WorldAnchor nélkül. A helyhez kötött referenciakeret hologramjai 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 objektum, amely az egyik rögzített koordinátarendszerből a másikba animálódik. Előfordulhat például, hogy két kastély 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 ellövik, a megfelelő helyen, a helyhez kötött referenciakeretben renderelheti, hogy egybeessen az ágyúval az első kastély rögzített koordinátarendszerében. Ezután követheti a pályáját a helyhez kötött referenciakeretben, mivel 10 métert repül a levegőben. Ahogy az ágyúgolyó eléri a másik kastélyt, áthelyezheti a második kastély rögzített koordinátarendszerébe, hogy lehetővé tegye a fizikai számításokat a kastély merev testével.
Ha rendkívül dinamikus hologramot oszt meg az eszközökön, válasszon egy felhőbeli térbeli horgonyt, hogy szülőként működjön, mert a helyhez kötött referenciakeretek nem oszthatók meg az eszközökön. Azonban győződjön meg arról, hogy a dinamikus hologram vagy a megtekintő eszközök a horgony 3 méteres sugarán belül maradnak, í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 azt szeretné, hogy az alkalmazás a térbeli horgonyok szabályos rácsát dobja el, miközben a felhasználó végighalad, és a dinamikus objektumokat a horgonyról a horgonyra váltja, 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 fenntartott mélyérzékelő-adatok előnyét élvezi. Ezekben az esetekben jobb eredményeket érhet el, ha a hologramokat a fenti szakaszban ismertetett helyhez kötött referenciakeretbe helyezi. Ha egy statikus tér köré helyez előre egy felhőbeli térbeli horgonykészletet, fontolja meg a térbeli horgonyok elhelyezését a fő hologramok helyén, amelyeket a felhasználó a fenti elv szerint használ, és ne hozzon létre egy tetszőleges horgonyrácsot. 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
Míg a helyi térbeli horgony aktív, a rendszer rangsorolja a horgony közelében lévő érzékelőadatokat. Ha már nem használ térbeli horgonyt, hagyja abba a koordinátarendszer elérését. Ez lehetővé teszi az alapul szolgáló é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 újra a horgonyra.