Dela via


Använda PC-resurser för att driva din app med fjärrappen Holographic Remoting

Den här artikeln förklarar följande användningsfall för Holographic Remoting:

  • Du vill att en dators resurser ska kunna driva din app i stället för att förlita dig på de inbyggda HoloLens-resurserna: Du kan skapa och skapa en app som har holografisk fjärrkommunikationsfunktion. Användaren upplever appen på HoloLens, men appen körs faktiskt på en dator, vilket gör att appen kan dra nytta av datorns mer kraftfulla resurser. Detta kan vara särskilt användbart om din app har högupplösta tillgångar eller modeller och du inte vill att bildfrekvensen ska drabbas. Vi kallar detta en fjärrapp för Holographic Remoting. Indata från HoloLens – blick, gest, röst och rumslig mappning – skickas till datorn, där innehållet återges i en virtuell fördjupad vy. De renderade ramarna skickas sedan till HoloLens.

Den här typen av Holographic Remoting är också tillgänglig för Windows Mixed Reality (WMR) integrerande headset. Detta kan vara användbart om till exempel ditt WMR-headset är anslutet till en ryggsäcksdator och du vill strömma din app från en kraftfullare dator till ryggsäcksdatorn.

Mer information om Holographic Remoting finns i Holographic Remoting Overview (Översikt över holografisk fjärrkommunikation)

Observera att du också kan använda Holographic Remoting om du vill förhandsgranska och felsöka din app under utvecklingsprocessen.

Två tillgängliga lägen i Holographic Remoting

Läge 1: Fjärrapp som körs på datorn i anslutningsläge, Spelare som körs på HoloLens 2 i lyssnarläge.

Spelaren lyssnar på inkommande anslutningar medan fjärrappen försöker ansluta.

Läge 2: Fjärrapp som körs på datorn i lyssnarläge, spelare som körs på HoloLens 2 i anslutningsläge.

Fjärrappen lyssnar efter inkommande anslutningar medan spelaren försöker ansluta.

Konfigurera Holographic Remoting Player-appen

Om du bara vill använda Holographic Remoting i läge 1 installerar du appen Holographic Remoting Player från Microsoft Store på din HoloLens 2 (i den här artikeln refererar vi till den helt enkelt som "spelaren"). Som förklaras nedan visas versionsnumret och IP-adressen för att ansluta till när du har laddat ned och kört appen. Vi rekommenderar att du använder den senaste versionen av spelaren som är tillgänglig.

Holographic Remoting kräver en snabb dator och Wi-Fi anslutning. Mer information finns i artikeln Player (Spelare) som är länkad ovan.

Skärmbild av Holographic Remoting Player som körs i HoloLens

Om du vill använda Holographic Remoting i båda lägena som anges ovan måste du klona Holographic Remoting Sample player och distribuera den till HoloLens 2 med Visual Studio.

Skapa en fjärrapp som körs på datorn för Holographic Remoting med hjälp av Unity

  1. Välj Redigera > projektinställningar på menyraden.

  2. I kolumnen till vänster väljer du XR-plugin-hantering.

  3. Kontrollera att du är på fliken Universell Windows-plattform inställningar.

    Skärmbild som visar XR-Plug i hanteringsfönstret med fliken Universell Windows-plattform markerad.

  4. I avsnittet OpenXR-plugin-program väljer du Microsoft HoloLens funktionsgrupp och holografisk fjärrkommunikationsappfunktionsgrupp.

    Skärmbild som visar OpenXr-plugin-programmet med funktionsgruppen

  5. Avmarkera kryssrutan Initiera XR vid start .

    Skärmbild av fönstret XR Plug-in Management (XR-plugin-hantering) med

  6. Skriv kod för att ange fjärrkommunikationskonfigurationen och utlösa XR-initiering. Appen kan antingen anropa connect-funktionen för läge 1 eller anropa lyssnarfunktionen för läge 2. Om du vill se ett exempel laddar du ned våra Open XR Unity-Mixed Reality-exempel och går sedan till remotingSample-projektet och visar skriptet AppRemoting.cs.

  7. För Läge 1 anroparMicrosoft.MixedReality.OpenXR.Remoting.AppRemoting.Connect du med en ifylld RemotingConfiguration. Exempelappen visar detta i Inspector och visar hur du fyller i IP-adressen från ett textfält. Anrop Connect anger konfigurationen och initierar automatiskt XR, vilket är anledningen till att det måste anropas som en coroutine:

    StartCoroutine(Remoting.AppRemoting.Connect(remotingConfiguration));
    
  8. För Läge 2 anropar Microsoft.MixedReality.OpenXR.Remoting.AppRemoting.Listendu i lyssningsläget med en ifylld RemotingListenConfiguration. Exempelappen visar detta i Inspector. Anropet Listen ställer in konfigurationen och väntar på en anslutning från Holographic Remoting-exempelspelaren, vilket är anledningen till att den måste anropas som en coroutine:

    StartCoroutine(Remoting.AppRemoting.Listen(remotingListenConfiguration));
    
  9. När du kör kan du hämta det aktuella anslutningstillståndet med API:et AppRemoting.TryGetConnectionState och eventuellt koppla från och avinitiera XR med hjälp av AppRemoting.Disconnect(). Detta kan användas för att koppla från och återansluta till en annan enhet inom samma appsession. Appen RemotingSample innehåller en kransbar kub som kopplar från fjärrkommunikationssessionen om den knackas.

