Použití prostředků počítače k napájení aplikace pomocí vzdálené aplikace Holographic Remoting
Tento článek vysvětluje následující případy použití holografické vzdálené komunikace:
- Chcete, aby prostředky počítače poháněly vaši aplikaci místo toho, abyste se spoléhali na palubní prostředky HoloLensu: Můžete vytvořit a vytvořit aplikaci, která má funkci Holographic Remoting. Uživatel aplikaci používá na HoloLensu, ale aplikace ve skutečnosti běží na počítači, což aplikaci umožňuje využívat výkonnější prostředky počítače. To může být užitečné zejména v případě, že vaše aplikace obsahuje prostředky nebo modely s vysokým rozlišením a nechcete, aby došlo k omezování snímkové frekvence. Říkáme tomu vzdálená aplikace Holographic Remoting. Vstupy z HoloLensu – pohled, gesto, hlas a prostorové mapování – se odesílají do počítače, kde se obsah vykresluje ve virtuálním imerzivním zobrazení. Vykreslené snímky se pak odešlou do HoloLensu.
Tento typ holografické vzdálené komunikace je k dispozici také pro imerzivní náhlavní soupravy Windows Mixed Reality (WMR). To může být užitečné, pokud je například náhlavní souprava WMR připojená k počítači s batohem a chcete streamovat aplikaci z výkonnějšího počítače do počítače s batohem.
Další informace o holografické vzdálené komunikace najdete v tématu Holographic Remoting – přehled.
Pokud chcete během procesu vývoje zobrazit náhled a ladit aplikaci, můžete také použít Holographic Remoting.
Dva dostupné režimy v holografické vzdálené komunikace
Režim 1: Vzdálená aplikace spuštěná na počítači v režimu připojení, Přehrávač spuštěný na HoloLens 2 v režimu naslouchání.
Přehrávač naslouchá příchozím připojením, zatímco se vzdálená aplikace pokusí připojit.
Režim 2: Vzdálená aplikace spuštěná na počítači v režimu naslouchání, přehrávač spuštěný na HoloLens 2 v režimu připojení.
Vzdálená aplikace naslouchá příchozím připojením, zatímco se přehrávač pokusí připojit.
Nastavení aplikace Holographic Remoting Player
Pokud chcete používat samotnou aplikaci Holographic Remoting v režimu 1, nainstalujte si na HoloLens 2 aplikaci Holographic Remoting Player z Microsoft Storu (v tomto článku ji budeme označovat jednoduše jako "přehrávač"). Jak je vysvětleno níže, po stažení a spuštění aplikace se zobrazí číslo verze a IP adresa, ke které se chcete připojit. Doporučujeme používat nejnovější dostupnou verzi přehrávače.
Holographic Remoting vyžaduje rychlé připojení k počítači a Wi-Fi. Další podrobnosti najdete v článku o přehrávači, na který odkazujeme výše.
Pokud chcete použít Holographic Remoting v obou režimech uvedených výše, musíte naklonovat holografický remoting sample player a nasadit ho do HoloLens 2 pomocí sady Visual Studio.
Vytvoření vzdálené aplikace běžící na počítači pro holografickou vzdálenou komunikace pomocí Unity
Na řádku nabídek vyberte Upravit > nastavení projektu.
V levém sloupci vyberte Správa modulů plug-in XR.
Ujistěte se, že jste na kartě nastavení Univerzální platforma Windows.
V části modulu plug-in OpenXR vyberte Microsoft HoloLens skupinu funkcí a skupinu funkcí vzdálené aplikace Holographic Remoting.
Zrušte zaškrtnutí políčka Inicializovat XR při spuštění .
Napište kód pro nastavení konfigurace vzdálené komunikace a aktivaci inicializace XR. Aplikace může buď volat funkci Connect pro Režim 1, nebo volat funkci Listen pro Režim 2. Pokud chcete zobrazit příklad, stáhněte si ukázky Mixed Reality Open XR Unity a pak v projektu RemotingSample zobrazte skript AppRemoting.cs.
V případě režimu 1 volejte
Microsoft.MixedReality.OpenXR.Remoting.AppRemoting.Connect
režim připojení s vyplněnýmRemotingConfiguration
. Ukázková aplikace to zveřejní v inspektoru a ukazuje, jak vyplnit IP adresu z textového pole. VoláníConnect
nastaví konfiguraci a automaticky inicializuje XR, proto se musí volat jako korutin:StartCoroutine(Remoting.AppRemoting.Connect(remotingConfiguration));
Pro režim 2, režim naslouchání , volání
Microsoft.MixedReality.OpenXR.Remoting.AppRemoting.Listen
s vyplněnýmRemotingListenConfiguration
v . Ukázková aplikace to zveřejní v inspektoru. VoláníListen
nastaví konfiguraci a počká na připojení z ukázkového přehrávače Holographic Remoting. Proto se musí volat jako korutin:StartCoroutine(Remoting.AppRemoting.Listen(remotingListenConfiguration));
Při spuštění můžete získat aktuální stav připojení pomocí
AppRemoting.TryGetConnectionState
rozhraní API a volitelně odpojit a zrušit inicializaci XR pomocíAppRemoting.Disconnect()
. Můžete ho použít k odpojení a opětovnému připojení k jinému zařízení v rámci stejné relace aplikace. Aplikace RemotingSample poskytuje datovou krychli tappable, která odpojí relaci vzdálené komunikace, pokud na ni klepnete.
Spuštění vzdálené aplikace Holographic Remoting a aplikace Player v režimech popsaných výše
Režim 1: Spusťte vzdálenou aplikaci Holographic Vzdálená komunikace na počítači v režimu připojení a přehrávač v režimu naslouchání:
Pokud už je přehrávač nainstalovaný ze Storu na HoloLens 2, přeskočte čísla kroků 2 a 3 níže, kde vytvoříte a spustíte aplikaci Sample Player. Místo toho spusťte nainstalovaný přehrávač a pokračujte krokem 4.
Otevřete aplikaci Holographic Remoting Sample Player pomocí VS 2019 a pak udělejte jednu z těchto věcí:
Spuštění na HoloLens 2 pomocí kabelu USB:
- Nakonfigurujte možnosti sestavení, jak je znázorněno tady:
- Otevřete stránku Vlastnosti projektu a pak přejděte na Ladění vlastností> konfigurace.
- Klikněte na rozevírací seznam Debugger to launch (Ladicí program, který chcete spustit ) a pak vyberte Device (Zařízení).
- Do pole Argumenty příkazového řádku přidejte "-listen".
Spuštění na HoloLens 2 pomocí Wi-Fi:
- Nakonfigurujte možnosti sestavení, jak je znázorněno tady:
- Otevřete stránku Vlastnosti projektu a pak přejděte na Ladění vlastností> konfigurace.
- Klikněte na rozevírací seznam Ladicí program, který chcete spustit , a pak vyberte Vzdálený počítač.
- Do pole Argumenty příkazového řádku přidejte IP adresu Wi-Fi holoLensu.
Pokud chcete nasadit řešení SamplePlayer do HoloLens 2, stiskněte v sadě Visual Studio tlačítko přehrát. Uvidíte, že na HoloLens 2 běží ukázkový přehrávač HAR, který zobrazuje, že se jedná o čekání na připojení na IP adrese HoloLens 2.
Ve vzdálené aplikaci spuštěné na hostitelském počítači přidejte IP adresu HoloLens 2 zobrazené výše a pak vyberte Připojit.
Po navázání připojení se přehrávač spuštěný na HoloLens 2 spustí "Příjem".
Režim 2: Spusťte vzdálenou aplikaci na počítači v režimu naslouchání a aplikaci HAR Player v režimu připojení:
Na obrazovce 2D uživatelského rozhraní ve vzdálené aplikaci spuštěné na počítači klikněte na Naslouchat.
Otevřete stránku Vlastnosti projektu a pak přejděte na Ladění vlastností> konfigurace.
Klikněte na rozevírací seznam Debugger to launch (Ladicí program, který chcete spustit ) a pak vyberte Device (Zařízení).
Do pole Argumenty příkazového řádku přidejte IP adresu hostitelského počítače.
Pokud chcete nasadit řešení SamplePlayer do HoloLens 2, klikněte v řešení sady Visual Studio na tlačítko přehrát. Uvidíte, že na HoloLens 2 běží ukázkový přehrávač HAR, který zobrazuje, že se jedná o připojení k IP adrese zadané v argumentech příkazového řádku.
Po navázání připojení se aplikace Holographic Remoting Sample Player spuštěná na HoloLens 2 spustí "Příjem".
Tip
Nejlepších výsledků dosáhnete, když vaše aplikace správně nastaví .. /fokus. Díky tomu může Holographic Remoting co nejlépe přizpůsobit scénu latenci bezdrátového připojení.
Migrace z předchozích rozhraní HOLographic Remoting API
Další informace o holografické vzdálené komunikace najdete v tématu Holographic Remoting – přehled.
UnityEngine.XR.WSA.HolographicRemoting
Z ukázkového kódu v dokumentaci Unity:
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) a WindowsMRRemoting.TryGetConnectionFailureReason(out ConnectionFailureReason) |
AppRemoting.TryGetConnectionState(out ConnectionState, out DisconnectReason) |
WindowsMRRemoting.isAudioEnabled , WindowsMRRemoting.maxBitRateKbps , WindowsMRRemoting.remoteMachineName |
Předáno do AppRemoting.Connect prostřednictvím RemotingConfiguration struktury |
WindowsMRRemoting.isConnected |
AppRemoting.TryGetConnectionState(out ConnectionState state, out _) && state == ConnectionState.Connected |