Kurz: Sdílení prostorových ukotvení napříč relacemi a zařízeními

Azure Spatial Anchors je multiplatformní vývojářská služba, se kterou můžete vytvářet prostředí hybridní reality pomocí objektů, které v průběhu času uchovávají jejich umístění na různých zařízeních.

V tomto kurzu pomocí Azure Spatial Anchors vytvoříte kotvy během jedné relace a pak je vyhledáte na stejném zařízení nebo jiném. Stejné kotvy mohou být umístěny také několika zařízeními na stejném místě a ve stejnou dobu.

Animation showing spatial anchors that are created with a mobile device and used with a different device over the course of days.

V tomto kurzu se naučíte:

  • Nasaďte webovou aplikaci ASP.NET Core v Azure, kterou můžete použít ke sdílení ukotvení a uložení ukotvení do paměti po určitou dobu.
  • Nakonfigurujte scénu AzureSpatialAnchorsLocalSharedDemo v rámci ukázky Unity z našich rychlých startů, abyste využili výhod webové aplikace Sharing Anchors.
  • Nasaďte a spusťte ukotvení na jedno nebo více zařízeních.

Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure před tím, než začnete.

Požadavky

Než začnete s tímto kurzem, ujistěte se, že splňujete následující požadavky:

  • Přečtěte si přehled Azure Spatial Anchors.
  • Dokončete jeden z 5minutových rychlých startů.

    Poznámka:

    Rychlé starty pro Android/NDK a iOS/Swift v současné době nezobrazují funkce popsané v tomto kurzu.

  • Základní znalost:
    • ArCore , pokud používáte Android.
    • ARKit , pokud používáte iOS.
  • Počítač s Windows se sadou Visual Studio 2019 nebo novějšími a úlohami vývoje pro ASP.NET a web.
  • Sada .NET Core 3.1 SDK.
  • Jedno nebo několik následujících zařízení, na kterých se má nasadit a spustit aplikace: HoloLens, HoloLens 2, iOS nebo Android.

Poznámka:

V tomto kurzu budete používat Unity a webovou aplikaci ASP.NET Core, ale tady je jen příklad sdílení identifikátorů Azure Spatial Anchors napříč jinými zařízeními. K dosažení stejného cíle můžete použít jiné jazyky a back-endové technologie.

Vytvoření prostředku Spatial Anchors

Přejděte na Azure Portal.

V levém podokně vyberte Vytvořit prostředek.

Pomocí vyhledávacího pole vyhledejte Spatial Anchors.

Screenshot showing the results of a search for Spatial Anchors.

Vyberte Spatial Anchors a pak vyberte Vytvořit.

V podokně Účet prostorových ukotvení postupujte takto:

  • Zadejte jedinečný název prostředku pomocí běžných alfanumerických znaků.

  • Vyberte předplatné, ke kterému chcete prostředek připojit.

  • Výběrem možnosti Vytvořit novou vytvořte skupinu prostředků. Pojmenujte ji myResourceGroup a pak vyberte OK.

    Skupina prostředků je logický kontejner, do kterého se nasazují a spravují prostředky Azure, jako jsou webové aplikace, databáze a účty úložiště. Později se například můžete rozhodnout odstranit celou skupinu prostředků v jednom jednoduchém kroku.

  • Vyberte umístění (oblast), do kterého chcete prostředek umístit.

  • Výběrem možnosti Vytvořit zahájíte vytváření prostředku.

Screenshot of the Spatial Anchors pane for creating a resource.

Po vytvoření prostředku se na webu Azure Portal zobrazí, že je vaše nasazení dokončené.

Screenshot showing that the resource deployment is complete.

Vyberte Přejít k prostředku. Teď můžete zobrazit vlastnosti prostředku.

Zkopírujte hodnotu ID účtu prostředku do textového editoru pro pozdější použití.

Screenshot of the resource properties pane.

Zkopírujte také hodnotu domény účtu prostředku do textového editoru pro pozdější použití.

Screenshot showing the resource's account domain value.

V části Nastavení vyberte Přístupový klíč. Zkopírujte hodnotu primárního klíče Account Key (Klíč účtu) do textového editoru pro pozdější použití.

Screenshot of the Keys pane for the account.

Stažení ukázkového projektu a import sady SDK

Úložiště klonování ukázek

Naklonujte úložiště ukázek spuštěním následujících příkazů:

git clone https://github.com/Azure/azure-spatial-anchors-samples.git
cd ./azure-spatial-anchors-samples

Import ASA SDK

