cancel
Showing results for 
Search instead for 
Did you mean: 

Meta Avatar Critical Joint Transforms go to zero position after calling LoadUser()

olaysia
Expert Protege

Our application depends upon attaching objects to each avatars hands and head. Unfortunately this means we can't use LoadUser() to update an avatar's appearance if they changed it because there seems to be a bug where the critical joint transforms just fall to the local zero position when LoadUser() is called.

The first time a user is loaded the critical joints are in the correct place as shown by the red cubes.The first time a user is loaded the critical joints are in the correct place as shown by the red cubes.However after calling LoadUser() again the transforms get zeroed. We cannot know where the users wrists and head are nowHowever after calling LoadUser() again the transforms get zeroed. We cannot know where the users wrists and head are now

 

 

Here are the steps to reproduce:

Create a barebones scene with a single SampleAvatarEntity. Also add a Sample avatar Attachment component to the entity.Create a barebones scene with a single SampleAvatarEntity. Also add a Sample avatar Attachment component to the entity.Add the joints that you want to track. In my case I need to know where the head and hands are.Add the joints that you want to track. In my case I need to know where the head and hands are.Add a Tracked Pose Driver to the Camera.Add a Tracked Pose Driver to the Camera.Add this snippet to the Sample Avatar Entity code to allow you to manually reload the user.Add this snippet to the Sample Avatar Entity code to allow you to manually reload the user.Run. As you can see the joint transforms are in the right place. Now click the 3 dots on your SampleAvatarEntity to  open the context menu. Now trigger the LoadUser call.Run. As you can see the joint transforms are in the right place. Now click the 3 dots on your SampleAvatarEntity to open the context menu. Now trigger the LoadUser call.As you can see, the critical joint transforms just snap to zero. Although the avatar will still track my movements fine, it makes it impossible to add  attachments to the joints if I'm going to be calling LoadUser() regularly.As you can see, the critical joint transforms just snap to zero. Although the avatar will still track my movements fine, it makes it impossible to add attachments to the joints if I'm going to be calling LoadUser() regularly.

1 REPLY 1

tilteddev
Explorer

Were you ever able to resolve this?