SteamVR on CloudXR server showing Vive Controllers (Reverb G2)

Fairly self explanatory. Is this expected behaviour? Should the client forward controller information to the server? Otherwise, is there any way to force identify the controllers as, for example, HP Motion Controllers on the server?

image

They’re disconnected in this picture, but connecting the client and controllers changes nothing. Vive controllers render in game.

For my limited understanding everything is mapped to Vive controller in CloudXR right now.

There is a command line setting, which I didn’t try yet:


https://docs.nvidia.com/cloudxr-sdk/usr_guide/cmd_line_options.html#server-command-line-options
Maybe you can try this out.
But it will probably not change the fact, that your HP Motion Controller will be displayed as Vive controller.

1 Like

Gotcha. Do you know if that includes the Index Controllers, and the Oculus Quest 2? Both are listed as officially supported.

I am also just a user.
As I understand the architecture there a module of CloudXR, which registers on the server side as a virtuell controller driver.
On client side different controllers are supported, but the input on client side will be mapped to a generic controller data model and just this generic information will be streamt to the server.

Questions for NVidia:

  • Did I explain the current state correctly?
  • Will CloudXR be extended by custom controller representation in the future?

Client must advertise itself as supporting a known controller model, and then map into that model.

There have been some discussions of how to be more forward-compatible with new devices with their own controllers, but haven’t yet come up with a solution or a timeline.

For the HP Motion Controllers, my quick first take would be to map them as oculus touch controllers. The menu, grip, and trigger should all map decently. If it’s the model with the touchpad, you’d look to interpret the touchpad as if a dpad, and have left/right generate a/b (or x/y). If it has abxy already, just send those along like touch would. In steamvr, anywhere it renders the model it will render the touch controller, but that should still be much closer than the vive wand in my quick view.

Gotcha. I did try that the other day, but couldn’t get it to work. Can you confirm that it should show Oculus Touch controllers, not Vive controllers, on the server side if configured correctly? I’d be happy to acquire an Oculus for Development, but I’d need to be sure that it will work as intended.

I tried rebuilding the client with Reverb in place of Oculus, but didn’t have much luck. From your point of view, should this have been enough?

image

If that’s the right string and it matches, yes that should be enough. Or temporarily just hard code that value for ctrlType, skip the conditional check.