webxr-input-profiles
webxr-input-profiles copied to clipboard
[Documentation] Unclear why controller glb models all look backwards
After looking at the GLB files and the Readme for creating them, I think it's unclear why the GLB files are all reversed (they all look "backwards" with the forward axis not pointing along the imagined controller ray but away from it).
The gltf 2.0 spec defines +Z as forward, so the model is backwards everywhere:
"Front" view in Blender
"Back" view in Blender
Threejs Editor
Is this a relic from gltf 1.0 where -Z was forward? Or is there another reason? In any way, it would be great if that was documented (or the documentation in a more obvious place, I couldn't find it).
It's because +Z is backwards when talking about XR grip spaces: https://immersive-web.github.io/webxr/#dom-xrinputsource-gripspace, and these models apply there
Thanks for that link. It doesn't necessarily explain why the models are backwards in the GLTF format (contrary to what would be forward in that format) - it could also be that they are forward and then rotated accordingly, depending on what other format the models might be coming from. Just saying that this is confusing, not that it's wrong - and that it would be great if it could be documented in this repo here for preparing the models better (e.g. explicitly calling out that there's an assumption that model coordinates are in grip space when they are defined in gltf, contrary to the gltf spec).