Forum Discussion

🚨 This forum is archived and read-only. To submit a forum post, please visit our new Developer Forum. 🚨
L4Z3RC47's avatar
L4Z3RC47
Protege
10 years ago
Solved

Detecting Oculus HMD is removed

While running and with an Oculus HDM attached does anyone know of a way to detect if the user/player has removed the headset? I'm trying to setup a script to trigger rendering on screen instructions to the desktop display and then reload the scene once a new player puts the headset on to restart the experience in a multi user scenario.
  • You can register delegates for the HMDMounted and HMDUnmounted events through OVRManager.

    OVRManager.HMDMounted += HandleHMDMounted;
    OVRManager.HMDUnmounted += HandleHMDUnmounted;

    void HandleHMDMounted() {
       // Do stuff
    }

    void HandleHMDUnmounted() {
       // Do stuff
    }


7 Replies

Replies have been turned off for this discussion
  • You can register delegates for the HMDMounted and HMDUnmounted events through OVRManager.

    OVRManager.HMDMounted += HandleHMDMounted;
    OVRManager.HMDUnmounted += HandleHMDUnmounted;

    void HandleHMDMounted() {
       // Do stuff
    }

    void HandleHMDUnmounted() {
       // Do stuff
    }


  • I have tested this in editor (along with VrFocusAcquired and VrFocusLost), and it works fine.

    But it does not work in my build.

    I'm running 5.4.0p2 with OVR 1.7 and Utilities 1.7

    Is this a bug? Or is there a setting I'm missing?
  • The last build I made where I know that this worked was Unity v5.4.0p1, Oculus Utilities v1.6.0, OVRPlugin v1.6.0. I haven't tried a build using 1.7 utilities/plugin.
  • Has anyone managed to get this (or any other method for that matter) to work? Whatever I do, if user takes off the HMD, screen goed black, Unity goes suspend and there's nothing I can do about it??
  • @Corstiaan
    @imperativity

    You need to set the internal static bool "runInBackground" to true inside the OVRManager script