Cvičení – začínáme s Azure Spatial Anchors
V této lekci prozkoumáte kroky potřebné pro:
- Spusťte a zastavte sezení Azure Spatial Anchors.
- Vytvořte, nahrajte a stáhněte prostorové kotvy na jednom zařízení.
V důsledku dokončení požadavků pro tento modul learn byste už měli mít projekt Unity, který je nastavený a nakonfigurovaný pro OpenXR a MRTK3. Otevřete tento projekt a zkontrolujte, jestli máte vybrané správné možnosti:
- Přejděte na Úpravy > Nastavení projektu > Přehrávač > Nastavení publikování.
- Posuňte se dolů do části Schopnosti a vyberte následující položky, pokud ještě nejsou vybrané:
- ProstorovéVnímání
- InternetClient
- PrivateNetworkClientServer
Až budete hotovi, zavřete okno Nastavení projektu a pokračujte dalším postupem.
Nainstalujte integrované balíčky Unity a importujte materiály pro výuku
Na nabídkové liště vyberte Okno>Správce balíčků.
Ověřte, že je nainstalovaná verze AR Foundation verze 5.0.3 nebo nejnovější verze.
Import materiálů tutoriálu
Přidejte do projektu sadu Azure Spatial Anchors SDK verze 2.12 nebo nejnovější verzi podle tohoto návodu.
Stáhněte a naimportujte následující vlastní balíčky Unity v tomto pořadí:
- MRTK.HoloLens2.Unity.Tutorials.Assets.GettingStarted.3.0.0.unitypackage
- MRTK. HoloLens2.Unity.Tutorials.Assets.AzureSpatialAnchors.3.0.0.unitypackage
Poznámka
Import MRTK3 i ASA může způsobit chyby, když verze balíčku ARFoundation neodpovídá importované verzi ARSubsystems. Dokud to nebude opraveno, můžete ručně přidat com.unity.xr.arsubsystems verze 5.0.2 do správce balíčků projektu jako alternativní řešení.
Zobrazí se upozornění, že arSubsystems je zastaralý, ale můžete ho ignorovat. Pokud se zobrazí nějaká upozornění CS0618, která říkají "WorldAnchor.SetNativeSpatialAnchorPtr(IntPtr)" je zastaralá, můžete je také ignorovat.
Příprava scény
V této části připravíte scénu přidáním některých prefabů kurzu.
V podokně Projektu přejděte na Prostředky>MRTK.Tutorials.AzureSpatialAnchors>Prefabs složku a potom přetáhněte následující Prefabs do podokna Hierarchy a přidejte je do scény:
- předfaktory ButtonParent
- pokyny prefabrikáty
- prefabs parentAnchor
- Změňte hodnoty Tranform/ Position buttonParentu na následující hodnoty: X = 0,0, Y = 1,6, Z = 0,6
- Změňte hodnoty Transform/Position na následující: X = -0,8, Y = 2,0, Z = 2,0
- Změňte hodnoty ParentAnchor Transform/Position na následující: X = −0,3, Y = 1,5, Z = 0,6
Spropitné
Pokud ve scéně najdete velké ikony (například velké ikony s rámečkem "T") rušivé, můžete je skrýt otevřením rozevíracího seznamu Gizmos a vypnutím zobrazení ikon pro jednotlivé objekty.
V okně Hierarchy vyberte MRTK XR Rig>Odsazení kamery.
V podokně inspektoru přidejte následující součásti pomocí tlačítka Přidat součást:
- AR Manažer ukotvení (skript)
- DisableDiagnosticsSystem (script)
Poznámka
Když přidáte komponentu AR Anchor Manager (Script), komponenta XR Origin se automaticky přidá, protože to vyžaduje komponenta AR Anchor Manager (Script).
Konfigurace tlačítek pro provoz scény
V této části přidáte do scény skripty, které vytvoří řadu událostí spouštěných tlačítkem, které demonstrují základy chování místních ukotvení i prostorových ukotvení v aplikaci.
V podokně hierarchie rozbalte objekt ButtonParent a vyberte první podřízený objekt StartAzureSession.
V podokně inspektoru přejděte do komponenty stisknutelným tlačítkem. Má událost Při kliknutí na ().
V hierarchiivyberte objekt ParentAnchor a přetáhněte ho do inspektoru události None (Objekt) události Při kliknutí().
Vyberte rozevírací seznam Bez funkce a pak vyberte AnchorModuleScript>StartAzureSession (). Tato funkce se spustí při aktivaci události.
V podokně Hierarchie, v seznamu podřízených ButtonParent, vyberte StopAzureSession.
V podokně Inspektoru přejděte ke komponentě Pressable Button.
Ve struktuře Hierarchievyberte objekt ParentAnchor a přetáhněte ho do Inspektoru, potom ho umístěte do pole události Při kliknutí(), kde je None (Objekt).
Vyberte rozevírací seznam Bez funkce a následně vyberte AnchorModuleScript>StopAzureSession ().
V podokně hierarchie v podřízené seznamu ButtonParent vyberte CreateAzureAnchor.
V podokně inspektoru přejděte ke komponentě Pressable Button.
V hierarchii vyberte objekt ParentAnchor, přetáhněte jej do Inspektoru a umístěte jej do pole None (Object) události On Clicked().
Vyberte rozevírací seznam Bez funkce a vyberte AnchorModuleScript>CreateAzureAnchor.
Znovu vyberte objekt ParentAnchor, přetáhněte ho do inspektoru a pusťte ho do parametru AnchorModuleScript.CreateAzureAnchor.
V podokně hierarchie v podřízeného seznamu ButtonParent vyberte RemoveLocalAnchor.
V panelu Inspektor přejděte ke komponentě Stisknutelné tlačítko.
Ve struktuře vyberte objekt ParentAnchor a přetáhněte ho do Inspektoru, pak ho umístěte do pole None (Objekt) události Při kliknutí().
Vyberte rozevírací seznam Žádná funkce a pak vyberte AnchorModuleScript>RemoveLocalAnchor.
Znovu vyberte objekt ParentAnchor, poté ho přetáhněte do inspektoru a upusťte ho do parametru AnchorModuleScript.RemoveLocalAnchor.
V podokně hierarchie v podřízeného seznamu ButtonParent vyberte FindAzureAnchor.
V podokně inspektoru přejděte do komponenty stisknutelným tlačítkem.
V hierarchiivyberte objekt ParentAnchor, přetáhněte ho do Inspektoru a umístěte ho do pole On Clicked() události None (Objekt).
Vyberte výběrové pole Bez funkce a poté vyberte AnchorModuleScript>FindAzureAnchor.
V podokně hierarchie v podřízeného seznamu ButtonParent vyberte DeleteAzureAnchor .
V podokně inspektoru přejděte do komponenty stisknutelným tlačítkem.
Ve hierarchiivyberte objekt ParentAnchor, přetáhněte ho do Inspektoru a pusťte do Při kliknutí() události na pole None (Objekt).
Vyberte rozevírací seznam Bez funkce a pak vyberte AnchorModuleScript>DeleteAzureAnchor.
Připojení scény k prostředku Azure
V podokně Hierarchie vyberte objekt ParentAnchor.
V podokně Inspektoru vyhledejte komponentu Spatial Anchor Manager (Script).
Nakonfigurujte část Přihlašovací údaje s přihlašovacími údaji z účtu Azure Spatial Anchors, který jste vytvořili jako součást požadavků pro tuto sérii kurzů:
- Do pole ID účtu Spatial Anchors vložte hodnotu ID účtu z vašeho účtu Azure Spatial Anchors.
- Do pole Klíč účtu Spatial Anchors vložte hodnotu primárního nebo sekundárního přístupového klíče z účtu Azure Spatial Anchors.
- Do pole Doména účtu Spatial Anchors vložte hodnotu Doména účtu z účtu Azure Spatial Anchors.
Vyzkoušejte základní chování Azure Spatial Anchors.
Azure Spatial Anchors nejde spustit v Unity. Pokud chcete otestovat funkce Azure Spatial Anchors, musíte sestavit projekt a nasadit aplikaci do zařízení.
Spropitné
Pro připomenutí, jak sestavit a nasadit projekt Unity pro HoloLens 2, se podívejte na článek Sestavení vaší aplikace pro HoloLens 2 a začněte u části (Volitelné) sestavení a nasazení aplikace.
Když se aplikace spustí na vašem zařízení, postupujte podle pokynů na obrazovce zobrazených na panelu Kurz Azure Spatial Anchor.
- Přesuňte krychli do jiného umístění.
- Spusťte relaci Azure.
- Vytvořte ukotvení Azure v umístění krychle.
- Zastavte relaci Azure.
- Odeberte místní ukotvení, aby uživatel mohl přesunout krychli.
- Přesuňte krychli jinam.
- Spusťte relaci Azure.
- Vyhledejte kotvu Azure pro umístění krychle na místě z kroku 3.
- Smažte kotvu Azure.
- Zastavte relaci Azure.
Opatrnost
Azure Spatial Anchors používá internet k ukládání a načítání dat ukotvení. Ujistěte se, že je vaše zařízení připojené k internetu.