Skip to content

WebXR AR camera access crashes the page since the latest Google Chrome 147+ for Android #33404

@m0nzderr

Description

@m0nzderr

Description

Since the recent Google Chrome release 147 for Android, accessing camera texture under immersive AR session crashes the page ("Aw, snap" error). Just tested on several different devices from different vendors (Samsung, Motorola). Same crash happens in Chrome Beta 148.
Camera access still works normally after downgrading to previous Chrome versions (146 and below).

The crash occurs at renderer.xr.getCameraTexture( view.camera ); (same result if calling glBinding.getCameraImage directly).
Check the official three.js example for this behavior: https://threejs.org/examples/webxr_ar_camera_access.html

Why do I think this might an issue with THREE.js?
There is another vanilla WebXR camera access example that does not crash on Chrome 147+: https://storage.googleapis.com/chromium-webxr-test/r1516914/proposals/camera-access-barebones.html .
Essentially it does the same thing as the WebXRManager when configuring session, creaing glBinding and layers, but probably in a different order that does not lead to a crash.

Reproduction steps

  1. Make sure the recent release of Google Chrome for Android is installed (e.g., 147.0.7727.101, or 148 beta)
  2. Open the example page https://threejs.org/examples/webxr_ar_camera_access.html (e.g., from three.js v184 release or earlier)
  3. Start AR and observe the crash page ("Aw, snap").

Code

// see https://threejs.org/examples/webxr_ar_camera_access.html

Live example

Screenshots

https://threejs.org/examples/webxr_ar_camera_access.html :
Image

https://storage.googleapis.com/chromium-webxr-test/r1516914/proposals/camera-access-barebones.html :
Image

Version

r184

Device

Mobile

Browser

Chrome

OS

Android

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions