Browse Source

Fix XR camera layers inheritance (#32626)

David von Wrangel 1 month ago
parent
commit
96dbfa6282
2 changed files with 4 additions and 4 deletions
  1. 2 2
      src/renderers/common/XRManager.js
  2. 2 2
      src/renderers/webxr/WebXRManager.js

+ 2 - 2
src/renderers/common/XRManager.js

@@ -1131,8 +1131,8 @@ class XRManager extends EventDispatcher {
 
 		// inherit camera layers and enable eye layers (1 = left, 2 = right)
 		cameraXR.layers.mask = camera.layers.mask | 0b110;
-		cameraL.layers.mask = cameraXR.layers.mask & 0b011;
-		cameraR.layers.mask = cameraXR.layers.mask & 0b101;
+		cameraL.layers.mask = cameraXR.layers.mask & ~ 0b100;
+		cameraR.layers.mask = cameraXR.layers.mask & ~ 0b010;
 
 
 		const parent = camera.parent;

+ 2 - 2
src/renderers/webxr/WebXRManager.js

@@ -749,8 +749,8 @@ class WebXRManager extends EventDispatcher {
 
 			// inherit camera layers and enable eye layers (1 = left, 2 = right)
 			cameraXR.layers.mask = camera.layers.mask | 0b110;
-			cameraL.layers.mask = cameraXR.layers.mask & 0b011;
-			cameraR.layers.mask = cameraXR.layers.mask & 0b101;
+			cameraL.layers.mask = cameraXR.layers.mask & ~ 0b100;
+			cameraR.layers.mask = cameraXR.layers.mask & ~ 0b010;
 
 			const parent = camera.parent;
 			const cameras = cameraXR.cameras;

粤ICP备19079148号