Eszközök és vizualizációk

A Microsoft.MixedReality.WorldLocking.Tools névtérben található eszközök és vizualizációk a fejlesztés során nyújtanak segítséget. Emellett kiindulópontként is használhatók a World Locking Tools (WLT) rendszerrel való speciális közvetlen interakcióhoz.

Bár nem közvetlen használatra szánták őket, mint egy alkalmazáson belül, az alkalmazás fejlesztője szabadon dönthet úgy, hogy ezt megtehesse.

A WorldLocking.Core a megfelelő alkalmazásforgatókönyvekben használható. Az eszközök azonban feltételezéseket tehetnek az alkalmazással kapcsolatban. Ezek a feltételezések bizonyos helyzetekben helytelenek lehetnek.

Mielőtt bármelyik eszközt közvetlenül beépítené a szállítási alkalmazásba, fontolja meg az eszköz saját igényeinek és erőforrásainak megfelelő verziójának létrehozását.

Eszközök

Igazítók

Az igazítók olyan összetevők, amelyek kezelik az újrabecsítési eseményeket. Különösen mellékletpontokat hoznak létre. Átméretezési művelet esetén az AttachmentPoint értesítési visszahívásként szolgál. Az Igazító megfelelően kezeli ezt az eseményt.

Tekintse meg az AttachmentPoints további fogalmi ismertetését.

Az újrabecsülendő eseményekre adott pontos helyes reakció különböző típusú objektumok esetén változik, és nagyon alkalmazásspecifikus. Ha például az objektum töredéke jelenleg inaktív, akkor meg kell jelennie az objektumnak? Egyes alkalmazások esetében, mivel az objektum megfelelő elhelyezése nem határozható meg, rejtve kell lennie. Más alkalmazások esetében jobb, ha az objektumot átmenetileg helytelen pózban jeleníti meg, mint az eltűnésének zavarát. És még az olyan alkalmazások esetében is, amelyeknek el kell rejtenie az objektumot, többféleképpen is el lehet végezni a elrejtést (például letiltás vagy távolodás).

Az AdjusterFixed és az AdjusterMoving összetevők minimálisan két gyakori forgatókönyvet kezelnek.

Az AdjusterFixed összetevő feltételezi, hogy a cél általában nem mozog. Ha a World Locking Tools egy refit esemény miatt korrekciós pózt küld, az AdjusterFixed objektuma a világon álló állapotban marad.

Ezzel szemben az AdjusterMoving összetevő feltételezi, hogy a cél a Unity koordinátatéren keresztüli mozgatása. A World Locking Tools rendszert a cél helyéről mérve tartja, így a rendszer az átméretezési művelet esetén a legpontosabb korrekciót tudja adni, hogy a cél pozíciója a fizikai világhoz képest állandó maradjon abban a pillanatban.

Adapterek

Az Adapter összetevői csak illusztrációként szolgálnak. Ha az egyik adaptert használja, érdemes újragondolnia, hogyan próbálja használni a World Locking Tools eszközt.

Az MRTK már rendelkezik beépített adapterekkel, így az alkalmazás részéről nincs szükség további koordinátarendszer-átalakításra.

Előfordulhatnak olyan esetek, különösen, ha nem használ MRTK-t, amikor a spongy space koordinátákban jelentést készítő natív erőforrásokról a Befagyasztott térre konvertál. Ezekben az esetekben az alkalmazásfejlesztő az itt található adapterek egyikét jó referenciaként találhatja meg.

  • WorldAnchorAdapter – A WorldAnchor úgy állítja be egy objektum pózát a Spongy térben, hogy a fizikai térben rögzített maradjon. Ez redundáns a World Locking Tools által biztosított világzárolási területtel, így az objektum a Fagyasztott térben sodródik. Ez az adapter lehetővé teszi, hogy a WorldAnchor fenntartsa egy objektum pózát a fagyott térben. Ez a diagnosztika kivételével szükségtelen. A Unity globális koordináta-területének minden objektumát a World Locking Tools zárolja.

  • ToggleWorldAnchor – Hasonló a WorldAnchorAdapterhez, de kapcsolható. Emellett automatikusan átvált normál WorldAnchor-viselkedésre, ha a WorldLockingManager le van tiltva. Csak diagnosztikához használható.

  • FrozenSpatialMapping – Egy adapter kezeli és megfelelően rendereli az eredményeket egy SurfaceObserverből. Az MRTK térbeli tudatossági rendszer mindezeket a funkciókat és egyebeket biztosítja, és nem igényel adaptert a World Locking Tools használatához.

  • FrozenTapToAdd – A Unity bemeneti rendszerével való közvetlen együttműködéshez a bejövő koordináta-adatok konvertálása szükséges az itt látható módon. Ez szükségtelen az MRTK bemeneti rendszerében.

Visualizers

Horgonydiagram-vizualizáció

Az AnchorGraphVisual és a hozzá tartozó prefab a megadott vizualizációk magja. Az összetevők a következők:

  1. Tengelyek – A Spongy Space (zöld) és a Fagyott tér (kék) eredetének aktuális pózai standard 3 nyíltengely-azonosítóként jelennek meg.

  2. Spongy Anchors - Ezek a natív mögöttes horgonyok, amelyeket azért hoztak létre, hogy táplálja a Frozen World Engine optimalizálás. Mindegyiket egy gyűrű, valamint az azt azonosító szöveges címke jelöli. Emellett további információkat is közvetít a szín és a méret.

    • Az aktív lánctalpas horgony zöld lesz.

    • A zéró relevanciájú lánctalpas horgony piros színű lesz.

    • A nem támogatott horgony sárga lesz.

    • Minél nagyobb a gyűrű, annál nagyobb a horgony relevanciája.

  3. Rögzített horgonyok – Ezek a rögzített terület megfelelő referenciapontjai. Nyomkövető hiba hiányában ezek pontosan illeszkednek a Spongy Anchorshoz.

  4. Spongy-Frozen Élek – Ezek összekötik a spongy horgonyokat a hozzájuk tartozó rögzített horgonyokkal. Mivel a tracker hiba hiányában ezek egybeesnének, ha nem látnánk ezeket az éleket, az azt jelenti, hogy minden tökéletesen működik. Mindenesetre ezek az élek nem lehetnek hosszabbak néhány centiméternél. Vörösek a fagyos végen. A szín kékre halványul a szivacsos végen.

  5. Horgony élek – Ezek a vékony kék-szürke vonalak a horgonydiagram spongy horgonyai közötti kapcsolatokat mutatják.

Tipikus horgonydiagram, amely bejár egy helyiséget

A World Locking Tools által a fizikai környezetről való mozgás során létrehozott horgonydiagram megjelenítésének engedélyezéséhez csak a WorldLockingTools > Prefabs > AnchorGraphVisual előtagot kell a jelenetbe dobni. Ez általában testvérként van hozzáadva a WorldLockingContext elemhez, de pontos elhelyezése a hierarchiában nem lényeges. Ezt azonban nem szabad a kamerahierarchiába helyezni.

A WLT által belsőleg létrehozott és használt térbeli horgonyok a kamera helyzetében jönnek létre. Mivel a horgonyvizualizációk szemszinten való végigjárása zavaró, a rendszer alapértelmezés szerint 1 méterrel lejjebb jeleníti meg őket a valódi helyzetüktől. Ha meg szeretné tekinteni a horgonyvizualizációkat a tényleges horgonypozícióknál, állítsa a Horgonydiagram vizualizáció összetevő Függőleges elmozdulás paraméterét nullára.

További kimenet

A Világzárolási példák szöveges diagnosztikát is tartalmaznak. Ezek többsége csak a World Locking Tools fejlesztői számára fontos, nem pedig a képességeinek ügyfelei számára. Ezek azonban olvashatók, és a StatusToText szkriptben látható módon valós idejű megjelenítésre is elérhetők.

Tipikus diagnosztikák megjelenítése

A postmortem elemzéshez a WorldLockingContextDiagnostics szakasza nagyon hasznos lehet a fagyasztott világmotor hibáinak jelentéséhez. További információkért lásd: Hibajelentés .