Megosztás a következőn keresztül:


Világzárolás és térbeli horgonyok a Unityben

A világ zárolási eszközeinek fő képe

A vegyes valóságbeli alkalmazások létrehozásának nagy része, hogy a hologramok helyben maradjanak, mozogjanak Önnel, vagy bizonyos esetekben más hologramokhoz viszonyítva helyezhessék el magukat. Ez a cikk végigvezeti a Javasolt megoldáson a World Locking Tools használatával, de a Unity-projektek térbeli horgonyainak manuális beállításával is foglalkozunk. Mielőtt bármilyen kódba belevágnánk, fontos tisztában lenni azzal, hogy a Unity hogyan kezeli a térközök és horgonyok koordináta-kezelését a saját motorjában.

Világszintű koordinátarendszerek

Napjainkban játékok, adatvizualizációs alkalmazások vagy virtuális valóságbeli alkalmazások írásakor a tipikus megközelítés egy olyan abszolút világkoordináta-rendszer létrehozása, amelyre minden más koordináták megbízhatóan visszaképezhetők. Ebben a környezetben mindig találhat egy stabil átalakítást, amely meghatározza a kapcsolatot a világ bármely két objektuma között. Ha nem helyezné át ezeket az objektumokat, a relatív átalakításuk mindig ugyanaz maradna. Ez a fajta globális koordináta-rendszer könnyen elérhető, ha tisztán virtuális világot jelenít meg, ahol előre ismeri az összes geometriát. A szobaméretű VR-alkalmazások ma általában ilyen abszolút helyiségméretű koordináta-rendszert hoznak létre, amelynek eredete a padlón található.

Ezzel szemben egy nem csatlakoztatott vegyes valóságú eszköz, például a HoloLens dinamikus érzékelőalapú ismeretekkel rendelkezik a világról, folyamatosan igazítva tudását a felhasználó környezetének idejére, miközben több métert gyalogolnak egy épület teljes emeletén. Egy világszintű élményben, ha az összes hologramot egy naiv merev koordinátarendszerbe helyezné, ezek a hologramok idővel elsodródnak, akár a világ alapján, akár egymáshoz képest.

Például a headset jelenleg úgy véli, hogy a világ két helye 4 méter távolságra van egymástól, majd később pontosítja ezt a megértést, és megtanulja, hogy a helyek valójában 3,9 méterre vannak egymástól. Ha ezeket a hologramokat eredetileg 4 méterre helyezték volna el egy merev koordinátarendszerben, akkor az egyik mindig 0,1 méterre jelenne meg a valós világtól.

A térbeli horgonyokat manuálisan is elhelyezheti a Unityben, hogy megőrizze a hologram pozícióját a fizikai világban, amikor a felhasználó mobil. Ez azonban feláldozza az önkonzisztenciát a virtuális világban. A különböző horgonyok folyamatosan mozognak egymáshoz képest, és a globális koordináta-térben is mozognak. Ebben a forgatókönyvben az egyszerű feladatok, például az elrendezés nehézkessé válnak. A fizikaszimuláció is problémás lehet.

A World Locking Tools (WLT) mindkét világból a legjobbat nyújtja, egyetlen merev koordináta-rendszert stabilizálva a virtuális jelenetben elterülő térbeli horgonyok belső készletével, miközben a felhasználó mozog. A WLT elemzi a kamera koordinátáit, és ezek a térbeli horgonyok minden keretet. Ahelyett, hogy megváltoztatná a világ összes koordinátáját, hogy kompenzálja a felhasználó fejének koordinátáinak korrekcióit, a WLT csak a fej koordinátáit rögzíti.

Válassza ki a világzárolási módszert

Ha lehetséges, használja a World Locking Tools eszközt a hologramok elhelyezéséhez.

A World Locking Tools stabil koordinátarendszert biztosít, amely minimalizálja a virtuális és a valós jelölők közötti látható ellentmondásokat. A World Locking Tools a teljes jelenetet zárolja egy közös horgonykészlettel, ahelyett, hogy minden objektumcsoportot zárolna a csoport saját egyedi horgonyával.

