A World Locking Tools fogalmai
A probléma
A mindennapi fizikai világban a teret egy helyhez kötött koordináta-rendszer jól leírja. A helyhez kötött koordinátarendszerben lévő mozgás nélküli objektumok örökké ugyanazokat a koordinátákat fogják használni. Egy adott konfigurációban meghatározott objektumcsoport fogja fenntartani ezt a konfigurációt. Két azonos mozgási sebességgel mozgó objektum rögzített eltolásban marad egymástól.
Ezek és hasonló törvények olyan alapvető részét képezik a létezésnek, hogy amikor már nem tartják magukat, a világra vonatkozó intuíció megbízhatatlanná válik.
Korábbi megoldások
A Unity globális koordináta-tér - és térbeli horgonyai az érzékelő pontatlanságai és sodródása által okozott problémák különböző aspektusait kezelik.
A Unity globális koordináta-területe stabil referenciakeretet biztosít, amelyben a holografikus objektumok egymáshoz képest rögzítettek maradnak. Bár a térben lévő objektumok következetesen viselkednek egymáshoz képest, a fizikai világgal való konzisztencia nem garantált, és nem is általánosan biztosított. Az inkonzisztenciák különösen akkor alakulnak ki, ha a felhasználó mozog.
A Unity térbeli horgonyai fenntarthatják a hologram pozícióját a fizikai világban, amikor a felhasználó mobil, de a virtuális világban az önkonzisztencia feláldozása mellett. A különböző horgonyok folyamatosan mozognak egymáshoz képest. A globális koordináta-térben is mozognak, ami megnehezíti az egyszerű feladatokat, például az elrendezést és a fizikai szimulációt.
A probléma forrása
A vita középpontjában a HoloLens technológia áll, de ezek a fogalmak általában a kívülről jelölő nélküli nyomkövetési technikákra vonatkoznak, különösen az inerciális rendszerekkel kiegészítve.
A HoloLens csodálatos annak meghatározásában, hogy hol van a környezet látható jellemzőihez viszonyítva. Emellett a többi virtuális objektumot is nagyszerűen pozicionálhatja ugyanezek alapján a látható funkciók alapján. Ha a felhasználó nagyjából állandó helyzetben ül vagy áll, az eszköz nagyszerűen tartja a látható fizikai referenciapontokon regisztrált virtuális objektumokat. A fizikai asztalra helyezett virtuális csésze többnyire ugyanazon a helyen marad az asztal felszínén.
Ekkor a HoloLens ugyanahhoz a kis kötethez van korlátozva, és a látható funkciók állandó készlete látható. De vannak más érdekes forgatókönyvek is.
Amikor a felhasználó feljön és mozog a szobáról, vagy akár a szobák között is, a HoloLens-nek váltania kell a nézetet elhagyó régi funkciók és a nézetbe kerülő új funkciók között. A megvalósítás részleteinek megismerés nélkül nyilvánvaló, hogy az átvitel során a nyomon követés pontossága nagyon csökkenni fog.
Íme egy egyszerű forgatókönyv a környezethez.
Illusztráció
A felhasználó az A ponton van. Körülnézve számos jó látható referenciafunkció van, így a fejkövetés minősége kiváló, és az elhelyezett hologramok megmaradnak.
A felhasználó ezután 10 métert sétál a fizikai térben a B pontig. Az átmenő forgalom nyomon követése azonban alacsonyabb hűséget eredményez, ezért miután a felhasználó elérte a B pontot, az eszköz regisztrálja, hogy csak 9 métert tett meg. Ez nagy egyenletes mennyiség az ábrához, de összhangban van az eszköz specifikációival, ami +-10%-os távolsághibát engedélyez ilyen esetben.
Ahogy az eszköz körülnéz a B pontban, a rendszer jó látható funkciókat rögzít. A hologramok nyomon követése és stabilitása a B ponton is kiváló.
Bár a felhasználó egy adott ponton van, az adott pont körüli dolgok nagyszerűen néznek ki. De van egy ellentmondás. A fizikai térben az A és B pontok közötti 10 méter csak 9 méter a virtuális térben. Ezt gyakran nevezik "skálázási problémának", bár a "távolsági probléma" pontosabb lehet. Hamarosan megvizsgáljuk ezt a problémát.
Vissza a forgatókönyvünkhöz: a következő művelethez a felhasználó visszatér az A ponthoz. A követési hibák miatt a B és A közötti 10 méteres séták a fizikai térben akár 10,5 métert is tesznek ki a virtuális térben. Ez azt jelenti, hogy az A-tól B-ig megtett teljes séta nettó 1,5 méter távolságot ad hozzá, amikor 0,0 méternek kell lennie. Ez nyilvánvaló probléma. Az A pontnál a séta előtt elhelyezett hologram most 1,5 méterre jelenik meg az A ponttól.
Itt segíthetnek a térbeli horgonyok. A B és a visszalépés után a rendszer felismeri, hogy az A pontnál van, de a fej Unity koordinátái 1,5 méterrel megváltoztak. De ha az A pont hologramján van egy térbeli horgony, a térbeli horgony azt gondolhatja, hogy "Az A pontnál vagyok, a fej az A pontnál van, de a koordinátáim 1,5 méterre eltérnek a fej koordinátáitól. 1,5 méterrel módosítom a koordinátáimat, hogy újra megegyezzünk." És egy térbeli horgony a C ponton, egy mérő a felhasználótól balra, megy keresztül ugyanazon a folyamaton. Lényegében a térbeli horgony folyamatosan újradefiniálja, hogy az A pont a Unity térben legyen, hogy a fej koordinátái mindig helyesek legyenek. És minden térbeli horgony egymástól függetlenül teszi ezt a beállítást a fizikai világban való helyéért.
World Locking Tools for Unity
A World Locking Tools megőrzi a térbeli horgonyok belső készletét, amelyek a felhasználó mozgása során terjednek. Elemzi a kamera koordinátáit és azokat a térbeli horgonyokat minden képkockán. Észleli, ha az összes térbeli horgony több mint 1,5 métert mozog, hogy megfeleljen a fej koordinátáinak, és azt mondja: "Hmm, ahelyett, hogy megváltoztatná a koordinátákat minden a világon, hogy kompenzálja a fej más koordinátákat, mint az utolsó alkalommal, hogy itt volt, én csak rögzíteni a fej koordinátáit helyette."
Ez azt jelenti, hogy ahelyett, hogy térbeli horgonyt kellene húzni egy hologramot a Unity térbe, hogy a fizikai térben rögzített maradjon, a teljes Unity világűr a fizikai térhez van zárva. Ha egy hologram mozgásmentes a Unity-térben, akkor a körülötte lévő fizikai világhoz képest mozdulatlan marad. És ugyanolyan fontos, hogy továbbra is rögzített marad a körülötte lévő virtuális funkciókhoz képest.
Nyilván bonyolultabb a motorháztető alatt, mint ez. Ne feledje például, hogy a térbeli horgonyokkal az a probléma, hogy egymástól függetlenül mozognak, így nem mindig értenek egyet egymással. A mögöttes FrozenWorld motor választottbírósági ezeket a nézeteltéréseket, hogy jöjjön ki a leginkább érzékelhetően helyes kamera korrekció, és nem, hogy minden keret.
Ismét a méretezési probléma
Ha a felhasználó az A ponttól a B pontig és vissza az A pontig halad, a rendszer elegendő információval rendelkezik az átvitel során bekövetkezett eltérés elhárításához. Lehet, hogy nem tudja, hol van a B pont (és általában nem tudja pontosan, hogy a B pont hol van az A ponthoz képest), de tudja, hogy az A ponton van-e, vagy sem. Amikor visszakerül az A ponthoz, elvárja, hogy a dolgok nagyjából olyanok legyenek, mint azok. Ha nem, a rendszer képes erre.
De mi a helyzet a B ponttal? Úgy gondolta, hogy a 10 méteres séta csak 9 méter. És nem tudja, hogy ez a 9 méter helyes-e, és ha nem, akkor mennyi van kikapcsolva. A térbeli horgonyok itt nem segítenek. A térbeli horgonyok ugyanazzal a problémával rendelkeznek, mint a fejkövető; Mindegyik tudja, hol van a fizikai világban (a látható jellemzőkhöz képest), de egy térbeli horgony nem tud semmit egy másik térbeli horgonyról. Pontosabban a térbeli horgonyok nem tudják, milyen messze vannak egymástól.
Ez számos formában kényelmetlen lehet, de blokkoló problémává válik, ha az objektumok vagy objektumrendszerek mérete nagyobb, mint egy méter. Fontolja meg egy szoba, egy épület, egy asztalkészlet vagy akár egy autó modelljét. Bár a térbeli horgony a modell egyik végét fizikai világ funkcióval regisztrálhatja, a modell másik végének elérésekor jelentős hiba halmozódhat fel. A másik vége nem lesz megfelelően felsorakozott. A hiba pedig eszközről eszközre változik, és akár ugyanazon az eszközön futtatott futtatások között is.
És eddig ebben a vitában nem vezették be a probléma megoldásához szükséges minimális információkat.
A World Locking Tools a Space Pins API-val kapcsolatos problémát kezeli, amely lehetővé teszi, hogy az alkalmazás elegendő információt adjon meg a fizikai világról és a holografikus világról, hogy kijavítsa a megtett távolság hibáit. Ez lehetővé teszi, hogy a nagy hologramok a fizikai világhoz igazodva jelenjenek meg.
Az alaprendszer megismerése
Most, hogy áttekintettük a World Locking Tools fogalmait, térjünk vissza, és tekintsük át az alaprendszert. Az alapkonfigurációs művelet által nyújtott és nem nyújtott szolgáltatások megismerése segít később meghatározni a speciális fogalmak megfelelő használatát, és hogy ezek a speciális technikák szükségesek-e egy adott alkalmazáshoz.