Podle zde uvedených pokynů stáhněte a naimportujte balíčky ASA SDK vyžadované pro platformu HoloLens.

Nasazení služby Sdílení ukotvení

Poznámka:

V tomto kurzu budeme používat úroveň Free služby Aplikace Azure Service. Úroveň Free vyprší po 20 minutách nečinnosti a resetuje mezipaměť paměti.

Otevřete Visual Studio a otevřete projekt ve složce Sharing\SharingServiceSample .

Otevření průvodce publikováním

V Průzkumník řešení klikněte pravým tlačítkem myši na projekt SharingService a pak vyberte Publikovat....

Spustí se Průvodce publikováním.

  1. Vyberte Další cíl Azure>.
  2. Výběr konkrétní cílové služby Aplikace Azure (Windows)>Next
  3. Přihlaste se k portálu Azure.
  4. Vyberte zelenou "+" a vytvořte službu Aplikace Azure.

Nastavení služby App Service

Nastavení Navrhovaná hodnota Description
Name myASASharingService Zadejte jedinečný název vaší služby.
Název předplatného Vyberte upřednostňované předplatné Azure.
Skupina prostředků myResourceGroup nebo vyberte existující Skupina prostředků je logický kontejner, do kterého se nasazují a spravují prostředky Azure, jako jsou webové aplikace, databáze a účty úložiště. Později se například můžete rozhodnout odstranit celou skupinu prostředků v jednom jednoduchém kroku.
Hosting Plan (Plán hostování) Vyberte Nový... a podívejte se na tabulku níže. Plán služby App Service určuje umístění, velikost a funkce farmy webových serverů, která je hostitelem vaší aplikace. Když hostujete více aplikací, můžete ušetřit tím, že nakonfigurujete webové aplikace tak, aby sdílely jeden plán služby App Service. Plány služby App Service definují:
  • Oblast (například Severní Evropa, USA – východ nebo Jihovýchodní Asie)
  • Velikost instance (Malá, Střední, Velká)
  • Počet škálování (1 až 20 instancí)
  • SKU (Free, Shared, Basic, Standard, Premium)

Plán hostování Nastavení

Nastavení Navrhovaná hodnota Popis
Hosting Plan (Plán hostování) MySharingServicePlan Zadejte jedinečný název plánu hostování.
Umístění USA – západ Datacentrum, které je hostitelem webové aplikace. Zvolte umístění nejblíže fyzickému umístění, které bude vaše aplikace používat.
Velikost Bezplatný Cenová úroveň , která určuje funkce hostování
  1. Výběrem možnosti Vytvořit vytvořte službu App Service.
  2. Jakmile se služba App Service vytvoří, vyberte ji v seznamu Instance služby App Service a vyberte Dokončit.
  3. On the SharingService: Publish tab select Publish

Po publikování webové aplikace ASP.NET Core do Azure můžete přejít nebo https://<your_app_name>.azurewebsites.net kliknout na odkaz vedle webu: na kartě SharingService: Publikovat . Zkopírujte tuto adresu URL do textového editoru pro pozdější použití.

Screenshot of a published ASP.NET web app in Azure.

Konfigurace a nasazení ukázkové aplikace

Otevřít projekt

V Unity otevřete projekt ve složce Unity . Unity vás může vyzvat k rozdílu mezi verzí v projektu a verzí nainstalovanou na vašem počítači. Toto upozornění je v pořádku, pokud je vaše verze Unity Editoru novější než verze, se kterou byl projekt vytvořen. Pokud je vaše verze novější, vyberte Pokračovat. Pokud je vaše verze starší než ta, která projekt potřebuje, vyberte Ukončit a upgradovat Unity Editor.

Screenshot of the Unity pane.

Nastavení Nastavení sestavení

Otevřete Nastavení sestavení výběrem Nastavení sestavení souboru>.

V části Platforma vyberte Univerzální platforma Windows. Změňte cílové zařízení na HoloLens.

Vyberte Přepnout platformu a změňte platformu na Univerzální platforma Windows. Unity vás může vyzvat k instalaci komponent podpory UPW, pokud chybí.

Screenshot of the Unity Build Settings pane - HoloLens

Zavřete okno Nastavení sestavení.

Konfigurace informací o účtu

Dalším krokem je konfigurace aplikace tak, aby používala informace o vašem účtu. V části Vytvoření prostředku Spatial Anchors jste zkopírovali hodnoty klíče účtu, ID účtu a domény účtu do textového editoru.

V podokně Projekt přejděte na Assets\AzureSpatialAnchors.SDK\Resources.