A World Locking Tools automatikusan kezeli a térbeli horgonyok belső létrehozását és kezelését. Nem kell az ARAnchorManagerrel vagy a WorldAnchorral együttműködnie ahhoz, hogy a hologramok világzárva maradjanak.

  • A Unity 2019/2020-hoz az OpenXR vagy a Windows XR beépülő modul használatával használja az ARAnchorManagert.
  • Régebbi Unity-verziókhoz vagy WSA-projektekhez használja a WorldAnchort.

Világzárolás beállítása

A World Locking Tools használatának megkezdéséhez töltse le a Mixed Reality funkcióeszközt. Az alapokkal kapcsolatos további információkért tekintse meg a World Locking Tools fő dokumentációs oldalát, amely áttekintésre, rövid útmutatóra és egyéb hasznos témakörökre mutató hivatkozásokat tartalmaz.

Automatikus beállítás

Ha a projekt készen áll a használatra, futtassa a konfigurációs jelenet segédprogramot a Mixed Reality > World Locking Toolsból:

Unity editor with Mixed Reality Toolkit menu selected

Fontos

A Jelenet konfigurálása segédprogram bármikor újra futtatható. Újra kell futtatni például, ha az AR-cél régiről XR SDK-ra módosult. Ha a jelenet már megfelelően van konfigurálva, a segédprogram futtatásának nincs hatása.

Visualizers

A korai fejlesztés során a vizualizációk hozzáadása hasznos lehet annak biztosításához, hogy a WLT megfelelően legyen beállítva és működjön. Az éles teljesítmény érdekében eltávolíthatók, vagy ha bármilyen okból már nincs rájuk szükség, használja a Vizualizációk eltávolítása segédprogramot. A vizualizációkkal kapcsolatos további részletek az Eszközök dokumentációban találhatók.

Állandó világzárolás

A térbeli horgonyok hologramokat mentenek a valós térben az alkalmazás munkamenetei között. A HoloLens horgonytárolóban mentett térbeli horgonyok különböző munkamenetekben találhatók és tölthetők be, és ideális tartalék, ha nincs internetkapcsolat.

Fontos

A helyi horgonyok az eszközön, az Azure Spatial Anchors pedig a felhőben vannak tárolva. A helyi és az Azure-horgonyok ütközés nélkül is ugyanabban a projektben lehetnek. További információ az Azure-felhőszolgáltatásoknak a horgonyok tárolására való integrálásáról: Azure Spatial Anchors.

A World Locking Tools alapértelmezés szerint visszaállítja a Unity koordináta-rendszerét a fizikai világhoz képest a helyi térbeli horgonyok megőrzését támogató eszközökön futó munkamenetek során. Ahhoz, hogy egy hologram ugyanazon a helyen jelenjen meg a fizikai világban az alkalmazás kilépése és újrafuttatása után, az alkalmazásnak csak vissza kell állítania ugyanazt a pózt a hologramra.

Világzárolási környezeti összetevő a Unity felügyelőjében

Ha az alkalmazásnak finomabb vezérlésre van szüksége, letilthatja az automatikus mentést és az automatikus betöltést az ellenőrben, és kezelheti a szkriptek adatmegőrzését. További információ: Térbeli koordináta-rendszerek megőrzése.

A World Locking Tools csak HoloLens-eszközökön támogatja a helyi horgonymegőrzést. Android, iOS és HoloLens rendszerű eszközök esetén integrálható az Azure Spatial Anchors szolgáltatással a koordináta-terek munkamenetek és eszközök közötti megőrzésének és megosztásának támogatása érdekében. A World Locking Tools és az Azure Spatial Anchors együttes használatával kapcsolatos további információkért és mintákért lásd: World Locking Tools (WLT) és Az Azure Spatial Anchors (ASA) együttes használata.

Következő lépések

Globálisan zárolt koordináta-tér megosztása:

Tudnivalók a térbeli leképezésről:

Térjen vissza a Unity fejlesztési ellenőrzőpontjaihoz:

Lásd még