cancel
Showing results for 
Search instead for 
Did you mean: 

Attaching Local Avatar to Player Controller in Unity

Stas054
Honored Guest

I have a problem attaching the avatar prefab for touch controls to the player controller prefab from oculus SDK. I have tried making both prefabs as children of an empty parent object. I tried to make the local avatar a child of player controller and it works fine until I move and my hands stay in the same spot while the body moves. I tried looking for a solution and cannot find one. Is there another way of doing this?


Thank you.

14 REPLIES 14

Stas054
Honored Guest
Thank you.

wynott
Explorer
I'm having the same issue.

If I take an empty scene with a ground plane, add the OVRPlayerController and the LocalAvatar... And try and make the LocalAvatar a child of the OVRPlayerController the registration gets all messed up between them. Hands are wildly out of place, look direction affects their position etc.

wynott
Explorer
And yes, I'm looking to have avatar hands and controllers moving around the scene with the player.

wynott
Explorer
OK @Stas054 I got this to work by making LocalAvatar a child of OVRPlayerController.

In inspector in OVRPlayerController there's two boxes HMD Resets Y and HMD Rotates Y. I unchecked both.

I also had to set the LocalAvatar 0.5m above the OVRPlayerController insert point.

No idea why 0.5m but... Seems to have worked.

Alpha14
Protege
To elaborate on Wynotts post the fix is as follows and works flawlessly.

STEP 1 - You must drop the Local Avatar prefab in the child of "TrackingSpace" Not the just the OVRPlayerController. If you do not do this correctly it will not work at all.
STEP 2 - Click on OVRPlayerController and goto inspector. Untick on "Hmd Resets Y"
STEP 3 - Make sure "Hmd Rotates Y" is ticked

ADMINS - Please mark resolved.

Alpha14
Protege
TO update

wynott said:

OK @Stas054 I got this to work by making LocalAvatar a child of OVRPlayerController.

In inspector in OVRPlayerController there's two boxes HMD Resets Y and HMD Rotates Y. I unchecked both.

I also had to set the LocalAvatar 0.5m above the OVRPlayerController insert point.

No idea why 0.5m but... Seems to have worked.




Alpha14 said:

To elaborate on Wynotts post the fix is as follows and works flawlessly.

STEP 1 - You must drop the Local Avatar prefab in the child of "TrackingSpace" Not the just the OVRPlayerController. If you do not do this correctly it will not work at all.
STEP 2 - Click on OVRPlayerController and goto inspector. Untick on "Hmd Resets Y"
STEP 3 - Make sure "Hmd Rotates Y" is ticked

ADMINS - Please mark resolved.



Alpha14
Protege
Spoke a little soon, works great in Unity dev mode. However if I export a build there is no avatar at all and can see a purple head stuck in the floor. Any ideas? What did I miss.

gianniamerican
Honored Guest

Alpha14 said:

To elaborate on Wynotts post the fix is as follows and works flawlessly.

STEP 1 - You must drop the Local Avatar prefab in the child of "TrackingSpace" Not the just the OVRPlayerController. If you do not do this correctly it will not work at all.
STEP 2 - Click on OVRPlayerController and goto inspector. Untick on "Hmd Resets Y"
STEP 3 - Make sure "Hmd Rotates Y" is ticked

ADMINS - Please mark resolved.


I got it to work with this fix, but without unticking "Hmd Resets Y"

alejonce8
Honored Guest

Alpha14 said:

Spoke a little soon, works great in Unity dev mode. However if I export a build there is no avatar at all and can see a purple head stuck in the floor. Any ideas? What did I miss.


I'm having a similar issue. While I'm working on the project, the LocalAvatar hands work great, but if I build and run the hands' mesh is nowhere to be seen. The joystick and buttons still work but the hands can't be seen. If I open the oculus menu, you can see the hands there but not in my build. Anybody has any solution for this?