Vyberte SpatialAnchorConfig. V podokně inspektoruAccount Key zadejte jako hodnotu pro klíč účtu Spatial Anchors, Account ID jako hodnotu PRO ID účtu Spatial Anchors a Account Domain jako hodnotu pro doménu účtu Spatial Anchors.

Otevřete scénu s názvem AzureSpatialAnchorsLocalSharedDemo nalezenou Assets/AzureSpatialAnchors.Examples/Scenes/AzureSpatialAnchorsLocalSharedDemo poklikáním na ni v podokně projektu.

V podokně Projekt přejděte na Assets\AzureSpatialAnchors.Examples\Resources.

Vyberte SpatialAnchorSamplesConfig. V podokně inspektoru Sharing Anchors Service pak jako hodnotu Base Sharing Urlzadejte adresu URL (z vašeho nasazení ASP.NET webové aplikace Azure). Připojte adresu URL pomocí /swagger/api/anchors. Měl by vypadat takto: https://<your_app_name>.azurewebsites.net/swagger/api/anchors.

Scénu uložte výběrem možnosti Uložit soubor>.

Export a nasazení aplikace HoloLens

Otevřete Nastavení sestavení výběrem Nastavení sestavení souboru>.

V části Scény v sestavení se ujistěte, že všechny scény mají vedle nich značku zaškrtnutí.

Vyberte Sestavit. V dialogovém okně vyberte složku, ve které chcete exportovat projekt HoloLens Visual Studio.

Po dokončení exportu se zobrazí složka obsahující exportovaný projekt HoloLens.

Ve složce poklikejte na HelloAR U3D.sln a otevřete projekt v sadě Visual Studio.

Změňte konfiguraci řešení na Vydání, změňte platformuřešení na x86 a v možnostech cíle nasazení vyberte zařízení.

Pokud používáte HoloLens 2, místo x86 použijte ARM64 jako platformu řešení.

Visual Studio configuration

Zapněte zařízení HoloLens, přihlaste se a připojte zařízení k počítači pomocí kabelu USB.

>Vyberte Spustit ladění a nasaďte aplikaci a spusťte ladění.

Spuštění aplikace

V aplikaci vyberte localSharedDemo pomocí šipek a pak stisknutím tlačítka Přejít! spusťte ukázku. Postupujte podle pokynů k umístění a odvolání ukotvení.

Pomocí funkce Vytvořit a sdílet ukotvení můžete vytvořit kotvu a uložit ji do služby pro sdílení. Vrátí se vám zpět identifikátor, pomocí kterého ho můžete načíst ze služby sdílení. Pak můžete spustit druhý scénář, vyhledat sdílené ukotvení z vašeho zařízení nebo jiného.

Pomocí funkce Najít sdílené ukotvení můžete dříve sdílené kotvy vyhledat zadáním dříve uvedeného identifikátoru. Po výběru scénáře vás aplikace provede dalšími pokyny. Budete například požádáni o přesunutí zařízení, abyste shromáždili informace o prostředí. Později umístíte ukotvení do světa, počkáte na uložení, spustíte novou relaci a pak ji vyhledáte.

Vyčištění prostředků

V předchozích krocích jste vytvořili prostředky Azure ve skupině prostředků. Pokud předpokládáte, že už tyto prostředky nebudete potřebovat, můžete je odstranit tak, že odstraníte skupinu prostředků.

V nabídce webu Azure Portal nebo na domovské stránce vyberte skupiny prostředků. Potom na stránce Skupiny prostředků vyberte myResourceGroup.

Na stránce myResourceGroup se ujistěte, že uvedené prostředky jsou ty, které chcete odstranit.

Vyberte Odstranit skupinu prostředků, do textového pole zadejte myResourceGroup , abyste ji potvrdili, a pak vyberte Odstranit.

Další kroky

V tomto kurzu jste nasadili webovou aplikaci ASP.NET Core v Azure a nakonfigurovali a nasadili aplikaci Unity. Vytvořili jste prostorové ukotvení s aplikací a sdíleli jste je s jinými zařízeními pomocí webové aplikace ASP.NET Core.

Webovou aplikaci ASP.NET Core můžete vylepšit tak, aby používala službu Azure Cosmos DB k zachování úložiště identifikátorů sdílených prostorových ukotvení. Přidáním podpory služby Azure Cosmos DB můžete mít webovou aplikaci ASP.NET Core, která dnes vytvoří ukotvení. Potom pomocí identifikátoru ukotvení uloženého ve webové aplikaci můžete aplikaci vrátit dny později, abyste ukotvení znovu našli.