Search Unity

Other About HTC Vive controllers, which UnityReflect supports.

Discussion in 'Unity Reflect' started by Naoki_jp, Apr 21, 2022.

  1. Naoki_jp

    Naoki_jp

    Joined:
    Sep 20, 2020
    Posts:
    9
    About HTC Vive controllers, which UnityReflect supports.

    The documentation states that HTC Vive is supported.
    However, the HTC Vive Cosmos controller is not recognized.
    (The controller does not show up in VR mode)

    Is there an official procedure to support the Vive Cosmos controllers?


    *Things I have tried.
    I got the profile for Cosmos from the link below and imported it.
    The controller now shows up, but I would like to know if there is an official procedure.
    https://forum.vive.com/topic/9141-vive-cosmos-controller-openxr-feature-for-unity/

    *Unity Reflect documentation
    https://docs.unity3d.com/reflect/Review/ViewerVR.html

    *My environment
    Unity 2021.1.20f1
    Unity Reflect ver3.1.0
    OpenXR Plugin ver1.2.8
    HTC Vive Cosmos
     
  2. Unity_Derek

    Unity_Derek

    Unity Technologies

    Joined:
    Aug 24, 2021
    Posts:
    48
  3. Gublu

    Gublu

    Unity Technologies

    Joined:
    Dec 17, 2020
    Posts:
    9
    Hello,

    What do you mean by "does not show up"? There is generic white controllers instead or no controller models at all? We only support the Oculus Rift controller model by now. For any other devices, there suppose to be replace by the generic one. If it is not the case, it is an error.
     
  4. Naoki_jp

    Naoki_jp

    Joined:
    Sep 20, 2020
    Posts:
    9

    Hello @Unity_Derek

    Thanks for the reply.

    Our team has signed up for the "UnityReflectDevelop" license.
    We would like to develop a custom app using the Develop license. (I want to add features to VR scenes, etc.).

    I have cloned the Reflect project from GitHub with the following official documentation.

    *UnityReflectDevelop Documents
    https://docs.unity3d.com/reflect/Develop/Start_coding_with_Unity_Reflect.html

    I thought the ViveCosmos controller would work without any changes to the Reflect project. But it did not work.
    I will check the url you gave me.
     
  5. Naoki_jp

    Naoki_jp

    Joined:
    Sep 20, 2020
    Posts:
    9
    Hello @Gublu

    Thanks for the reply.

    I am sorry.
    There was a mistake in my confirmation.

    The controller was displayed.
    I did not notice it because it was displayed at the bottom of the view.

    A white generic controller is shown, but with the ViveCosmos controller it did not work.
    I want to move it using the ViveCosmos controller so I asked about formal procedures.

    *As I mentioned in my first post, I have confirmed that importing our own ViveCosmos profile will allow us to recognize controllers.
    However, I cannot determine if this is a legitimate response.

    ReflectProject_Controller.png
     
    Last edited: Apr 22, 2022
  6. Gublu

    Gublu

    Unity Technologies

    Joined:
    Dec 17, 2020
    Posts:
    9
    Hello @Naoki_jp,
    If you want the Cosmos controller in your app, it is fairly easy to do so.
    • First, you will have do get the controller models (https://hub.vive.com/en-US/profile/material-download).
    • Into Assets/Prefabs/VR, add duplicate the LeftControllerGeneric and the RightControllerGeneric and rename them by LeftControllerCosmos and RightControllerCosmos.
    • Replace the controller model (XRController_[LT/RT]_SD001) by the Cosmos ones.
    • Into Assets/Prefabs/Scene/VR/VRMode, into VR Controllers, replace the prefab link of the "Element 5" (Vive Cosmos).
    upload_2022-4-22_7-37-21.png
    • Ideally, it should works, but as it was never tested properly and we encounter some problem in the past with controller model detection, I suggest if it is not to replace the "Element 0"(Generic) ones too.
    That's it! The reason why this is not done by default is that we don't have the legal right to use/distribute those models.
     
  7. Naoki_jp

    Naoki_jp

    Joined:
    Sep 20, 2020
    Posts:
    9

    Hello @Gublu,

    Sorry for the poor explanation.

    The fundamental problem is that the ViveCosmos profile is not included in the Reflect project.
    Because the profile does not exist, the ViveCosmos controller does not recognize the controller in VR (the controller in VR does not work).

    Unity_OpenXR_InteractionProfiles.png


    I independently obtained the profile for the ViveCosmos controller from the Vive forum.
    By reflecting the profile, the ViveCosmos controller now recognizes it.
    I wanted to ask if there is an official procedure other than this procedure as Reflect.
    https://forum.vive.com/topic/9141-vive-cosmos-controller-openxr-feature-for-unity/

    Unity_OpenXR_InteractionProfiles-Add-1.png
     
  8. Gublu

    Gublu

    Unity Technologies

    Joined:
    Dec 17, 2020
    Posts:
    9
    Unfortunately, the only devices we are officially supported right now are Oculus Rift and HTC Vive. So, there is no "official" procedure for Vive Cosmos.
     
  9. Naoki_jp

    Naoki_jp

    Joined:
    Sep 20, 2020
    Posts:
    9
    Thanks for the quick reply!
    I understand about your answer.