Kör fjärrappen Holographic Remoting och Player-appen i de lägen som beskrivs ovan

Läge 1: Kör fjärrappen Holographic Remoting på datorn i anslutningsläge och spelaren i lyssningsläge:

  1. Om Spelaren redan är installerad från butiken på HoloLens 2 hoppar du över stegnummer 2 och 3 nedan där du skapar och kör exempelspelarappen. Kör i stället den installerade spelaren och fortsätt med steg 4.

  2. Öppna appen Holographic Remoting Sample Player med VS 2019 och gör sedan något av följande:

    Så här kör du på en HoloLens 2 med en USB-kabel:

    • Konfigurera byggalternativen enligt nedan:

    Skärmbild av inställningarna för Visual Studio-versionen för om användaren är ansluten via USB-kabel.

    • Öppna sidan Egenskaper för projektet och gå sedan tillFelsökning av konfigurationsegenskaper>.
    • Klicka på felsökningsprogrammet för att starta listrutan och välj sedan Enhet.
    • I fältet Kommandoradsargument lägger du till "-listen".

    Skärmbild av kommandoradsargumenten för att skapa med en USB-kabel.

    Så här kör du på en HoloLens 2 med Wifi:

    • Konfigurera byggalternativen enligt nedan:

    Skärmbild av inställningarna för Visual Studio-kompilering för om användaren bygger till HoloLens med wifi.

    • Öppna sidan Egenskaper för projektet och gå sedan tillFelsökning av konfigurationsegenskaper>.
    • Klicka på felsökningsprogrammet för att starta listrutan och välj sedan Fjärrdator.
    • I fältet Kommandoradsargument lägger du till Wifi-IP-adressen för HoloLens.
  3. Om du vill distribuera SamplePlayer-lösningen till HoloLens 2 trycker du på uppspelningsknappen i Visual Studio. Du kommer att kunna se ATT HAR-exempelspelaren körs på HoloLens 2 och visa att det är "Väntar på en anslutning på IP-adressen för HoloLens 2".

  4. I fjärrappen som körs på värddatorn lägger du till IP-adressen för HoloLens 2 som visas ovan och väljer sedan Anslut.

  5. När anslutningen har upprättats startar spelaren som körs på HoloLens 2 "Tar emot".

Läge 2: Kör fjärrappen på datorn i lyssnarläge och HAR-spelarappen i anslutningsläge:

  • På 2D-UI-skärmen i fjärrappen som körs på datorn klickar du på Lyssna.

    Skärmbild av inställningarna för Visual Studio-versionen för om användaren är ansluten via USB-kabel.

  • Öppna sidan Egenskaper för projektet och gå sedan tillFelsökning av konfigurationsegenskaper>.

  • Klicka på felsökningsprogrammet för att starta listrutan och välj sedan Enhet.

  • I fältet Kommandoradsargument lägger du till IP-adressen för värddatorn.

Skärmbild av kommandoradsargumenten för att skapa med en USB-kabel.

  • Om du vill distribuera SamplePlayer-lösningen till HoloLens 2 klickar du på uppspelningsknappen i Visual Studio-lösningen. Du kommer att kunna se ATT HAR-exempelspelaren körs på HoloLens 2 och visa att det är "Ansluta till IP-adress som anges i kommandoradsargument".

  • När anslutningen har upprättats startar Holographic Remoting Sample Player-appen som körs på HoloLens 2 "Mottagning".

Tips

För bästa resultat kontrollerar du att appen har rätt inställningar för .. /focus point. Detta hjälper Holographic Remoting att på bästa sätt anpassa din scen till svarstiden för din trådlösa anslutning.

Migrera från tidigare Holographic Remoting-API:er

Mer information om Holographic Remoting finns i Holographic Remoting Overview (Översikt över holografisk fjärrkommunikation)

UnityEngine.XR.WSA.HolographicRemoting

Från exempelkoden i Unitys dokument:

XR. WSA. HolographicRemoting OpenXR.Remoting.AppRemoting
HolographicRemoting.ConnectRemotingSession() AppRemoting.Connect(RemotingConfiguration)
HolographicRemoting.DisconnectRemotingSession() AppRemoting.Disconnect()
HolographicRemoting.ConnectionState AppRemoting.TryGetConnectionState(out ConnectionState, out DisconnectReason)

UnityEngine.XR.WindowsMR. WindowsMRRemoting

XR.WindowsMR. WindowsMRRemoting OpenXR.Remoting.AppRemoting
WindowsMRRemoting.Connect() AppRemoting.Connect(RemotingConfiguration)
WindowsMRRemoting.Listen() AppRemoting.Listen(RemotingListenConfiguration)
WindowsMRRemoting.Disconnect() AppRemoting.Disconnect()
WindowsMRRemoting.TryGetConnectionState(out ConnectionState) och WindowsMRRemoting.TryGetConnectionFailureReason(out ConnectionFailureReason) AppRemoting.TryGetConnectionState(out ConnectionState, out DisconnectReason)
WindowsMRRemoting.isAudioEnabled, WindowsMRRemoting.maxBitRateKbps, WindowsMRRemoting.remoteMachineName Skickas in AppRemoting.Connect via structen RemotingConfiguration
WindowsMRRemoting.isConnected AppRemoting.TryGetConnectionState(out ConnectionState state, out _) && state == ConnectionState.Connected

Se även