MozillaReality / WebXR-emulator-extension

WebXR emulator extension
Mozilla Public License 2.0
454 stars 55 forks source link

[bug] Crash when try get relative pose in XRInputController between grip and ray #287

Open eXponenta opened 2 years ago

eXponenta commented 2 years ago

Emulator down with:

VM13:1284 TypeError: coordinateSystem._transformBasePoseMatrix is not a function
    at GamepadXRInputSource.getXRPose (<anonymous>:5336:42)
    at EmulatedXRDevice.getInputPose (<anonymous>:36773:54)
    at XRFrame.getPose (<anonymous>:1084:37)
    at XRInputModel.updateRayTransform (XRInputTransform.ts:98:36)
    at XRInputModel.update (XRInputTransform.ts:116:14)
    at eval (XRRenderer.ts:293:134)
    at Array.forEach (<anonymous>)
    at XRRenderer._renderRenderListXR (XRRenderer.ts:293:25)
    at XRRenderer.render (XRRenderer.ts:381:18)
    at update (index.ts:127:14)

When i try read relative position between gripSpace and targetRaySpace. On real devices all ok and positions computed as should be.

Can be suppressed by try {} block in user code, but looks unstable.

see demo: https://github.com/eXponenta/web-xr-ogl-js/blob/crash-relative/src/xr/XRInputTransform.ts#L130