You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am attempting to setup a createEquirectLayer media layer after XR session creation for Quest headsets. However I am seeing two faults and don't know where to report.
The first the browser is complaining makeXRCompatible isn't set even when called a second time. And then I get context loss which stops the session. On my integration it will stop the session automatically. On the test a timeout may prevent context loss.
Reproduction steps
Start XR Session
Code
renderer.xr.addEventListener("sessionstart",async()=>{constsession=renderer.xr.getSession();if(XRMediaBinding!==undefined){awaitrenderer.backend.makeXRCompatible();mesh1.layers.disableAll();mesh2.layers.disableAll();setTimeout(()=>{//180letangle=Math.PI;//360angle=Math.PI*2;constmediaBinding=newXRMediaBinding(session);constequirectLayer=mediaBinding.createEquirectLayer(video,{space: renderer.xr.getReferenceSpace(),layout: 'stereo-left-right',centralHorizontalAngle: angle,//layout: 'stereo-top-bottom',// Rotate by 45 deg to avoid stereo conflict with the 3D geometry.transform: newXRRigidTransform({},{x: 0,y: .28,z: 0,w: .96})});session.updateRenderState({layers: [equirectLayer,
...session.renderState.layers]});},500);}if(session.supportedFrameRates){console.log("supported framerates ",session.supportedFrameRates);session.addEventListener('frameratechange',(event)=>{console.log("XRFrame rate is now "+session.frameRate)});session.updateTargetFrameRate(session.supportedFrameRates[session.supportedFrameRates.length-1]).then((()=>{})).catch(console.warn)}});
How about you report this bug directly to Meta? AFAICS, this is about XRMediaBinding.createEquirectLayer() which is no three.js APIs.
Mugen87
changed the title
The WebGL context was not marked as XR , when creating a medialayer in Oculus Browser
The WebGL context was not marked as XR , when creating a medialayer in Meta Quest Browser.
Apr 30, 2025
danrossi
added a commit
to danrossi/three.js
that referenced
this issue
Apr 30, 2025
I fixed the context loss fault with that branch adding to the initial render state. And deals with my initial feature request. I hope it's acceptable. But there is still a fault complaining about makeXRCompatible. I'll report to their forum.
Description
I am attempting to setup a createEquirectLayer media layer after XR session creation for Quest headsets. However I am seeing two faults and don't know where to report.
The first the browser is complaining
makeXRCompatible
isn't set even when called a second time. And then I get context loss which stops the session. On my integration it will stop the session automatically. On the test a timeout may prevent context loss.Reproduction steps
Code
Live example
Screenshots
Version
r176
Device
Headset
Browser
Chrome
OS
No response
The text was updated successfully, but these errors were encountered: