Gyakorlat – Az Azure Spatial Anchors használatának első lépései

Befejeződött

Ebben a leckében megismerheti a következő lépésekhez szükséges lépéseket:

  • Azure Spatial Anchors-munkamenet indítása és leállítása.
  • Térbeli horgonyok létrehozása, feltöltése és letöltése egyetlen eszközön.

A modul előfeltételeinek teljesítése miatt már rendelkeznie kell egy Unity-projekttel, amely az OpenXR és az MRTK3 használatára van beállítva és konfigurálva. Nyissa meg a projektet, majd ellenőrizze, hogy a megfelelő képességek vannak-e kiválasztva:

  1. Lépjen a Project Gépház > Player > Publishing Gépház szerkesztéséhez>.
  2. Görgessen le a Képességek szakaszhoz, és jelölje ki a következőket, ha még nincs kijelölve:
  • SpatialPerception
  • InternetClient
  • PrivateNetworkClientServer

Ha végzett, zárja be a Project Gépház ablakot, és folytassa a következő lépésekkel.

Beépített Unity-csomagok telepítése és az oktatóanyag-eszközök importálása

  1. A menüsávon válassza az Ablak> Csomagkezelő lehetőséget.

  2. Ellenőrizze, hogy az AR Foundation 5.0.3-s vagy legújabb verziója telepítve van-e.

    Screenshot of selections for verifying the AR Foundation version for Package Manager.

Az oktatóanyag eszközeinek importálása

  1. Az oktatóanyag követésével adja hozzá az Azure Spatial Anchors SDK V2.12-es vagy legújabb verzióját a projekthez.

  2. Töltse le és importálja a következő Unity egyéni csomagokat ebben a sorrendben:

    Megjegyzés:

    Az MRTK3 és az ASA importálása hibákat okozhat, ha az ARFoundation-csomag verziója nem egyezik az importált ARSubsystems-verzióval. A javításig manuálisan is hozzáadhatja a com.unity.xr.arsubsystems 5.0.2-es verzióját a projekt Csomagkezelő kerülő megoldásként.

    Figyelmeztetést kap az ARSubsystems elavultságára, de figyelmen kívül hagyhatja. Ha a "WorldAnchor.SetNativeSpatialAnchorPtr(IntPtr)" feliratú CS0618-figyelmeztetések elavultak, ezeket is figyelmen kívül hagyhatja.

A jelenet előkészítése

Ebben a szakaszban az oktatóanyag előtagjainak hozzáadásával készíti elő a jelenetet.

  1. A Projekt panelen nyissa meg az Eszközök>MRTK-t. Tutorials.AzureSpatialAnchors>Prefabs mappa, majd húzza a következő előfabákat a Hierarchia panelre, hogy hozzáadja őket a jelenethez:

    • ButtonParent előtagok
    • Utasítások előtagok
    • ParentAnchor-előfabs
    • Módosítsa a ButtonParent Tranform/Position értékeit a következőre: X = 0,0, Y = 1,6, Z = 0,6
    • Módosítsa az utasítások Tranform/Position értékeit a következőre: X = -0,8, Y = 2,0, Z = 2,0
    • Módosítsa a ParentAnchor Tranform/Position értékeit a következőre: X = -0,3, Y = 1,5, Z = 0,6 Screenshot of prefabs added to the Hierarchy pane.

    Tipp.

    Ha a jelenetben lévő nagy ikonokat (például a nagy keretes "T" ikonokat) zavarónak találja, elrejtheti őket a Gizmos legördülő menü megnyitásával és az egyes objektumok ikonjainak megjelenítésének kikapcsolásával.

  2. A Hierarchia ablakban válassza az MRTK XR Rig> Kamera Eltolás lehetőséget.

  3. A Felügyelő panelen az Összetevő hozzáadása gombbal adja hozzá a következő összetevőket:

    • AR Horgonykezelő (szkript)
    • DisableDiagnosticsSystem (szkript)

    Megjegyzés:

    Az AR Anchor Manager (Script) összetevő hozzáadásakor a rendszer automatikusan hozzáadja az XR Origin összetevőt, mert az AR Anchor Manager (Script) összetevőnek szüksége van rá.

    Screenshot of adding AR Anchor Manager.

A gombok konfigurálása a jelenet üzemeltetéséhez

Ebben a szakaszban szkripteket fog hozzáadni a jelenethez, hogy gombesemények sorozatát hozza létre, amelyek bemutatják a helyi horgonyok és a térbeli horgonyok alkalmazásbeli viselkedésének alapjait.

  1. A Hierarchia panelen bontsa ki a ButtonParent objektumot, és válassza ki az első gyermekobjektumot, a StartAzureSessiont.

  2. A Felügyelő panelen lépjen a Lenyomható gomb összetevőre. Van egy Kattintásra () eseménye.

  3. A hierarchiában jelölje ki a ParentAnchor objektumot, majd húzza a Felügyelőre, és helyezze a Kattintásra() esemény Nincs (Objektum) mezőjébe.

  4. Válassza a Nincs függvény legördülő menüt, majd válassza az AnchorModuleScript>StartAzureSession ()lehetőséget. Ez a függvény az esemény aktiválásakor lesz végrehajtva.

    Screenshot that shows Unity with the StartAzureSession button's OnClick event configured.

  5. A ButtonParent gyermeklistában a Hierarchia panelen válassza a StopAzureSession lehetőséget

  6. A Felügyelő panelen lépjen a Lenyomható gomb összetevőre.

  7. A hierarchiában jelölje ki a ParentAnchor objektumot, majd húzza a Felügyelőre, és helyezze a Kattintásra() esemény Nincs (Objektum) mezőjébe.

  8. Válassza a Nincs függvény legördülő menüt, majd válassza az AnchorModuleScript>StopAzureSession ()lehetőséget.

    Screenshot of Unity with the StopAzureSession button's OnClick event configured.

  9. A ButtonParent gyermeklistában a Hierarchia panelen válassza a CreateAzureAnchor lehetőséget.

  10. A Felügyelő panelen lépjen a Lenyomható gomb összetevőre.

  11. A hierarchiában jelölje ki a ParentAnchor objektumot, majd húzza a Felügyelőre, és helyezze a Kattintásra() esemény Nincs (Objektum) mezőjébe.

  12. Válassza a Nincs függvény legördülő menüt, és válassza az AnchorModuleScript>CreateAzureAnchor lehetőséget.

  13. Jelölje ki ismét a ParentAnchor objektumot, majd húzza a Felügyelőre, és helyezze el az AnchorModuleScript.CreateAzureAnchor paraméterben.

    Screenshot of Unity with the CreateAzureAnchor button's OnClick event configured.

  14. A ButtonParent gyermeklistában a Hierarchia panelen válassza a RemoveLocalAnchor lehetőséget.

  15. A Felügyelő panelen lépjen a Lenyomható gomb összetevőre.

  16. A hierarchiában jelölje ki a ParentAnchor objektumot, majd húzza a Felügyelőre, és helyezze a Kattintásra() esemény Nincs (Objektum) mezőjébe.

  17. Válassza a Nincs függvény legördülő menüt, majd válassza az AnchorModuleScript>RemoveLocalAnchor lehetőséget.

  18. Jelölje ki ismét a ParentAnchor objektumot, majd húzza a Felügyelőre, és helyezze el az AnchorModuleScript.RemoveLocalAnchor paraméterben.

    Screenshot of Unity with the RemoveLocalAnchor button's OnClick event configured.

  19. A ButtonParent gyermeklistában a Hierarchia panelen válassza a FindAzureAnchor lehetőséget.

  20. A Felügyelő panelen lépjen a Lenyomható gomb összetevőre.

  21. A hierarchiában jelölje ki a ParentAnchor objektumot, majd húzza a Felügyelőre, és helyezze a Kattintásra() esemény Nincs (Objektum) mezőjébe.

  22. Válassza a Nincs függvény legördülő menüt, majd válassza az AnchorModuleScript>FindAzureAnchor lehetőséget.

    Screenshot of Unity with the FindAzureAnchor button's OnClick event configured.

  23. A ButtonParent gyermeklistában a Hierarchia panelen válassza a DeleteAzureAnchor lehetőséget.

  24. A Felügyelő panelen lépjen a Lenyomható gomb összetevőre.

  25. A hierarchiában jelölje ki a ParentAnchor objektumot, majd húzza a Felügyelőre, és helyezze a Kattintásra() esemény Nincs (Objektum) mezőjébe.

  26. Válassza a Nincs függvény legördülő menüt, majd válassza az AnchorModuleScript>DeleteAzureAnchor lehetőséget.

    Screenshot of Unity with the DeleteAzureAnchor button's OnClick event configured.

Csatlakozás a jelenetet az Azure-erőforrásba

  1. A Hierarchia panelen válassza ki a ParentAnchor objektumot.

  2. Az Inspector panelen keresse meg a Spatial Anchor Manager (Script) összetevőt.

  3. Konfigurálja a Hitelesítő adatok szakaszt az oktatóanyag-sorozat előfeltételeinek részeként létrehozott Azure Spatial Anchors-fiók hitelesítő adataival:

    • A Térbeli horgonyok fiókazonosító mezőjébe illessze be a fiókazonosító értékét az Azure Spatial Anchors-fiókból.
    • A Térbeli horgonyok fiókkulcs mezőben illessze be az elsődleges vagy másodlagos hozzáférési kulcs értékét az Azure Spatial Anchors-fiókból.
    • A Térbeli horgonyok fióktartomány mezőjébe illessze be a Fióktartomány értékét az Azure Spatial Anchors-fiókból.

    Screenshot of Unity with the Spatial Anchor Manager configured.

Az Azure Spatial Anchors alapszintű viselkedésének kipróbálása

Az Azure Spatial Anchors nem futtatható a Unityben. Az Azure Spatial Anchors funkcióinak teszteléséhez létre kell készítenie a projektet, és üzembe kell helyeznie az alkalmazást az eszközén.

Tipp.

A Unity-projekt HoloLens 2-ben való buildelésére és üzembe helyezésére vonatkozó emlékeztetőért tekintse meg az alkalmazás létrehozása a HoloLens 2-ben című cikket, amely a (választható) buildelésről és az alkalmazás üzembe helyezéséről szóló szakaszból indul ki.

Amikor az alkalmazás fut az eszközön, kövesse az Azure Spatial Anchor oktatóanyagának útmutatása panelen megjelenő képernyőn megjelenő utasításokat:

  1. Helyezze át a kockát egy másik helyre.
  2. Azure-munkamenet indítása.
  3. Hozzon létre egy Azure-horgonyt a kocka helyén.
  4. Állítsa le az Azure-munkamenetet.
  5. Távolítsa el a helyi horgonyt, hogy a felhasználó áthelyezhesse a kockát.
  6. Vigye a kockát máshová.
  7. Azure-munkamenet indítása.
  8. Keresse meg az Azure horgonyt, hogy a kockát a 3. lépésben a helyhez helyezze.
  9. Törölje az Azure horgonyt.
  10. Állítsa le az Azure-munkamenetet.

Figyelem

Az Azure Spatial Anchors az internetet használja a horgonyadatok mentéséhez és betöltéséhez. Győződjön meg arról, hogy az eszköz csatlakozik az internethez.