Skip to content

Commit dee27cc

Browse files
committed
fix: vr sessions with unbounded
1 parent b92123a commit dee27cc

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

packages/xr/src/init.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ export type XRSessionInitOptions = {
5151
}
5252

5353
export function buildXRSessionInit(
54+
mode: XRSessionMode,
5455
domOverlayRoot: Element,
5556
{
5657
anchors = true,
@@ -84,7 +85,9 @@ export function buildXRSessionInit(
8485
addXRSessionFeature(depthSensing, 'depth-sensing', requiredFeatures, optionalFeatures)
8586
addXRSessionFeature(domOverlay, 'dom-overlay', requiredFeatures, optionalFeatures)
8687
addXRSessionFeature(hitTest, 'hit-test', requiredFeatures, optionalFeatures)
87-
addXRSessionFeature(unbounded, 'unbounded', requiredFeatures, optionalFeatures)
88+
if (mode != 'immersive-vr') {
89+
addXRSessionFeature(unbounded, 'unbounded', requiredFeatures, optionalFeatures)
90+
}
8891

8992
return {
9093
requiredFeatures,

packages/xr/src/store.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -556,7 +556,7 @@ async function enterXR(
556556
if (xrManager == null) {
557557
return Promise.reject(new Error(`not connected to three.js. Missing are <XR> component?`))
558558
}
559-
const session = await navigator.xr.requestSession(mode, buildXRSessionInit(domOverlayRoot, options))
559+
const session = await navigator.xr.requestSession(mode, buildXRSessionInit(mode, domOverlayRoot, options))
560560
setFrameRate(session, options?.frameRate ?? 'high')
561561
setupXRManager(xrManager, session, options)
562562
return session

0 commit comments

Comments
 (0)