1
$\begingroup$

If I start with a simple three bone skeleton where the first one at right angles to the chain like so:

enter image description here

And then I export and re-import to and from GLTF, the first bone becomes aligned.

enter image description here

Unticking the "Guess Original Bind Pose" Option on GLTF import doesn't do any different, and there seems no way to preserve the frame of reference that is defined by the orientation.

The reason this matters is that when designing a model to be used for VR hand tracking, the OpenXR standard requires the bones to be aligned in the -Z direction.

See https://registry.khronos.org/OpenXR/specs/1.0/html/xrspec.html#_conventions_of_hand_joints

However, if the bones are chained in the normal way in Blender, the output will always place the bone orientations along the +Y. (To force the export GLTF bones to be aligned in the required reference frame you have to draw the bones perpendicularly as in the first example.)

Normally this limitation does not matter because there are so many degrees of freedom to the way the bone transforms work that losing one doesn't make any difference. However, for this application (of OpenXR controlled hand tracking) it causes a problem that means that nobody can use Blender to edit their GLTF VR assets if they need it to be valid for hand tracking.

$\endgroup$
2
  • $\begingroup$ Did you try setting the Bone DIr option to "Blender (best for reimporting)"? $\endgroup$
    – scurest
    Commented Oct 19, 2022 at 15:56
  • $\begingroup$ That does it! Now we know what that option is for. $\endgroup$ Commented Oct 21, 2022 at 15:58

0

You must log in to answer this question.

Browse other questions tagged .