2

I am looking for a way to build a Unity application that allows multiple users to see (and at least one of them interact with) the same hologram. I am using the MRTK for user interaction.

When using the UnityEngine.XR.WSA.HolographicRemoting class, it seems I can only establish a single connection to a HoloLens. (The class is used in Microsoft's tutorials, for example here)

I am now wondering if it is at all possible to connect multiple HoloLenses to a single Unity application. I tried looking into implementing a custom remoting app as described here, but my C++ knowledge is too limited to assess if it's even possible.

If it's not possible I would also welcome any suggestion on how to attempt this otherwise.

Edit: It also seems like the class mentioned above is not compatible with Unity's new XR Plug-In Management. It does not recognize Holographic Remoting being enabled in the Plug-In settings. I couldn't find another (new) implementation to use Remoting via script.

Edit 2: I failed to mention, that I absolutely need to use Remoting, because the content I want to display is too detailed for the Hololens to handle itself. So basically I am looking for a way to combine Remoting and Sharing in a nice way.

  • Same question. This would be very useful. Any definitive answers on whether or not this is possible streaming from one machine to multiple Hololenses? Not necessarily for a shared experience, but just to maximize resources on a machine for multiple users. – Slug May 15 '23 at 17:59

1 Answers1

0

It seems like you want to share experiences and each user has his/her own perspective on the holograms in the scene and can each interact with the holograms. If so, Holographic Remoting does not match your request, it isn't an aim at share experience.

To create shared experiences to let multiple users collectively view and interact with the same hologram, you need to leverage Azure Spatial Anchors for local users and Photon SDK for syncing the content/state in the scene. For documentation, have a look at Multi-user capabilities tutorials

If you just want to enable other devices to see what the HoloLens sees from a different perspective in the same location, and receive updates on interactions of the host HoloLens user interacting with the holograms, please see:Spectator View

Hernando - MSFT
  • 2,895
  • 1
  • 5
  • 11
  • Thanks for your answer. My problem with the "normal" way of sharing via networking, as described in the article you linked, is that in my usecase the Hololens is not powerful enough to display the hologram (very high-poly meshes) so I need to use Remoting. Now I am looking for a way to share this remoted expereience. – Christopher Pollok Feb 17 '21 at 08:51
  • 1
    AFAIK, the remoting player cannot do this, it binds to one specific IP address and communicates over ports 8265/8266. However, if it is an absolute requirement to have the detail being high as possible, azure remoting rendering may be an option for you: https://learn.microsoft.com/en-us/azure/remote-rendering/ – Hernando - MSFT Feb 19 '21 at 06:25
  • @Hernando-MSFT While the application may bind to a specific IP address. Would it not be technically feasible to change the ports that are bound from application to Hololens? Allowing one machine to run multiple instances of an application but streaming to two different Hololenses? – Slug May 15 '23 at 18:00