-
-
Notifications
You must be signed in to change notification settings - Fork 21.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Skeleton Retarget for ReadyPlayerMe avatars picks incorrect bones #89725
Comments
I also confirmed this happens with Mixamo avatars. |
I remember we make it to handle the case of a model with a Palm, where the fingers could exist too close to the wrist, so that the tips are mapped in priority. It might be handled to some extent by making sure that auto-mapping excludes bones named "Tip" and "Leaf". However, if the bone names are sequentially numbered as Finger 1, 2, 3, 4, I don't think there is anything that can be done. This is because the human hand has 4 finger bones from the wrist, but some 3D models ignore the actual first bone , and only a few of them add TipBone that don't exist in real, so it cause an offset.
IMO, most models created by designers do not have a TipBone unless they specialize in IK. We should avoid making special accommodations for some proprietary software, so the only thing we can discuss is to consider ways to simplify manual fixes. |
The methods using position and length may work to some extent, but I assume it can't be guaranteed to be accurate for thumbs. I just came up with the idea that the most accurate way to identify a Tips bone is to see if it is bound to Skin or not. It would work well to add this to the factor for mapping. Although it may not work for animations that do not have Skin, that would be rare case. |
Tested versions
4.3-dev5
System information
Windows 11, Vulkan Mobile, NVidia RTX 3070 TI
Issue description
ReadyPlayerMe produce customized avatars for game players. Importing these avatars using the Skeleton Retarget system results in the wrong finger bones being selected and renamed. The user can correct this by manually picking every bone in the left and right hands; however due to the popularity of ReadyPlayerMe avatars it would be preferrable if these could be identified and handled correctly with minimal effort.
Steps to reproduce
This Zip file 65fa409029044c117cbd3e3c.zip contains a ReadyPlayerMe avatar.

Importing through the standard Skeleton Retarget method results in the following finger-bone issues:
Minimal reproduction project (MRP)
EDIT(lyuma): Added some more test files which do not contain any mesh. The mesh vertex-based approach is not sufficient to solve these files:
simple_vrm_rig.glb.gz - This one is in T-pose
simple_vrm_rig_anim4.blend
simple_vrm_rig_nlaonly2.fbx - this is animated and not in t-pose
The text was updated successfully, but these errors were encountered: