cancel
Showing results for 
Search instead for 
Did you mean: 

Unity3D GearVR Controller Not Recentering

Anselm
Explorer
I'm trying to recenter the GearVR motion controller via code in my Unity3D game. I've tried called to OVRInput.RecenterController(), OVRInput.RecenterController(OVRInput.Controller.All), and InputTracking.Recenter(). None of these have worked, is this functionality broken, or is there something else I need to do besides calling the recenter function?

EDIT:
After debugging the OVRPlugin class, everything seems to be returning that re-centering was successful. It's logging 4 controllers connected (which is odd, because the only controller connected is the Motion controller), each controller is registering as needing to be re-centered, and OVRPlugin.RecenterTrackingOrigin(OVRPlugin.RecenterFlags.Controllers) is returning true. It seems like Oculus thinks everything is re-centering correctly, but the controller is still facing the wrong direction.
Pressing the Home button re-centers the controller properly, but I'm looking for a way to do this from code for a large-scale ride.

EDIT 2:
Using verbose logging with ADB, I'm seeing the following error message whenever I call OVRInput.RecenterController()
VrApi_Input: vrapi_RecenterInputPose: has been DEPRECATED
Does this mean this is an issue with OVRInput? I'd be surprised to hear this has gone unnoticed so far, I imagine many people would want to recenter GearVR controllers.
8 REPLIES 8

cybereality
Grand Champion
Moving to Unity developer section.

Anselm
Explorer
Another update:
While the OVRPlugin.RecenterTrackingOrigin() is returning true, subsequent calls to OVRInput.GetControllerWasRecentered() returns false, and OVRInput.GetControllerRecenterCount() returns 0. For some reason OVRPlugin seems to think it's correctly recentering the controller, but none of the other methods reflect this.

I'm using Unity 5.6.3p4, and OVRPlugin 1.18.1, with the latest OVRUtilities package.

Anselm
Explorer
Anyone have any ideas on this? Is anyone able to successfully re-orient controllers via code with GearVR?

Anselm
Explorer


@Anselm

Hi, we received your developer ticket and have responded with the below explanation of what is happening. I am also posting this to the forums so that others can be aware of this change in our mobile SDK.
------------
The function 'vrapi_RecenterInputPose()' has been deprecated from the mobile SDK -- it is now a no-op and the next SDK removes it completely. Applications are recommended to instead instruct the user to perform the "long-press on Home" shortcut to recenter the controller.




The issue I have with this is that this app is going in a theme-park like environment. Not on the app store. We have restricted access to the home and back buttons on the controller to prevent users from accidentally pressing them during a show. We need some way for a host to remotely recenter the controllers if they get out of whack.

jd_rift
Explorer
Hi Anselm, do you get a solution for this? Because i tested OculusUtilities_1.20 and OculusUtilities_1.15 and none of them worked. Thanks

Imperativity :t I can see is downgrading your version of Mobile SDK to a release that still incorporates this functionality (1.15 and prior). 
could you tell what version would work? because i tested with 1.15 and dont work.
Thanks

jd_rift
Explorer
1.14 also doesnt work ...

jd_rift
Explorer
1.13 doenst have RecenterController() implemented... sugestions? thanks

jd_rift
Explorer
and thats a good example why i should stop using close source software